有没有办法在救援模式下对 rootlv 执行安全缩减?互联网上的大多数解释基本上都表明可以使用以下步骤序列来完成:
改变; FSCK;调整2fs大小; lv减少;重启
我试了好几次;但是当系统通过 POST 时我得到的只是相同的错误:
致命:INT18:启动失败
这是一种安全的方法吗?
答案1
我所做的步骤完全正确。问题是我启动系统的方式。 BIOS 找到 CentOS 介质,然后安装菜单已显示给我。我试图启动选择选项“从硬盘驱动器启动”,之后我收到了前面描述的错误。
我再次重复了这些步骤,但从这次开始我弹出了 CentOS 的媒体重新启动之前。答对了!效果非常好。
因此,为了帮助另一个最终需要减少 rootlv 的人,以下是操作方法:
- 从 CentOS 介质启动(选项救援模式。当向导询问时不要安装系统);
- 激活 rootvg(
vgchange -ay rootvg
如果您不知道 vg 的名称,请输入vgs
命令) - 在 rootlv 上运行 fsck(例如:
fsck -f /dev/mapper/rootvg-rootlv
。如果您不知道 lv 的名称,请键入lvs
命令) - 运行
resize2fs /dev/mapper/rootvg-rootlv 10G
(采用您希望 LV 保留的大小 — 例如,当您将 15 GB 减少到 10 GB 时,为 10 GB) - 运行
lvreduce -L 10 GB /dev/mapper/rootvg-rootlv
(如果这里使用参数可以跳过第4步-r
) - 重新启动机器。