![如何通过缩小home来扩展根分区](https://linux22.com/image/151765/%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%E7%BC%A9%E5%B0%8Fhome%E6%9D%A5%E6%89%A9%E5%B1%95%E6%A0%B9%E5%88%86%E5%8C%BA.png)
最近我发现我的/
(根)分区上的空间很快就会用完。我已经做了一些关于扩展根分区的研究,但是,它并没有提供太多信息(大多数人都说这是不可能的或至少太难了)。然而我不想放弃。
这是照片中我的分区配置。根分区后,/dev/sda6
我有一些可用空间(我不知道它为什么在这里以及它来自哪里)。然后继续/home
,/dev/sda7
然后是更多可用空间 (9.77 GiB)。我想做的是将这些 9.77 GiB 添加到我的根分区。我已经读到我需要将可用空间移到左侧并将其放置在根分区之后(或执行类似的操作),但我不知道如何操作。
据我所知,另一个解决方案可以是缩小 /home 分区。我已经尝试过 /dev/sda7 (这就是那些 9.77 GiB 的来源),但可用空间出现在 /home 的右侧,而不是我需要的左侧。
这张照片是用我的系统制作的,但如果需要,我可以从 Ubuntu LiveUSB 启动。
答案1
最简单的方法是:
- 手动将 ~7GB 的文件从 /home 文件系统复制到外部媒体设备
- 删除/dev/sda7分区
- 增加 /dev/sda6 分区的大小
- 在 /dev/sda6 上扩展 ext4 文件系统
- 在剩余空间中创建一个新的/dev/sda7分区
- 使用 ext4 文件系统格式化新的 /dev/sda7 分区
- 将原始文件从外部媒体设备复制到新的 /dev/sda7 文件系统
- 确保
/etc/fstab
指向正确的块设备/home
这需要进行大量的检查、记录当前状态等。
我不是一个普通的 Ubuntu 用户,所以我不知道块设备是如何引用到挂载点的。有些系统使用简单的设备映射(/dev/sda7 /home),有些使用dev-mapper,有些使用block-id UUID标识符。
完成每一点的具体命令语法将根据您使用的工具集和操作系统而有很大差异。这里的一篇文章太多了,没有更多的信息。
您还应该意识到,每当您更改物理磁盘上的分区表时,如果不小心使用正确的命令和参数,则可能会损坏整个磁盘上任何位置的数据。
使用 LiveOS 对物理磁盘进行更改是一个好主意(TM),我建议您考虑免费的系统救援CD,其构建的目的是提供解决此类问题的工具。
答案2
我不知道它为什么在这里以及它从哪里来
这些是 UEFI 边界。
我想做的是将这些 9.77 GiB 添加到我的根分区。
脚步:
- 将 sda7 与 9.77Gib 未分配空间合并。
- 收缩 sda7 并在开始时创建新的未分配空间。
- 将新的未分配空间与 sda6 合并。
使用实时会话来执行此操作,并在执行下一个操作之前完成其中每个操作。这并不太困难,因为 gParted 会引导您完成该过程。开始之前一定要做好备份。
顺便说一句:还有其他方法。如果/
没有 /home/,23Gb 就太多了。我的服务器带有 Apache 和 Mysql,但从未达到 20Gb:这些使用的数据位于不同硬盘的挂载 /opt/ 中。如果您有这两个,或者邮件服务器,或者文件服务器,最好更改该服务的数据目录设置并将它们移动到/home/
.
答案3
第 1 步 - 您必须使用 Ubuntu Live USB。
第 2 步 - 从 Live USB 启动并打开 GParted。
步骤 3 - 选择要释放空间的驱动器。
步骤 4 - 调整 GParted 上的光标,以释放所需的空间。
步骤 5 - 如果未分配空间上方有任何分区(例如 home 或 swap),请选择该分区并使用光标将其移动到右侧。
第 6 步 - 一旦占用根分区下的未分配空间。您现在可以扩展根分区的大小。
享受使用 LINUX 的乐趣:)