Centos 8系统ext4文件系统类型进行扩容缩容 (LVM)
- 1.磁盘情况:
- 2.缩容home分区
-
- 1.备份home数据:
- [2.查找使用 /home 的进程:](#2.查找使用 /home 的进程:)
- 3.终止这些进程:
- [4.卸载 /home 分区](#4.卸载 /home 分区)
- [5.检查文件系统一致性 (e2fsck):](#5.检查文件系统一致性 (e2fsck):)
- [6.调整文件系统大小 (resize2fs):](#6.调整文件系统大小 (resize2fs):)
- [7.再次检查文件系统一致性 (fsck):](#7.再次检查文件系统一致性 (fsck):)
- [8.减少逻辑卷的大小 (lvreduce):](#8.减少逻辑卷的大小 (lvreduce):)
- 9.确认逻辑卷大小减少成功:
- [10.最终检查文件系统一致性 (fsck):](#10.最终检查文件系统一致性 (fsck):)
- 11.挂载home分区
- [12.验证 home 分区的大小是否成功缩容](#12.验证 home 分区的大小是否成功缩容)
- 13.恢复home数据
- 3.扩容root分区
- [4. 重启系统](#4. 重启系统)
1.磁盘情况:
javascript
[root@localhost ~]# df -h
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 32G 0 32G 0% /dev
tmpfs tmpfs 32G 0 32G 0% /dev/shm
tmpfs tmpfs 32G 19M 32G 1% /run
tmpfs tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/mapper/rfasl00-root ext4 69G 19G 47G 29% /
/dev/sda2 ext4 974M 164M 743M 19% /boot
/dev/sda1 vfat 599M 6.7M 593M 2% /boot/efi
tmpfs tmpfs 6.3G 48K 6.3G 1% /run/user/0
/dev/mapper/rfasl00-home ext4 338G 60K 321G 1% /home
[root@localhost ~]#
2.缩容home分区
把home分区的空间划一部分到root分区
1.备份home数据:
这一步非常重要。在修改分区之前,请确保备份所有重要数据。
javascript
mkdir /root/home
cp /home/* /root/home
2.查找使用 /home 的进程:
javascript
lsof +D /home
例如:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 1234 user1 cwd DIR 8,1 4096 2 /home/user1
firefox 5678 user1 mem REG 8,1 123456 3 /home/user1/.mozilla/firefox/xxxxxx.default/...
3.终止这些进程:
javascript
sudo kill -9 1234
sudo kill -9 5678
4.卸载 /home 分区
javascript
sudo umount /home
5.检查文件系统一致性 (e2fsck):
javascript
[root@localhost ~]# e2fsck -f /dev/mapper/rfasl00-home
e2fsck 1.46.0 (29-Jan-2020)
第 1 步:检查inode、块和大小
第 2 步:检查目录结构
第 3 步:检查目录连接性
第 4 步:检查引用计数
第 5 步:检查组概要信息
/dev/mapper/rfasl00-home:19/22560768 文件(0.0% 为非连续的), 1695888/90212352 块
6.调整文件系统大小 (resize2fs):
例如,如果你想将 /home 分区的大小调整为 100G:
javascript
[root@localhost ~]# resize2fs /dev/mapper/rfasl00-home 100G
resize2fs 1.46.0 (29-Jan-2020)
将 /dev/mapper/rfasl00-home 上的文件系统调整为 26214400 个块(每块 4k)。
/dev/mapper/rfasl00-home 上的文件系统现在为 26214400 个块(每块 4k)。
7.再次检查文件系统一致性 (fsck):
javascript
[root@localhost ~]# fsck /dev/mapper/rfasl00-home
fsck,来自 util-linux 2.32.1
e2fsck 1.46.0 (29-Jan-2020)
/dev/mapper/rfasl00-home:没有问题,19/6553600 文件,688929/26214400 块
8.减少逻辑卷的大小 (lvreduce):
javascript
[root@localhost ~]# lvreduce -L 100G /dev/rfasl00/home
WARNING: Reducing active logical volume to 100.00 GiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce rfasl00/home? [y/n]: y
Size of logical volume rfasl00/home changed from 344.13 GiB (88098 extents) to 100.00 GiB (25600 extents).
Logical volume rfasl00/home successfully resized.
9.确认逻辑卷大小减少成功:
javascript
[root@localhost ~]# resize2fs /dev/mapper/rfasl00-home
resize2fs 1.46.0 (29-Jan-2020)
文件系统已经为 26214400 个块(每块 4k)。无需进一步处理!
10.最终检查文件系统一致性 (fsck):
javascript
[root@localhost ~]# fsck /dev/mapper/rfasl00-home
fsck,来自 util-linux 2.32.1
e2fsck 1.46.0 (29-Jan-2020)
/dev/mapper/rfasl00-home:没有问题,19/6553600 文件,688929/26214400 块
11.挂载home分区
javascript
[root@localhost ~]# mount -a
12.验证 home 分区的大小是否成功缩容
javascript
#磁盘情况
[root@localhost ~]# df -Th
df: /run/user/0/gvfs: 传输端点尚未连接
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 32G 0 32G 0% /dev
tmpfs tmpfs 32G 0 32G 0% /dev/shm
tmpfs tmpfs 32G 19M 32G 1% /run
tmpfs tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/mapper/rfasl00-root ext4 69G 19G 47G 29% /
/dev/sda2 ext4 974M 164M 743M 19% /boot
/dev/sda1 vfat 599M 6.7M 593M 2% /boot/efi
tmpfs tmpfs 6.3G 48K 6.3G 1% /run/user/0
/dev/mapper/rfasl00-home ext4 98G 60K 93G 1% /home
#块设备的详细信息
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 447.1G 0 disk
├─sda1 8:1 0 600M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 445.6G 0 part
├─rfasl00-root 253:0 0 70G 0 lvm /
├─rfasl00-swap 253:1 0 31.4G 0 lvm [SWAP]
└─rfasl00-home 253:2 0 100G 0 lvm
sdb 8:16 0 447.1G 0 disk
└─sdb1 8:17 0 447.1G 0 part
sdc 8:32 0 3.7T 0 disk
└─sdc1 8:33 0 3.7T 0 part
#显示逻辑卷的详细信息
[root@localhost ~]# lvdisplay /dev/rfasl00/home
--- Logical volume ---
LV Path /dev/rfasl00/home
LV Name home
VG Name rfasl00
LV UUID lg3GEw-eXxJ-3bV2-mtz1-khta-9cEd-Ij5VTd
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2024-07-18 17:50:33 +0800
LV Status available
# open 0
LV Size 100.00 GiB
Current LE 25600
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:2
13.恢复home数据
javascript
cp /root/home/* /home
3.扩容root分区
1.检查root分区状态:
首先,确认所有逻辑卷和文件系统的状态:
javascript
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 447.1G 0 disk
├─sda1 8:1 0 600M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 445.6G 0 part
├─rfasl00-root 253:0 0 70G 0 lvm /
├─rfasl00-swap 253:1 0 31.4G 0 lvm [SWAP]
└─rfasl00-home 253:2 0 100G 0 lvm /home
sdb 8:16 0 447.1G 0 disk
└─sdb1 8:17 0 447.1G 0 part
sdc 8:32 0 3.7T 0 disk
└─sdc1 8:33 0 3.7T 0 part
[root@localhost ~]# df -Th
df: /run/user/0/gvfs: 传输端点尚未连接
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 32G 0 32G 0% /dev
tmpfs tmpfs 32G 0 32G 0% /dev/shm
tmpfs tmpfs 32G 19M 32G 1% /run
tmpfs tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/mapper/rfasl00-root ext4 69G 19G 47G 29% /
/dev/sda2 ext4 974M 164M 743M 19% /boot
/dev/sda1 vfat 599M 6.7M 593M 2% /boot/efi
tmpfs tmpfs 6.3G 48K 6.3G 1% /run/user/0
/dev/mapper/rfasl00-home ext4 98G 60K 93G 1% /home
2.扩展根分区的逻辑卷
javascript
[root@localhost ~]# lvextend -l +100%FREE /dev/rfasl00/root
Size of logical volume rfasl00/root changed from 70.00 GiB (17920 extents) to 314.13 GiB (80418 extents).
Logical volume rfasl00/root successfully resized.
3.在线调整文件系统大小
javascript
[root@localhost ~]# resize2fs /dev/mapper/rfasl00-root
resize2fs 1.46.0 (29-Jan-2020)
/dev/mapper/rfasl00-root 上的文件系统已被挂载于 /;需要进行在线调整大小
old_desc_blocks = 9, new_desc_blocks = 40
/dev/mapper/rfasl00-root 上的文件系统现在为 82348032 个块(每块 4k)。
4.确认扩展结果
javascript
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 447.1G 0 disk
├─sda1 8:1 0 600M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 445.6G 0 part
├─rfasl00-root 253:0 0 314.1G 0 lvm /
├─rfasl00-swap 253:1 0 31.4G 0 lvm [SWAP]
└─rfasl00-home 253:2 0 100G 0 lvm /home
sdb 8:16 0 447.1G 0 disk
└─sdb1 8:17 0 447.1G 0 part
sdc 8:32 0 3.7T 0 disk
└─sdc1 8:33 0 3.7T 0 part
[root@localhost ~]# df -h
df: /run/user/0/gvfs: 传输端点尚未连接
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 19M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/mapper/rfasl00-root 309G 19G 278G 7% /
/dev/sda2 974M 164M 743M 19% /boot
/dev/sda1 599M 6.7M 593M 2% /boot/efi
tmpfs 6.3G 48K 6.3G 1% /run/user/0
/dev/mapper/rfasl00-home 98G 60K 93G 1% /home
[root@localhost ~]# lvdisplay /dev/rfasl00/root
--- Logical volume ---
LV Path /dev/rfasl00/root
LV Name root
VG Name rfasl00
LV UUID GEsUC5-mQjp-zeMW-QRtm-MxpW-B9sM-qjgokf
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2024-07-18 17:50:39 +0800
LV Status available
# open 1
LV Size 314.13 GiB
Current LE 80418
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
4. 重启系统
javascript
reboot