可直接执行sudo mount -o remount,ro /mnt/data实现临时只读,需文件系统支持remount;fstab中添加,ro选项并运行sudo mount -a可持久化;绑定挂载可用--bind加remount,ro创建只读视图;nfs/iso/squashfs等应初始挂载即指定ro。

用 mount -o remount,ro 临时切换为只读
如果目录已经挂载(比如 /mnt/data),且底层文件系统支持重新挂载(ext4、xfs 等主流格式都支持),可直接执行:
- sudo mount -o remount,ro /mnt/data
执行后,该挂载点下所有文件和子目录立即拒绝写入——普通用户和 root 都无法 touch、echo >、cp 覆盖或 rm。验证方式:尝试创建文件 touch /mnt/data/test,会报 Read-only file system。
注意:若提示 mount: /mnt/data: cannot remount /dev/sdb1 read-only, is busy.,说明有进程正在访问该挂载点。可用 lsof +D /mnt/data 或 fuser -v /mnt/data 查看并终止相关进程,再重试。
通过 fstab 实现开机自动只读挂载
要让只读设置在重启后依然生效,需修改 /etc/fstab:
- 先用
blkid或lsblk -f获取设备的 UUID 或设备路径(如UUID=abcd-1234) - 编辑
/etc/fstab,添加或修改对应行,末尾加上 ,ro(逗号不可省):UUID=abcd-1234 /mnt/data ext4 defaults,ro 0 2 - 运行
sudo mount -a测试配置是否合法,无报错即生效
这样下次启动时,系统会自动以只读方式挂载该设备,无需手动干预。
宝塔Linux面板11.8.1为官网当前正式版,新增AI建站能力并经过宝塔网站工程师深度调教,开放自定义AI功能API,同时对WAF进行界面重构和深度优化,提升拦截能力与运维效率。
对已挂载的目录做只读绑定挂载(不改动原挂载)
有时你不想动原有挂载(比如 /srv/www 需保持可写),但又想对外提供一个只读视图(如给容器或测试环境使用)。可用绑定挂载加 ro 标志:
- sudo mount --bind /srv/www /mnt/www-ro
- sudo mount -o remount,ro,bind /mnt/www-ro
此时 /mnt/www-ro 是 /srv/www 的只读镜像,修改原目录不影响它,往它里面写会失败;而原目录仍可正常读写。卸载只需 sudo umount /mnt/www-ro。
特殊场景:NFS 或只读镜像挂载时直接指定 ro
如果是挂载 NFS 共享、ISO 镜像或 squashfs 文件系统,建议从一开始就不启用写权限:
- NFS:
sudo mount -t nfs -o ro,hard,intr server:/path /mnt/nfs - ISO:
sudo mount -o loop,ro image.iso /mnt/iso - squashfs:
sudo mount -t squashfs -o ro /dev/sdb1 /mnt/squash
这类只读文件系统本身不支持写操作,即使 root 也无法绕过,比 remount 更彻底,也更安全。










