温馨提示×

linux mount只读咋解决

小樊
46
2026-09-05 10:06:04
栏目: 智能运维

Linux 中 mount 成**只读(read-only)**一般有几种常见原因和对应解决办法,下面按“最常见 → 少见”给你排查思路。


一、最常见:文件系统出错被内核强制只读

系统检测到磁盘错误,会保护性地变成只读。

现象

  • mount 看到 ro
  • dmesg 里有类似:
    EXT4-fs error (device sda1): ... remounting filesystem read-only
    

解决办法

  1. 先看日志

    dmesg | tail
    
  2. 卸载后修复文件系统

    umount /mnt/xxx
    fsck -y /dev/sdX
    

    ⚠️ 根分区不能在运行时修,要用 Live CD / 单用户模式

  3. 重新挂载为读写

    mount -o remount,rw /mnt/xxx
    

二、mount 时忘了加 rw(或写错了)

检查当前挂载选项

mount | grep 你的挂载点

如果看到 ro,可以:

mount -o remount,rw /挂载点

umount /挂载点
mount -o rw /dev/sdX /挂载点

三、fstab 写成了 ro

检查

cat /etc/fstab

如果有:

/dev/sda1  /data  ext4  ro  0 0

改成:

/dev/sda1  /data  ext4  rw  0 0

然后:

mount -a

四、设备本身物理只读(SD 卡 / U 盘)

  • 物理写保护开关
  • 或磁盘寿命耗尽(坏块)

验证

smartctl -a /dev/sdX

如果是只读设备,只能换盘。


五、NFS / 网络挂载只读

NFS 服务端可能导出为 ro

showmount -e 服务器IP

需要改服务端 /etc/exportsrw


六、SELinux / 权限问题(看起来像只读)

其实是权限或 SELinux 拦截:

getenforce
ls -l /挂载点

快速排查顺序(推荐)

mount | grep 挂载点
dmesg | tail
fsck -y 设备
mount -o remount,rw 挂载点

如果你愿意,可以把下面信息发我,我可以直接帮你判断:

  • mount 输出
  • dmesg | tail 报错
  • 根分区 / 数据盘 / U盘 / NFS 哪一种

0