Centos 8系统ext4文件系统类型进行扩容缩容 (LVM)

Centos 8系统ext4文件系统类型进行扩容缩容 (LVM)

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
相关推荐
川石课堂软件测试几秒前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
pk_xz1234562 小时前
Shell 脚本中变量和字符串的入门介绍
linux·运维·服务器
小珑也要变强2 小时前
Linux之sed命令详解
linux·运维·服务器
Lary_Rock4 小时前
RK3576 LINUX RKNN SDK 测试
linux·运维·服务器
云飞云共享云桌面6 小时前
8位机械工程师如何共享一台图形工作站算力?
linux·服务器·网络
Peter_chq6 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端
一坨阿亮7 小时前
Linux 使用中的问题
linux·运维
dsywws8 小时前
Linux学习笔记之vim入门
linux·笔记·学习
幺零九零零9 小时前
【C++】socket套接字编程
linux·服务器·网络·c++
wclass-zhengge9 小时前
Docker篇(Docker Compose)
运维·docker·容器