调整主分区的大小,占用根分区的空间?

调整主分区的大小,占用根分区的空间?

我使用的是 Arch Linux,这是当前磁盘布局的概述:

❯ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
nvme0n1     259:0    0 476,9G  0 disk
├─nvme0n1p1 259:1    0     1G  0 part /boot
├─nvme0n1p2 259:2    0   300G  0 part /
└─nvme0n1p3 259:3    0 175,9G  0 part /home
❯ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p2  295G   82G  198G  30% /
/dev/nvme0n1p3  173G   87G   77G  53% /home
/dev/nvme0n1p1 1022M   84M  939M   9% /boot

由于我发现我可能为root分区分配了太多空间,而为分区分配了太少空间home,因此我想知道是否可以将一些可用空间从一个分区转移到另一个分区。我想到了以下步骤:

  1. 备份整个系统
  2. 从 Live arch USB 启动
  3. 调整根分区的大小(这会给我一些未分配的空间)
  4. 删除当前/home分区
  5. 创建并格式化新的主分区nvme0n1/nvme0n1p3
  6. 将旧的 /home 文件转移到新创建的部分

假设到目前为止这些步骤是合理的,当然还有更多步骤需要遵循。我到底该怎么做才能恢复旧系统而不造成太大混乱?我想避免从 0 重新安装并保留已安装的程序、docker 映像等。

另外,我想问一下:

  • 考虑到我经常使用 docker 并且将来可能会安装相当数量的程序(现在我已经使用了约 82G),哪些是一些好的 root-home 大小?
  • 您对克隆 /home 分区时的排除文件列表rsync(如缓存、node_modules、site_packages 等)有什么建议吗?

答案1

首先,您必须从 Live USB 启动。仅当磁盘的任何分区均未挂载时,您才能修改该磁盘。

man gparted resize2fs开始之前请先阅读。

IDKgparted位于 Arch Live USB 上,但 Live Gparted USB 也可用。

跑步gparted一定要选择正确的磁盘!

选择nvme0n1p2,通过降低其上限来缩小它(至 100GB?YMMV)。这将在nvme0n1p2和之间创建未分配的空间nvme0n1p3

选择nvme0n1p3。调整下限以消耗未分配的空间。

单击Apply页面底部的 来gparted实际进行更改。

等到gparted完成。它有很多事情要做。

移除 Live USB,然后重新启动

man gparted resize2fs开始之前请先阅读。

是的,上面那段话又重复了。恕我直言,阅读msn页面是一项神圣的职责。

相关内容