我不知道如何将我的 Arch 主分区扩展到可用空间

我不知道如何将我的 Arch 主分区扩展到可用空间

我正在尝试调整我的主分区的大小,但我不知道该怎么做。移动/调整大小不允许我移动该栏,并且没有空间可以将其延伸到。我无法卸载它,因为它说它正忙。

我看到有关移动分区以使其相邻以延伸到自由空间的讨论,但这如何运作呢?我无法移动未分配的空间,并且在未分配的空间搞砸之前不会移动我的主分区吗?

在此输入图像描述

答案1

看图,最后三个分区是不能动的。但你可以创造在未分配的空间中创建一个新分区,然后将现有分区复制/home到那里,例如使用 rsync。

完成此操作后,您可以释放驱动器末端的 23Gb,使其(更)有助于扩展系统磁盘。

稍微分解一下:

  • 创建一个新的 ext4在未分配的空间中分区(实际上 gparted 会创建一个分割,你可能需要做一个mkfs.ext4或类似的事情才能使文件系统)。
  • 暂时挂载(不是 as /home,而是例如 as /mnt
  • 使用 rsync (如)复制整个/home树,例如,

    rsync -va /home/ /mnt

  • 修改您的/etc/fstab以安装新分区/home(最好将旧分区保留/home在不同的路径上)

  • 重启
  • 完成验证后,通过卸载旧分区、从中删除行,/etc/fstab然后使用 删除分区来停用旧分区gparted

答案2

分区是磁盘的一个段,而不是段的组合。由于主分区位于磁盘的末尾,而根分区紧邻其前面,因此没有空间扩展主分区。

您可以扩展已安装的分区,但不能移动已安装的分区。所以你应该在实时系统中工作。

您可以将home分区移动到可用空间中;然后您就可以将其扩大到~44GB。但我建议您不要只是移动分区,而是将 Linux 分区切换到左心室容量(另请参阅建筑维基百科)。 LVM是一种比基本的MBR/UEFI系统灵活得多的分区系统;它唯一的缺点是它特定于 Linux,因此它通常位于 MBR/UEFI 分区内。如果您使用 LVM,您可以非常轻松地扩大主分区。

从实时系统:

  1. 跑向fdisk

    1. 删除交换分区。之后我们将重新创建它。
    2. 在可用空间中创建一个类型为“Linux LVM”的分区。给它数字 5。
  2. 在新分区上创建 LVM 物理卷。 LVM 物理卷是磁盘上用于 LVM 分区的空间。

    pvcreate /dev/sda5
    
  3. 创建LVM卷组。卷组将物理卷(磁盘段)与逻辑卷(文件系统或交换空间的容器)相关联。这arch是群组的名称,您可以随意选择不同的名称。

    vgcreate arch /dev/sda5
    
  4. 创建逻辑卷以将根文件系统和主文件系统移动到 LVM 中,并用于交换空间。确保根卷和主卷至少与现有文件系统一样大。请注意,GParted 是邪恶的:它会舍入文件系统大小,因此如果您使用它显示的内容,您可能会在最后丢失一些数据,这可能会使文件系统无法恢复。使用实际尺寸信息。

    grep sda[67] /proc/partitions    # shows partition sizes in kB
    lvcreate -L "$(awk '$4=="sda6" {print $3}' /proc/partitions)k" -n root arch
    cat /dev/sda6 >/dev/arch/root
    lvcreate -L "$(awk '$4=="sda7" {print $3}' /proc/partitions)k" -n home arch
    cat /dev/sda7 >/dev/arch/home
    lvcreate -L 24g -n swap arch
    
  5. 挂载主分区和根分区的新位置,以确保副本正常。

    mkdir /media/root /media/home
    mount /dev/arch/root /media/root
    mount /dev/arch/home /media/home
    # Check that both filesystems look fine
    
  6. 编辑/etc/fstab并确保它使用对分区的有效引用。如果您正在使用 UUID 或标签,则可以继续使用。如果您使用分区号,则必须更改它。您可以使用 LVM 设备位置,它们很稳定:/dev/arch/root/dev/arch/home

  7. 我不知道 Arch Linux 如何设置其引导系统。在某些发行版上,您需要重新生成第二阶段引导加载程序和 initramfs 以包含 LVM 支持。在 Arch 上,似乎您需要添加lvm2/etc/mkinitcpio.conf重新生成 initramfs

  8. 您不再需要带有主分区和根分区的旧空间。您可以通过在其中创建 LVM 物理卷 ( pvcreate /dev/sda6 /dev/sda7) 并将这些物理卷添加到现有卷组 ( vgextend arch /dev/sda6 /dev/sda7),将它们重新用于 LVM。之后,如果您想扩展文件系统,您可以调用lvextend而不必担心位置:它将使用卷组中任何位置的可用空间来扩展逻辑卷,然后调用resize2fs以扩大文件系统。

相关内容