我正在运行 Ubuntu,并想找出UUID
特定文件系统(不是分区)的 。我知道我可以e2label /dev/sda1
用来找出文件系统标签,但似乎没有类似的方法来找到UUID
.
我们将在新服务器上运行 CentOS 7。我们在服务器内部的 raid6 中有 6 个 300GB 驱动器。(存储主要以 40TB RAID 盒的形式在外部存储。)如果格式化为单个卷,则内部卷大约为 1.3TB。我们的系统管理员认为将操作系统安装在一个 1.3TB 的大分区上是一个非常糟糕的主意。
我是生物学家。我们不断安装新软件来运行和测试,其中大部分都在 /usr/local 中。然而,因为我们有大约 12 位不精通计算机的生物学家在使用该系统,所以我们也在 /home 中收集了很多数据。我们的最后一个服务器有一个 200GB 的 / 分区,2.5 年后它已满 90%。我不希望这种情况再次发生,但我也不想违背专家的建议!
我们如何才能最好地使用 1.3TB 可用空间来确保空间在需要的时间和地点可用,但又不会为系统管理员带来维护噩梦?
我有一个带有 320GB ext4 分区的 400GB 磁盘。我想扩大 ext4 分区以使用左侧空间(80GB 的可用空间)。
+--------------------------------+--------+
| ext4 | Free |
+--------------------------------+--------+
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做?
我见过有人在使用,resize2fs
但我不明白它是否会调整分区大小。
另一种解决方案是使用fdisk
但我不想删除我的分区和松散的数据。如何在不丢失任何文件的情况下简单地扩展分区?
注意:我说的是一个没有 LVM 的未挂载的数据分区,我有备份,但我想避免花一些时间在恢复上。
在运行 Ubuntu 10.04 的虚拟化服务器上,df 报告以下内容:
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 7.4G 7.0G 0 100% /
none 498M 160K 498M 1% /dev
none 500M 0 500M 0% /dev/shm
none 500M 92K 500M 1% /var/run
none 500M 0 500M 0% /var/lock
none 500M 0 500M 0% /lib/init/rw
/dev/sda3 917G 305G 566G 36% /home
Run Code Online (Sandbox Code Playgroud)
这让我感到困惑有两个原因:1.) df 说 /dev/sda1 安装在 /,有 7.4 GB 的容量,其中只有 7.0 GB 正在使用中,但它报告 / 100% 已满;和 2.) 我可以在 / 上创建文件,所以它显然还有空间。
可能相关的是目录 /www 是 /home/www …
有时,在调整磁盘分区大小或以其他方式处理磁盘分区时,cfdisk 会说:
Wrote partition table, but re-read table failed. Reboot to update table.
(其他分区工具也会发生这种情况,所以我认为这是 Linux 问题而不是 cfdisk 问题。)为什么会这样,为什么它只偶尔发生,我该怎么做才能避免它?
注意:请假设我实际编辑的分区都没有打开、安装或以其他方式使用。
更新:
cfdisk 用于ioctl(fd, BLKRRPART, NULL)
告诉 Linux 重新读取分区表。目前推荐的其他两个工具 ( hdparm -z
DEVICE
, sfdisk -R
DEVICE
) 的作用完全相同。partprobe
DEVICE
另一方面,该命令似乎使用了一个名为 BLKPG 的新 ioctl,这可能会更好;我不知道。(如果 BLKPG 失败,它也会回退到 BLKRRPART。)
BLKPG 似乎是一个“这个分区已经改变;这是新的大小”操作,它看起来像是partprobe
在通过的设备上的所有分区上单独调用它,所以如果单个分区未使用,它应该可以工作。但是,我还没有机会尝试。
Linux/boot
分区的推荐大小是多少?
没有/boot
分区是否安全?
我看到有些服务器没有/boot
分区,而有些服务器有 128 MB 的/boot
分区。我有点困惑。是否/boot
需要分区?如果是,它应该有多大?
如何从 Linux(特别是 Ubuntu)的命令行删除设备上的所有分区?我尝试查看 fdisk,但它显示了一个交互式提示。我正在寻找一个命令,我可以提供一个设备路径(例如 /dev/sda),它会删除 ext4、linux-swap 以及它找到的任何其他分区。本质上,这与我打开 GParted 并手动选择和删除所有分区是一样的。这看起来相当简单,但不幸的是,我无法通过谷歌找到任何东西。
在虚拟化环境(在我的例子中为 ESXi)中安装 Linux VM 时,是否有任何令人信服的理由来对磁盘进行分区(使用 ext4 时)而不是仅仅为每个挂载点添加单独的磁盘?
我唯一能看到的是,它可以更轻松地查看磁盘上是否存在数据,例如 fdisk。
另一方面,我可以看到一些不使用分区的充分理由(显然,除了 /boot)。
我没有找到太多关于这个话题的内容。我错过了什么重要的事情吗?
我经常想知道为什么对分区驱动器如此热衷,尤其是在 Unixy 操作系统(/usr、/var 等)上。这似乎不是 Windows 安装的常见主题。
似乎分区大大增加了填充一个分区的可能性,而其他分区则有大量可用空间。显然,这可以通过仔细的设计和规划来防止,但事情可能会发生变化。我在机器上多次遇到过这种情况,主要是在其他人设置的机器上,或者通过相关操作系统的默认安装设置。
我听到的另一个论点是它简化了备份。它如何简化备份?我也听说它提高了可靠性。又如何?
我在磁盘存储方面遇到的几乎 100% 的问题都与磁盘的物理故障有关。是否可以争论分区可能会加速硬件故障,因为在将数据从一个分区移动或复制到同一磁盘上的另一个分区时,磁盘会发生颠簸?
我并没有想太多,我只想看到一个古老的管理实践的理由。
CentOS 7
文件系统是XFS
,并且resize2fs
不起作用。我需要缩小/home
到 400G 并将 100G 空间添加到/
. 我该怎么办?
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 50G 50G 341M 100% /
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 84K 7.8G 1% /dev/shm
tmpfs 7.8G 778M 7.0G 10% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/sda1 497M 241M 257M 49% /boot
tmpfs 1.6G 16K 1.6G 1% /run/user/42
tmpfs 1.6G 0 1.6G 0% /run/user/0
/dev/mapper/centos-home 500G 20G 480G 4% /home …
Run Code Online (Sandbox Code Playgroud)