在 Ubuntu 中把文件系统设为只读(Read-Only),常见有几种场景和做法,取决于你是想:
下面按常见需求说明。
sudo mount -o remount,ro /
或指定挂载点:
sudo mount -o remount,ro /home
✅ 重启后恢复
❌ 如果有进程正在写入,会失败
mount | grep ' / '
sudo mount -o remount,ro,noload /
sudo fsfreeze -f /
sudo fsfreeze -u /
⚠️ 风险操作,可能导致系统无法启动
sudo nano /etc/fstab
UUID=xxxxxx / ext4 ro 0 1
或
/dev/sda1 / ext4 ro,errors=remount-ro 0 1
sudo mount -a
✅ 重启后生效
❌ 日志、桌面、systemd 可能失败
编辑:
sudo nano /etc/default/grub
在:
GRUB_CMDLINE_LINUX_DEFAULT
添加:
ro
示例:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash ro"
更新 GRUB:
sudo update-grub
重启后根分区只读。
systemctl rescue
或直接选 GRUB → Advanced → Recovery Mode
Recovery 默认把根分区挂载为:
ro
sudo mount -o ro /dev/sdb1 /mnt
或 fstab:
/dev/sdb1 /mnt exfat ro,nofail 0 0
touch /testfile
提示:
Read-only file system
| 场景 | 推荐方式 |
|---|---|
| 临时排查 | mount -o remount,ro |
| 防止篡改 | fstab + ro |
| 系统修复 | Recovery / Live CD |
| 嵌入式系统 | 内核参数 ro |
| 安全环境 | overlay + 只读根 |
你可以告诉我:
我可以给你最安全、最合适的方案。