在 CentOS 上扩展xfs逻辑卷(本文由ChatGPT生成,并成功验证)
简介
在用df -h命令查看磁盘空间时,发现/根目录的空间很小,最后决定扩展一些
[root@localhost]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 50G 22G 28G 3% /
/dev/mapper/centos-home 1857G 33M 1857G 1% /home
overlay 50G 22G 28G 3% /var/lib/docker/overlay2/c2952714eb9921fe3ad9bfe4a35bd19b8879f4a9b61e76a50f8619b9a20f0b2b/merged
overlay 50G 22G 28G 3% /var/lib/docker/overlay2/11f8e2a8da7f087573b35ff382059c233f2082dc6fb16b19f4131819eec18be1/merged
本文将/home的空间分给/目录
步骤 1: 备份 /home 目录
在删除和重新创建 /home 逻辑卷之前,首先要备份其中的所有数据。
mkdir /mnt/home_backup
解释:创建一个临时目录 /mnt/home_backup,用于存放备份的数据。
rsync -avx /home/ /mnt/home_backup/
解释:使用 rsync 工具将 /home 目录中的所有数据备份到 /mnt/home_backup/。-a 选项启用归档模式,-v 启用详细模式,-x 确保只同步当前文件系统的数据。
步骤 2: 卸载 /home 逻辑卷
在删除逻辑卷之前,必须确保 /home 逻辑卷未被使用。
umount /home
解释:卸载 /home 文件系统,使其不再被使用。如果系统提示文件系统正忙,可以使用以下命令强制卸载:
umount -l /home
解释:-l 选项进行“懒惰”卸载,会立即从文件系统中移除挂载点,并在文件系统不再使用时实际卸载它。
步骤 3: 删除 /home 逻辑卷
一旦 /home 卸载成功,可以删除该逻辑卷以释放空间。
lvremove /dev/centos/home
解释:删除 centos 卷组中的 /home 逻辑卷,释放其占用的磁盘空间。
步骤 4: 扩展根卷(或其他逻辑卷)
接下来,使用删除 /home 逻辑卷后释放的空间来扩展其他逻辑卷(如根卷 /)。
lvextend -L +<扩展大小> /dev/centos/root
解释:将指定的大小 <扩展大小> 添加到根逻辑卷 /dev/centos/root 中。+ 表示增加现有大小,而不是设置新的固定大小。
xfs_growfs /dev/centos/root
解释:扩展 xfs 文件系统以使用新增加的逻辑卷空间。这一步确保逻辑卷的文件系统可以使用扩展后的空间。
步骤 5: 创建新的 /home 逻辑卷
在扩展其他逻辑卷后,可以使用剩余的所有可用空间来创建一个新的 /home 逻辑卷。
lvcreate -l 100%FREE -n home centos
解释:创建一个新的逻辑卷 home,使用卷组 centos 中的所有剩余空间。-l 100%FREE 表示使用卷组中未分配的全部空间。
mkfs.xfs /dev/centos/home
解释:将新的逻辑卷 home 格式化为 xfs 文件系统,使其可以存储数据。
步骤 6: 挂载新的 /home 逻辑卷
现在,可以将新的逻辑卷挂载到 /home 目录。
mkdir /home
解释:创建 /home 目录,用于挂载新的逻辑卷。
mount /dev/centos/home /home
解释:将新的逻辑卷挂载到 /home 目录,使其成为文件系统的一部分。
步骤 7: 恢复 /home 数据
接下来,将之前备份的 /home 数据恢复到新的逻辑卷中。
rsync -avx /mnt/home_backup/ /home/
解释:将备份数据从 /mnt/home_backup/ 恢复到新的 /home 逻辑卷中。
步骤 8: 更新 /etc/fstab
为了确保新的 /home 逻辑卷在系统启动时自动挂载,需要更新 /etc/fstab 文件。
nano /etc/fstab
解释:使用 nano 编辑器打开 /etc/fstab 文件。
/dev/centos/home /home xfs defaults 0 0
解释:在 /etc/fstab 中添加一行,以确保系统启动时自动将新的 /dev/centos/home 逻辑卷挂载到 /home 目录。
保存文件并退出编辑器。
步骤 9: 清理备份数据
最后,确认 /home 数据已成功恢复并且系统正常运行后,可以删除备份数据。
rm -rf /mnt/home_backup
解释:删除 /mnt/home_backup 目录及其内容,释放临时存储的空间。
总结
通过上述步骤,你可以成功地备份 /home 目录,删除并重建 /home 逻辑卷,扩展其他逻辑卷,并恢复数据。这个过程帮助你更好地管理和优化系统的存储资源,确保数据的安全和系统的稳定性。
这篇文档提供了一个完整的操作流程,适合在 CentOS 环境中进行逻辑卷管理。如果有更多问题或需要进一步帮助,请随时联系!

浙公网安备 33010602011771号