如何调整分区大小/移动分区?

如何调整分区大小/移动分区?

我的根分区空间不足,想从其他分区窃取一些空间。驱动器为 2x120GB,带有 mdadm 软件 RAID。我使用的是 CentOS 6.5 64 位。我使用 centos 安装程序引导的 RAID 设置。似乎大多数 HowTos 都让我倾向于没有底层分区。所以其他人只会有 /dev/md0。他们会执行 resize2fs /dev/md0 25G(例如从 50G 减少),然后使用 mdadm 调整其大小等。

布局是:

已使用的文件系统大小 可用 使用% 安装于
/dev/md0p5 9.7G 7.1G 2.1G 78% /
tmpfs 16G 0 16G 0% /dev/shm
/dev/md0p1 194M 99M 86M 54% /boot
/dev/md0p2 68G 7.2G 57G 12% /var/www

猫 /proc/mdstat:

人物:[raid1]
md0 : 活动 raid1 sdb[1] sda[0]
      117220736 块 [2/2] [UU]

未使用的设备:

这是 fdisk:

fdisk -l

磁盘 /dev/sda:120.0 GB,120034123776 字节
255 个磁头,63 个扇区/磁道,14593 个柱面
单位 = 16065 * 512 = 8225280 字节的柱面
扇区大小(逻辑/物理):512 字节/512 字节
I/O 大小(最小/最佳):512 字节/512 字节
磁盘标识符:0x00035afc

   设备引导开始结束块 ID 系统
/dev/sda1 * 1 26 204800 83 Linux
分区 1 不在柱面边界上结束。
/dev/sda2 26 8950 71680000 83 Linux
/dev/sda3 8950 11039 16777216 82 Linux 交换/Solaris
/dev/sda4 11039 14594 28557312 5 扩展
/dev/sda5 11039 12314 10240000 83 Linux

磁盘 /dev/sdb:120.0 GB,120034123776 字节
255 个磁头,63 个扇区/磁道,14593 个柱面
单位 = 16065 * 512 = 8225280 字节的柱面
扇区大小(逻辑/物理):512 字节/512 字节
I/O 大小(最小/最佳):512 字节/512 字节
磁盘标识符:0x00035afc

   设备引导开始结束块 ID 系统
/dev/sdb1 * 1 26 204800 83 Linux
分区 1 不在柱面边界上结束。
/dev/sdb2 26 8950 71680000 83 Linux
/dev/sdb3 8950 11039 16777216 82 Linux 交换/Solaris
/dev/sdb4 11039 14594 28557312 5 扩展
/dev/sdb5 11039 12314 10240000 83 Linux

磁盘 /dev/md0: 120.0 GB, 120034033664 字节
2 个磁头,4 个扇区/磁道,29305184 个柱面
单位 = 8 * 512 = 4096 字节的柱面
扇区大小(逻辑/物理):512 字节/512 字节
I/O 大小(最小/最佳):512 字节/512 字节
磁盘标识符:0x00035afc

    设备引导开始结束块 ID 系统
/dev/md0p1 * 257 51456 204800 83 Linux
分区 1 不在柱面边界上结束。
/dev/md0p2 51457 17971456 71680000 83 Linux
分区 2 不在柱面边界上结束。
/dev/md0p3 17971457 22165760 16777216 82 Linux 交换/Solaris
分区 3 不在柱面边界上结束。
/dev/md0p4 22165761 29305088 28557312 5 扩展
分区 4 不在柱面边界上结束。
/dev/md0p5 22166273 24726272 10240000 83 Linux

那么我该怎么做才能增大根分区并缩小 /var/www 分区呢?

答案1

由于您已经将 RAID 分区为单个磁盘,因此在这种情况下您可以完全忽略 RAID。所以这只是调整分区大小/移动分区的问题。

例如,您可以缩小 www 分区,删除交换分区,然后将根分区向左移动以增大它。

或者,如果这看起来很复杂并且您并不严格需要单独的分区,则可以将根分区合并到 www 分区,因为它已经足够大以容纳根分区和 www 分区。这就是我会做的事情。

# mount stuff
mkdir /mnt/root /mnt/www
mount /dev/md0p5 /mnt/root
mount /dev/md0p2 /mnt/www

# since /mnt/www will be the new root, move www files to /var/www
mkdir -p /mnt/www/var/www
mv /mnt/www/* /mnt/var/www/

# copy the root files
rsync -avAHSX /mnt/root/. /mnt/www/.

# comment out old root partition in fstab
# change /var/www to / in fstab

# update bootloader and reboot

这种方法还有一个优点,如果出现任何问题,原来的根分区仍然完好无损,因此您可以恢复操作。

一旦合并的 root+www 分区一切正常,您就可以删除旧的根分区并将其增长到整个磁盘大小。

或者,如果您认为在可预见的将来对于您的 www 来说足够大,那么您可以决定毕竟要坚持使用单独的分区,并将 www 文件移动到旧的根分区。

或者您可以缩小 www 分区,为新分区腾出空间。

无限可能...

相关内容