我有一个客户,他没有听从我的警告去压缩/存档数据,现在他们已经设法填满了 4TB 的 HD(ack),现在它无法启动,因为 /home 上没有足够的空间来存放临时文件。
好消息是,驱动器已分区,因此我们可以从 /boot 中窃取足够的空间来进入系统并修复混乱。
设置如下:
- 软件 RAID-1
- Ubuntu Linux 12.04LTS
- md0 = sda/b1 @ 50GB,/boot
- md1 = sda/b2 @ 4GB,交换
- md2 = sda/b3 @ 剩余 3.9TB,/home
我犹豫着是否要这么做,因为我不想破坏任何东西。例如,我读到分区的开头不能改变。有人能告诉我如何:
- 将 md0 缩小 20GB
- 将未分配的 20GB 移至驱动器末尾
- 将 20GB 添加到 md2
我已经在 /dev/md0 和 /dev/md2 上运行了 e2fsck - 一切都很干净(谢天谢地)
我思考该过程是:
- 3 个 RAID 阵列全部失败
- 使用救援磁盘或 fdisk 移动东西(注意:分区设置为 raid 自动检测)
- 重新创建数组
我所有的搜索都显示了如何缩小数组,但没有讨论移动分区。
答案1
您显示的是您的 raid 阵列,但没有显示了解您的设置所必需的真实分区。
话虽如此,经历所涉及的麻烦和风险(包括人为错误)听起来似乎是一个糟糕的解决方案,尤其是对于 4TB 硬盘上的 20GB 而言。
如果我是你,我会简单地应用最初的建议来压缩他们的文件,直到系统可以正常启动,然后让他们压缩、备份和清理他们的东西,或者添加另一个驱动器。