Centos8中如何缩减XFS分区格式的根目录

本文介绍在CentOS 8环境下如何通过备份、恢复和重新创建逻辑卷的方法来缩减XFS文件系统的步骤。利用xfsdump和xfsrestore实用程序完成整个过程。
导读本文介绍如何缩减XFS分区格式的 / 目录。如果需要缩减逻辑卷上的XFS文件系统,则需要通过备份、恢复和重新创建逻辑卷来实现。

系统环境

Centos8

当前系统分区布局

这是当前文件系统布局。当前挂载点/容量为17G。我们的目的时减少/的容量。
Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录

备份数据

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

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

进入救援模式

在VMware Workstation中,加载光盘,并开机器用。开机按F2,进入BIOS,切换到Boot选项卡。将CD-ROM Drive移动到Hard Drive上面。按F10保存并重启。
Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录
选择Troubleshooting,然后选择进入救援模式。
Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录
Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录
当进入下面界面时,选择3,直接进入shell界面。
Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录
进入救援模式,可以看到/mnt/sysimage目录没有挂载系统分区。

# ls -al /mnt/sysimage/

Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录

激活逻辑卷组

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

# 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 

Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录

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

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

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

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

Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录

使用xfsdump备份/分区

通过运行xfsdump来执行备份。

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

Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录
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

Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录
之后,创建所需的逻辑卷大小,下面创建逻辑卷大小为15G。

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

Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录
使用-Zy将新的逻辑卷中的前4KiB数据清零。

创建新的XFS分区

# mkfs.xfs /dev/cl/root 

Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录

挂载并恢复数据

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

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

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

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

Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录
重启进入系统检查是否正常。断开虚拟机的光驱连接,开机按F2,进入BIOS,设置引导顺序,将硬盘放在第一项启动,F10保存并重启:
Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录
进入系统之后,检查分区大小是否以缩减:

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

Centos8中如何缩减XFS分区格式的根目录Centos8中如何缩减XFS分区格式的根目录

总结

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

### 安全减小CentOS 7中XFS文件系统根分区大小 在处理Linux中的XFS文件系统时,直接小已挂载的根分区是一个复杂且风险较高的操作。通常建议先备份重要数据并考虑迁移至新的较小卷上再调整。 #### 方法一:使用LVM逻辑卷管理器间接实现 如果当前环境基于LVM构建,则可以采用创建新LV(逻辑卷)、复制现有数据过去的方式完成缩减目标: 1. 创建一个新的小型物理卷(PV),并向其中添加适当数量的空间作为临时存储位置; 2. 将原有内通过`rsync`或其他工具完整迁移到新建PV上的LV内; 3. 修改引导加载程序配置指向更新后的路径; 4. 测试无误后删除旧有大量设备上的所有条目,并回收资源用于其他用途; ```bash pvcreate /dev/sdXn # 替换sdXn为实际未分配磁盘空间对应的节点名 vgextend VolGroup00 /dev/sdXn # 假设原VG名为VolGroup00 lvcreate -l +100%FREE -n lv_root_new VolGroup00 # 利用剩余全部可用空间建立新LV mkfs.xfs /dev/VolGroup00/lv_root_new # 对其初始化成XFS格式化状态 mount /dev/VolGroup00/lv_root_new /mnt # 挂载到某个目录下以便后续操作 rsync -avxHAXS /* /mnt/ # 启动同步过程传输整个根树结构 umount /mnt # 卸载刚刚使用的安装点 ``` #### 方法二:借助虚拟机快照特性辅助在线收 对于运行于hypervisor平台之上的实例而言,利用宿主机层面提供的功能或许能简化流程: - 开启即时拍摄模式获取此刻完整的系统映像副本; - 编辑该克隆体规格参数降低硬盘限额直至满足需求为止; - 进入单用户维护界面执行必要的清理工作以释放足够的内部碎片空间; - 使用专门设计来优化特定场景下的第三方应用程序尝试改变边界尺寸; 需要注意的是,在任何情况下都应谨慎行事,确保有足够的冗余措施防止意外发生造成不可逆损害[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值