我可以将一个 XFS 分区与另一个 XFS 分区合并吗?

我可以将一个 XFS 分区与另一个 XFS 分区合并吗?

我使用的是 SSD,其中有 3 个分区:

$ lsblk  /dev/sda
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 111.8G  0 disk 
├─sda1   8:1    0     2M  0 part 
├─sda2   8:2    0   108G  0 part /
└─sda3   8:3    0   3.8G  0 part /mnt

并被格式化为 XFS /dev/sda2/dev/sda3

我不再需要它/dev/sda3了,那里没有任何数据,我想将它与 /dev/sda2 合并。如果我必须取消分配,这不是一个大问题/dev/sda2。但我有重要的数据和整个操作系统安装在/dev/sda2.

有没有办法将 /dev/sda3 与 /dev/sda2 合并,从而使数据/dev/sda2保持不变?

编辑:

在询问之前我已经尝试过 xfs_growfs 这种方式:

# xfs_growfs /dev/sda2 
meta-data=/dev/sda2              isize=512    agcount=4, agsize=7077888 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=0
data     =                       bsize=4096   blocks=28311552, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=13824, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

它没有任何作用。我还尝试删除分区 3,然后使用xfs_growfs/运行/dev/sda2。我重新启动,看到可用空间是空闲的,并且/dev/sda2一如既往地是 108 GB。

我没有使用 LVM。

细节:

xfs_info -V
xfs_info version 5.7.0

操作系统:

$ cat /etc/os-release | head -n1
NAME="Arch Linux"

核心:

$ cat /proc/version 
Linux version 5.8.5-xanmod1-1-xanmod (makepkg@archlinux) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35) #1 SMP PREEMPT Wed, 02 Sep 2020 20:22:18 +0000

答案1

当然不可能合并;您在上一段中描述的是正确的方法,加上我最初错过的一个步骤:

  • umount /mnt,完毕
  • sda3使用fdisk或删除parted完毕
  • 扩展分区sda2
  • 使用扩展文件系统xfs_growfs /

第三步有点危险。如果您有系统备份,请继续,否则使用gpartediso。在您的实时系统上,启动fdisk /dev/sda.p列出分区。记下sda2的起始扇区和id类型。然后d删除它!接下来,创建一个新分区,从与之前完全相同的扇区开始,到磁盘的最后一个扇区结束。它可能会被设置为相同的 ID 和类型,我想是 83 Linux,但也要检查一下。完成后p,再次检查新sda2的起始扇区和id是否与旧的相同w q。危险的部分是,如果您错过了开始或 ID,分区数据将被破坏(不完全是这样,但您会遇到麻烦)。仅删除分区会更改表,而不会触及数据。
之后xfs_growfs /将扩展文件系统;如果没有,内核可能需要使用partprobepartx命令来了解更改。或者你可以重新启动。

删除分区来扩展它可能看起来很奇怪,但这是一个标准过程,你可以搜索它。如果您想避免这种情况,可以在未来的系统上使用 LVM。


另一种方法是下载gparted制作启动 USB/CD,从那里启动并在简单的图形环境中完成工作。

相关内容