最直接的修复动作是执行mount -o remount,rw /,但须先确认只读是否由硬件故障、文件系统损坏或fstab配置错误引起,否则盲目执行可能加剧数据风险。

根分区显示 Read-only file system 时,mount -o remount,rw / 是最直接的修复动作
只要系统还能进入 shell(比如单用户模式、救援模式或正常登录后发现 / 突然只读),第一反应就是执行这条命令。它不依赖分区是否损坏,也不要求卸载——因为根分区无法卸载,remount 是唯一安全的原地切换方式。
常见触发场景包括:启动时因 fsck 失败自动降级为只读、内核检测到 I/O 错误、人为误配 /etc/fstab、或 Windows 休眠后挂载 NTFS 分区导致整个系统被“传染”为只读(虽不直接作用于根,但可能引发连锁只读行为)。
-
mount -o remount,rw /必须以 root 权限运行;普通用户会提示Permission denied - 如果提示
mount: / is busy,说明有进程正占用根文件系统(如 systemd-journald、某些容器或挂载点子树),可先尝试lsof +D /查看,但更稳妥的是进 rescue mode 操作 - 部分旧内核或精简发行版(如 Alpine)可能不支持对根分区
remount,此时需确认CONFIG_EXT4_FS_RW或对应文件系统写支持已编译进内核
执行前务必确认只读是临时状态,不是文件系统损坏的后果
盲目 remount,rw 可能掩盖底层问题。如果根分区因磁盘坏道、元数据损坏或 journal 异常被内核强制设为只读,强行切回读写可能导致进一步损坏。
先运行 dmesg | tail -20 查看最近内核日志,重点找 EXT4-fs error、I/O error、journal has been aborted 这类关键词。若存在,优先用 fsck -f /dev/sda1(替换为实际根设备)在未挂载状态下修复,而不是直接 remount。
- 不要在已挂载的根分区上直接跑
fsck,除非加-n参数只做只读检查 -
fsck后若提示 “filesystem errors corrected”,必须重启或至少重新remount,rw才生效 - 使用 LVM 或 btrfs 的系统,需额外确认逻辑卷/子卷状态(如
lvs、btrfs filesystem show)
/etc/fstab 配置错误会导致每次重启都回到只读状态
执行 mount -o remount,rw / 只影响当前会话。如果 /etc/fstab 中根分区的挂载选项写成了 ro 或漏了 rw,下次重启又会只读。这是最容易被忽略的“反复发作”原因。
检查命令:grep " / " /etc/fstab,确认第 4 列(options 字段)包含 rw,且没有 ro 冲突。典型正确项类似:/dev/sda1 / ext4 defaults 0 1(defaults 默认含 rw)。
- 若发现
ro,编辑/etc/fstab改为rw或删掉ro;注意修改前确保已用remount,rw解锁该文件系统,否则保存失败 - 某些发行版(如 RHEL/CentOS)默认启用
systemd-remount-fs.service,它会在启动时强制按/etc/fstab重挂所有项,因此 fstab 错误必现 - 改完 fstab 后建议手动测试:
mount -o remount /(不带rw,依赖 fstab 配置),再touch /test-write验证
NTFS 分区残留 Windows 休眠状态会“污染”整个 Linux 系统的挂载行为
这不是根分区本身的问题,但非常典型:当你在 Windows 中启用了快速启动(Fast Startup)或休眠后直接切到 Linux,并挂载了 NTFS 分区(比如共享数据盘),Linux 内核会因检测到 Windows 的 hibernation 文件(hiberfil.sys)而拒绝写入该分区。此时若该 NTFS 分区被用于存放关键服务路径(如 Docker volume、Web root),可能间接导致服务报错,甚至触发 systemd 将相关 mount unit 标记为 failed,进而影响依赖它的其他单元——包括一些本不该受影响的根相关服务。
验证方法:mount | grep ntfs,若看到 ro 且设备是 /dev/sdXY,基本可锁定。解决只需在 Windows 中彻底关机(而非重启或休眠),或 Linux 下强制挂载:mount -t ntfs-3g -o remove_hiberfile /dev/sdXY /mnt/ntfs(慎用,会清除 Windows 休眠状态)。
- 这个现象不会让
/本身变成只读,但会让依赖它的服务行为异常,容易误判为根分区问题 - 若你确实需要双系统共享数据盘,Windows 端应禁用快速启动:控制面板 → 电源选项 → 选择电源按钮的功能 → 更改当前不可用的设置 → 取消勾选“启用快速启动”
- Linux 侧可配置
/etc/fstab加uid=1000,gid=1000,umask=022等参数避免权限混乱,但前提是挂载本身已是rw
remount,rw 命令本身,而是它背后是否藏着磁盘硬件故障、fstab 配置漂移、或者跨系统挂载的隐性冲突——这些点不排查清楚,修一次,过两天又来。











