CentOS7.9 调整Home磁盘分区与根分区大小
2023-12-12 10:12:35
在 CentOS 7.9 中,如果您选择默认分区设置,根目录/的分区大小只有50GB,swap分区大小与系统内存大小相同,其余所有的可用空间都会放在/home分区下。这是因为在默认分区设置中,CentOS 7 使用 LVM(逻辑卷管理)来管理磁盘空间。
LVM 允许您将多个硬盘分区或物理磁盘合并成一个逻辑卷,并使用逻辑卷管理分配磁盘空间。在默认分区设置中,CentOS 7 创建了一个逻辑卷组并将所有可用磁盘空间分配给该逻辑卷组。然后,它使用逻辑卷管理器将逻辑卷组分成根逻辑卷/、swap逻辑卷和/home逻辑卷。
如果您想更改默认的分区设置,可以在安装 CentOS 7 时手动配置分区(虚拟化环境下手动分区安装有概率无法启动系统,这是个玄学)。如果您已经安装了 CentOS 7 并想更改分区设置,则可以使用命令行工具如 fdisk、parted、lvextend、resize2fs 和 lvreduce 等来管理分区。请注意,更改分区设置可能会导致数据丢失,因此在执行任何更改之前,务必备份重要数据。
```
# 查看磁盘分区的默认初始情况
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 0 7.8G 0% /dev/shm
tmpfs 7.8G 9.1M 7.8G 1% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/mapper/centos-root 50G 1.3G 49G 3% /
/dev/sda2 1014M 144M 871M 15% /boot
/dev/mapper/centos-home 61G 33M 61G 1% /home
/dev/sda1 200M 12M 189M 6% /boot/efi
tmpfs 1.6G 0 1.6G 0% /run/user/0
# 列出所有可用块设备的信息
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 119.2G 0 disk
├─sda1 8:1 0 200M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 118G 0 part
├─centos-root 253:0 0 50G 0 lvm /
├─centos-swap 253:1 0 7.8G 0 lvm [SWAP]
└─centos-home 253:2 0 60.2G 0 lvm /home
# 卸载/home分区
[root@localhost ~]# umount /home
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 119.2G 0 disk
├─sda1 8:1 0 200M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 118G 0 part
├─centos-root 253:0 0 50G 0 lvm /
├─centos-swap 253:1 0 7.8G 0 lvm [SWAP]
└─centos-home 253:2 0 60.2G 0 lvm
# 删除逻辑/Home卷
[root@localhost ~]# lvremove /dev/mapper/centos-home
Do you really want to remove active logical volume centos/home? [y/n]: y
Logical volume "home" successfully removed
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 119.2G 0 disk
├─sda1 8:1 0 200M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 118G 0 part
├─centos-root 253:0 0 50G 0 lvm /
└─centos-swap 253:1 0 7.8G 0 lvm [SWAP]
# 重新创建逻辑home卷,并设置分区大小,我这里设置10G
[root@localhost ~]# lvcreate -L 10G -n home centos
WARNING: xfs signature detected on /dev/centos/home at offset 0. Wipe it? [y/n]: y
Wiping xfs signature on /dev/centos/home.
Logical volume "home" created.
# 格式化home分区
[root@localhost ~]# mkfs.xfs /dev/mapper/centos-home
Discarding blocks...Done.
meta-data=/dev/mapper/centos-home isize=512 agcount=4, agsize=655360 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=2621440, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
# 挂载home分区
[root@localhost ~]# mount /dev/mapper/centos-home /home
# 将剩余的空间 全部放到根分区下
[root@localhost ~]# lvextend -l +100%FREE /dev/mapper/centos-root
Size of logical volume centos/root changed from 50.00 GiB (12800 extents) to 100.23 GiB (25659 extents).
Logical volume centos/root successfully resized.
# 扩展/root文件系统
[root@localhost ~]# xfs_growfs /dev/mapper/centos-root
meta-data=/dev/mapper/centos-root isize=512 agcount=4, agsize=3276800 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=13107200, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=6400, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 13107200 to 26274816
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 0 7.8G 0% /dev/shm
tmpfs 7.8G 9.1M 7.8G 1% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/mapper/centos-root 101G 1.3G 99G 2% /
/dev/sda2 1014M 144M 871M 15% /boot
/dev/sda1 200M 12M 189M 6% /boot/efi
tmpfs 1.6G 0 1.6G 0% /run/user/0
/dev/mapper/centos-home 10G 33M 10G 1% /home
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 119.2G 0 disk
├─sda1 8:1 0 200M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 118G 0 part
├─centos-root 253:0 0 100.2G 0 lvm /
├─centos-swap 253:1 0 7.8G 0 lvm [SWAP]
└─centos-home 253:2 0 10G 0 lvm /home
```