调整Live RHEL / cPanel服务器上的分区大小

多年来,我在Linux,Windows和Mac OS X上调整了许多分区的大小 – 但总是使用GUI。 但是,到了我的数据中心放置在我的服务器上的预设分区大小不合适的时候,我需要调整生产服务器的磁盘大小。 我可以摆弄它,也许还行,但鉴于这是一个生产服务器,我想得到一些正确的方法来做到这一点的build议。 我有KVM over IP访问,所以如果最好让服务器脱机并启动一个救援分区,我可以做到这一点。

root [/var/lib/mysql]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 9.9G 2.1G 7.3G 23% / tmpfs 7.8G 0 7.8G 0% /dev/shm /dev/sda1 99M 77M 18M 82% /boot /dev/sda8 884G 463G 376G 56% /home /dev/sda3 9.9G 8.0G 1.5G 85% /usr /dev/sda5 9.9G 9.1G 308M 97% /var /usr/tmpDSK 2.0G 38M 1.8G 3% /tmp 

正如你所看到的,/ var和/ usr已经相当接近完整了,而且我实际上必须将/ usr上的某些日志符号链接到/ home中的目录来平衡事情。 我想要做的就是将6-10 GB分别添加到/ usr和/ var,大概是从/ home开始的。

当我想到如何安排这个磁盘时,我想到的最好的想法就是将16 GB的内容减less到最小,然后将/ var移动到释放的位置,然后将/ var的空间分配给/ usr。 但是,这会将/ var放在磁盘的最远端,这看起来不太可能,因为MySQL在该分区上有所有的数据。 我很想把这个空间从/ usr的最后面拿出来,但是我认为这需要一个非常艰巨的(也许是有风险的)把/ usr中的所有数据移动的过程。 我似乎记得过去有一台计算机在这样的过程中失败了。

另一个选项可能是合并/和/ usr,因为/未被充分利用,虽然我不确定这是一个好主意。

对于最佳的重新分配计划和用来完成它的命令,你有什么build议吗?

更新:我应该添加 – 这里是分区表。 有一个未使用的分区,如果内存服务,是我创build一个tmp图像之前的原始tmp位置:

  Name Flags Part Type FS Type [Label] Size (MB) ------------------------------------------------------------------------------ Unusable 1.05* sda1 Boot Primary Linux ext2 106.96* sda2 Primary Linux ext3 10737.42* sda3 Primary Linux ext3 10737.42* sda5 NC Logical Linux ext3 10738.47* sda6 NC Logical Linux swap / Solaris 2148.54* sda7 NC Logical Linux ext3 1074.80* sda8 NC Logical Linux ext3 964098.53* 

在实时系统上重新设置/ var和/ home和/ usr是个不错的主意。 我build议停机维护。

对于未来,我还build议您扩展范围,并考虑在服务器上设置LVM,以便您可以根据需要进行实时调整,并且不必担心数据的实际分配位置在磁盘上。 这里是一个体面的教程如何做到这一点的链接。

如果您决定调整不使用LVM的分区大小,则从恢复磁盘运行的命令大致为:

  • 卸载[fs]
  • resize2fs [fs] [缩小尺寸]
  • fdisk / dev / sda
  • resize2fs [fs]
  • fsck [fs]
  • 挂载[fs]

上面的关键命令是fdisk /dev/sda 。 你将在那里做的是删除和重新创build您的调整所需的分区。 只要确保在操作过程中您正在监视文件系统的实际存储位置,并且手头上有很好的备份。