如何使用另一个分区的空间对我的根文件系统进行重新分区?

如何使用另一个分区的空间对我的根文件系统进行重新分区?

我正在尝试将根文件系统的大小加倍,如下所示:

# df
Filesystem                              1K-blocks     Used Available Use% Mounted on
devtmpfs                                 98162476        0  98162476   0% /dev
tmpfs                                    98193220       84  98193136   1% /dev/shm
tmpfs                                    98193220    18992  98174228   1% /run
tmpfs                                    98193220        0  98193220   0% /sys/fs/cgroup
/dev/mapper/rhel-root  73364480 24938064  48426416  34% /
/dev/mapper/rhel-home 389482692  2748736 386733956   1% /home
/dev/sda1                                 1038336   265924    772412  26% /boot
tmpfs                                    19638644        0  19638644   0% /run/user/0
shm                                         64000       16     63984   1% /var/lib/containers/storage/overlay-containers/...                                  73364480 24938064  48426416  34% /var/lib/containers/storage/overlay.../merged
overlay                                  73364480 24938064  48426416  34% /var/lib/containers/storage/overlay/.../merged
overlay                                  73364480 24938064  48426416  34% /var/lib/containers/storage/overlay/.../merged
overlay                                  73364480 24938064  48426416  34% /var/lib/containers/storage/overlay/.../merged
overlay                                  73364480 24938064  48426416  34% /var/lib/containers/storage/overlay/.../merged
# lsblk
NAME                            MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                               8:0    0 446.6G  0 disk 
├─sda1                            8:1    0     1G  0 part /boot
└─sda2                            8:2    0 445.6G  0 part 
  ├─rhel-root 253:0    0    70G  0 lvm  /
  ├─rhel-swap 253:1    0     4G  0 lvm  [SWAP]
  └─rhel-home 253:2    0 371.6G  0 lvm  /home

我发现 rhel-home 中有足够的可用空间,所以我猜测一定可以在 rhel-root 中重新利用其中的一些空间(理想情况下约为 70gs)。然而,我对文件系统的了解还不够深入,无法知道这是否比看起来更复杂。

我在这个问题上找到的答案很快就让我感到有些困惑。实现我想要做的事情的最佳方法是什么,理想情况下不会丢失任一文件系统中的任何数据(但如果不可能不丢失一些数据,则不是世界末日)

# resize2fs /dev/mapper/rhel-home 300GB
resize2fs 1.45.6 (20-Mar-2020)
resize2fs: Bad magic number in super-block while trying to open /dev/mapper/rhel-home
Couldn't find valid filesystem superblock.

答案1

  1. 创建 /home.new 作为 root 'mkdir /home.new'
  2. 将 /home 复制到 /home.new (在根文件系统中) 'cp -prv /home /home.new'
  3. 通过控制台登录,cd /,成为 root 'sudo su -'
  4. 清理 /home 'rm -rfv /home'
  5. 卸载/home '卸载/home'
  6. 重命名 /home /home.old 'mv -v /home /home.old'
  7. 重命名 /home.new => /home 'mv -v /home.new /home'
  8. 从 /etc/fstab 'nano /etc/fstab' 中删除(或注释掉)/home
  9. 交叉手指,重新启动并在救援模式下以 root 身份登录
  10. 删除 /home lvm (lvremove)
  11. lvm lvextend -l +100%FREE /dev/mapper/rhel-root
  12. resize2fs -f /dev/mapper/rhel-root

祝你好运。

相关内容