本文介绍如何缩减XFS分区格式的 / 目录。如果需要缩减逻辑卷上的XFS文件系统,则需要通过备份、恢复和重新创建逻辑卷来实现。

系统环境

Centos8当前系统分区布局

这是当前文件系统布局。当前挂载点/容量为17G。我们的目的时减少/的容量。

备份数据

在缩减分区前一定要备份重要数据。如果出现问题了,可以恢复数据。

注意:需要为该服务器额外添加一块硬盘,用来备份系统分区的。


进入救援模式

在VMware Workstation中,加载光盘,并开机器用。开机按F2,进入BIOS,切换到Boot选项卡。将CD-ROM Drive移动到Hard Drive上面。按F10保存并重启。


选择Troubleshooting,然后选择进入救援模式。



当进入下面界面时,选择3,直接进入shell界面。


进入救援模式,可以看到/mnt/sysimage目录没有挂载系统分区。

# ls -al /mnt/sysimage/



激活逻辑卷组

挂载分区之前,需要激活逻辑卷,下面激活卷组:

# vgchange -ay
  2 logical volume(s) in volume group "cl" now active
# vgs
  VG #PV #LV #SN Attr   VSize   VFree
  cl   1   2   0 wz--n- <19.00g    0



挂载系统分区和用来备份数据的分区

首先从备份开始,我们需要将逻辑卷挂载在某个位置。通过临时挂载它,我们可以将/分区备份到任何其他位置,并且在执行还原时需要对其进行访问。

现在,在/mnt/sysimage/下创建两个目录。一个用于挂载该服务器的实际/分区,另一个将用于存储/分区的备份。

# mkdir /mnt/sysimage/root
# mkdir /mnt/sysimage/backup
# mount /dev/cl/root /mnt/sysimage/root
# mount /dev/sda /mnt/sysimage/backup/



使用xfsdump备份/分区

通过运行xfsdump来执行备份。

# xfsdump -l 0 -L "root lv backup" -M "backup" -f /mnt/sysimage/backup/root_backup.img /mnt/sysimage/root



dump使用级别0(备份所有文件)时,将提示输入备份会话标签和媒体标签,我们可以通过以下选项-f-L-M添加到以下内容来避免出现提示:

  • -l 0 备份级别设置为0,0级指所有文件都将备份。

  • -L 指定备份会话的标签

  • -M 指定第一个媒介的标签

  • -f 指定备份目的文件。


卸载文件系统

备份完成后,我们可以卸载文件系统。

# umount /mnt/sysimage/root/



缩减/分区

使用lvremove命令删除逻辑卷,并使用lvcreate来创建新的卷。

# lvremove /dev/cl/root 
Do you really want to remove active logical volume cl/root? [y/n]: y
  Logical volume "root" successfully removed



之后,创建所需的逻辑卷大小,下面创建逻辑卷大小为15G。

# lvcreate -Zy -L 15G -n root cl



使用-Zy将新的逻辑卷中的前4KiB数据清零。


创建新的XFS分区

# mkfs.xfs /dev/cl/root



挂载并恢复数据

文件系统准备就绪后,将其挂载在/mnt/sysimage/root目录中:

# mount /dev/cl/root /mnt/sysimage/root/


使用xfsrestore命令恢复之前备份的数据:

# xfsrestore -f /mnt/sysimage/backup/root_backup.img /mnt/sysimage/root



重启进入系统检查是否正常。断开虚拟机的光驱连接,开机按F2,进入BIOS,设置引导顺序,将硬盘放在第一项启动,F10保存并重启:


进入系统之后,检查分区大小是否以缩减:

[root@localhost ~]# df -hT /
Filesystem          Type  Size  Used Avail Use% Mounted on
/dev/mapper/cl-root xfs    15G  1.7G   14G  11% /



总结

就这样,借助xfsdumpxfsrestore实用程序,我们完成了缩减XFS文件系统和逻辑卷的工作。



©著作权归作者所有:来自51CTO博客作者mob604756eba0ee的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 数栈数据安全案例:混合云环境数据库备份容灾实现
  2. LVM常规操作记录梳理 [扩容、缩容、快照等]
  3. MySQL 针对Swap分区的运维注意点
  4. 保留最新N份备份目录脚本
  5. Oracle OCR的备份与恢复
  6. 文件系统和磁盘管理
  7. 3、存储管理
  8. Linux存储管理——磁盘管理、分区、Swap及逻辑卷管理【CentOS】
  9. 【DB宝46】NoSQL数据库之CouchBase简介、集群搭建、XDCR同步及备

随机推荐

  1. 拿到一台新的Windows电脑,我会做什么?
  2. 听说你的JWT库用起来特别扭,推荐这款贼好
  3. RabbitMQ实现延迟消息居然如此简单,整个插
  4. TCP/IP四次挥手
  5. 你居然还去服务器上捞日志,搭个日志收集系
  6. Android(安卓)UI自动化测试最佳实践
  7. 微服务权限终极解决方案,Spring Cloud Gat
  8. 写了100多篇原创文章,我常用的在线工具网
  9. 互联网/电商/广告常见的术语
  10. 给Swagger升级了新版本,没想到居然有这么