You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kubuntu 22.04 恢复模式无法以只读(RO)方式挂载根文件系统求助

Kubuntu 22.04 恢复模式无法以只读(RO)方式挂载根文件系统求助

嘿,我太懂你这种困惑了——明明GRUB已经传了ro参数,结果进了恢复模式shell还是RW状态,确实有点反直觉,毕竟恢复模式本该支持只读挂载来做文件系统检查之类的操作。

问题出在Kubuntu(其实整个Ubuntu系都这样)的恢复模式启动流程上:哪怕GRUB传递了ro,initramfs里的恢复模式脚本会自动把根分区重新挂载为读写模式,目的是方便用户执行修复操作(比如修改配置、安装依赖),但这就破坏了你想要的只读状态。

给你两个可行的解决办法:

方法一:直接启动到只读单用户shell(最快捷)

  1. 开机时按住Shift键进入GRUB菜单,找到带“recovery mode”的启动项,按e进入编辑界面
  2. 找到以linux开头的那一行,把里面的recovery或者你改成的single替换成init=/bin/bash
  3. 按下Ctrl+X或者F10启动系统,这时候会直接进入一个极简的shell,根分区会保持只读挂载状态——因为我们跳过了后续会自动重挂载为RW的启动脚本

这个方法最直接,完全满足你需要RO挂载根文件系统的需求,而且不用修改系统文件。

方法二:修改恢复模式脚本(适合需要长期调整的情况)

如果你希望每次进入恢复模式菜单都能默认RO挂载,那可以修改恢复模式的启动脚本:

  1. 先正常启动到Kubuntu系统,打开终端
  2. 编辑恢复模式的脚本文件:sudo nano /usr/share/initramfs-tools/scripts/local-top/recovery-mode
  3. 找到类似下面的代码段(负责挂载根分区为RW):
    mount -o remount,rw "$rootmnt"
    
    把它注释掉(在行首加#),或者改成挂载为RO:
    mount -o remount,ro "$rootmnt"
    
  4. 保存文件后,更新initramfs:sudo update-initramfs -u
  5. 下次进入恢复模式时,根分区就会保持只读挂载了

不过要注意:修改这个脚本会改变恢复模式的默认行为,如果你之后需要在恢复模式里写文件,得手动执行mount -o remount,rw /才行。

另外补充下:进入只读shell后,大部分只读操作(比如查看日志、检查文件系统)都能正常执行,要是临时需要读写,可以执行mount -o remount,rw /切换,用完再切回去就行。

备注:内容来源于stack exchange,提问作者Kenshi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 12:12:44