如何将磁盘空间从 centos-home 移动到 centos-root

如何将磁盘空间从 centos-home 移动到 centos-root

我有一台带有 1 个 280GB 磁盘的虚拟机。出于某种原因,我的布局是:

$ df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   50G   21G   30G  41% /
devtmpfs                 5.8G     0  5.8G   0% /dev
tmpfs                    5.8G     0  5.8G   0% /dev/shm
tmpfs                    5.8G  8.5M  5.8G   1% /run
tmpfs                    5.8G     0  5.8G   0% /sys/fs/cgroup
/dev/mapper/centos-home  224G   13G  212G   6% /home
/dev/sda1                497M  145M  352M  30% /boot
tmpfs                    1.2G     0  1.2G   0% /run/user/1000

运行 fdisk -l:

$ sudo fdisk -l
[sudo] password for admin:

Disk /dev/sda: 300.6 GB, 300647710720 bytes, 587202560 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0006c283

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     1026047      512000   83  Linux
/dev/sda2         1026048   587202559   293088256   8e  Linux LVM

Disk /dev/mapper/centos-swap: 6316 MB, 6316621824 bytes, 12337152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-root: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-home: 240.1 GB, 240115515392 bytes, 468975616 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

和:

$ sudo lsblk -io NAME,TYPE,SIZE,MOUNTPOINT,FSTYPE,MODEL
NAME            TYPE   SIZE MOUNTPOINT FSTYPE      MODEL
fd0             disk     4K
sda             disk   280G                        Virtual disk
|-sda1          part   500M /boot      xfs
`-sda2          part 279.5G            LVM2_member
  |-centos-swap lvm    5.9G [SWAP]     swap
  |-centos-root lvm     50G /          xfs
  `-centos-home lvm  223.6G /home      xfs
sr0             rom   1024M                        VMware IDE CDR10

如何将用于 /dev/mapper/centos-home 的磁盘空间移至 /dev/mapper/centos-root?我是否必须缩小 centos-home 并重新分配给 centos-root?

答案1

只要卸载,您就可以缩小主 LV。(请记住缩小存在一定风险)

像这样:

umount /dev/mapper/centos-home
lvreduce -L 200G /dev/mapper/centos-home

完成后重新挂载你的主分区。

然后只需扩展你的根卷。

lvextend -t -r -l+100%FREE /dev/mapper/centos-root

-t是测试,如果没问题,只需再次运行该命令,无需-t

答案2

这里有一个更好的方法。它向您展示了如何重新创建您删除的挂载(因为这是最简单的方法),但只有在目录树下没有太多东西时才可行。

如何在 CentOS7 上缩小 /home 并添加更多空间

答案3

我使用命令强制卸载sudo umount -fl /home

然后按照这些指令继续操作。

答案4

runyoufreak 给出的回答对我帮助很大。

我想添加一条提示,因为当我完成调整分区大小的过程后,我的 Cent OS 在重启后打开了紧急模式。在我的情况下,我没有使用 /home,所以我在 /etc/fstab 中注释了该分区。之后我就可以启动我的系统了。

相关内容