商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 系统应用 > Linux怎么查看磁盘分区的挂载选项

Linux怎么查看磁盘分区的挂载选项

  发布于2026-06-30 阅读(0)

扫一扫,手机访问

不少人在排查磁盘挂载问题时,习惯性地去翻 /etc/fstab 或者直接用 mount 命令。但说实话,这两种方式都带点“滞后性”——/etc/fstab 充其量只是系统启动时的配置意愿,而 mount 命令的输出则做了某些过滤和美化。真正能反映当前内核实际设定的,是 /proc/self/mountinfo 这个文件,而 findmnt 命令正是专门解析它的利器。

Linux怎么查看磁盘分区的挂载选项

直接看当前生效的挂载选项,用 findmnt 最准

别只盯着 /etc/fstab,它只是启动时的“愿望清单”,实际运行时,systemdmount -o remount 或内核启动参数都可能覆盖它。findmnt 读取的是 /proc/self/mountinfo,字段语义明确、不怕空格和特殊字符,输出的信息也比 mount 更完整。

  • findmnt /dev/sdb1:直接查设备,输出包含完整的挂载选项列(比如 rw,noatime,stripe=400
  • findmnt /data:查挂载点,比 mount | grep /data 更不易漏项
  • findmnt -o SOURCE,TARGET,FSTYPE,OPTIONS -t ext4:按文件系统类型筛选,可以避开 tmpfsproc 这类伪文件系统

为什么 /proc/mountsmount 命令更底层可信

mount 命令本质上是对 /proc/mounts 的格式化输出,但有个隐藏风险:它默认会过滤掉 debugfssecurityfs 等内核内部挂载项,甚至某些动态挂载(比如 systemd-mountautofs)也有可能被遗漏。而 /proc/mounts 是内核维护的实时快照,它的第四列是用逗号分隔的字符串(如 rw,relatime,data=ordered),这个字符串就是此刻真正起作用的参数——没有中间商赚差价。

  • 快速定位根分区:grep " / " /proc/mounts
  • 整齐列出所有挂载点及其选项:awk '{print $2,$4}' /proc/mounts | column -t
  • 注意:mount 命令的输出顺序不固定,而 /proc/mounts 的字段位置稳定,脚本解析时用后者更安全

df -h 根本不显示挂载选项,别指望它判断只读

df -h 只统计磁盘空间的用量,完全不涉及 ro/rwnoatimebarrier=1 这类行为控制项。你能看到 /boot 挂在 /dev/sda1 上,但完全无法判断它到底是只读还是可写。一旦误配成 ro,执行 touch /boot/test 会直接报 Read-only file system,而 df -h 依然显示一切正常——这就很能误导人了。

  • 确认挂载点是否可写,必须用:findmnt -o OPTIONS /bootgrep /boot /proc/mounts
  • df -T 能补上文件系统类型(比如 xfs),但仍然不反映实际挂载行为
  • 部分发行版(如 RHEL 8+)通过 systemd-remount-fs.service 动态覆盖 fstab 中的配置,此时 /proc/mounts 才是唯一的真相来源

改了 /etc/fstab 却没生效?常见原因就这三类

你明明在 fstab 的第四字段老老实实加上了 ,noatime,但 findmnt / 显示的却还是 relatime。这时候别急着重写配置,大概率不是语法写错了,而是没有触发重挂载,或者被更高优先级的机制给覆盖了。

  • 没执行 sudo mount -o remount /:修改 /etc/fstab 不会自动重新挂载已经在运行中的分区
  • LVM 或加密卷的路径对不上:fstab 里写的是 /dev/sdb1,但实际挂载的是 /dev/mapper/vg-lv,你改的那行选项根本没落到真正的挂载点上
  • 内核启动参数全局覆盖:比如 rootflags=noatime 会直接压过单个挂载点的局部设置

所以归根结底,真正起决定性作用的,永远是 /proc/mounts 里那行第四列的内容——其他的一切都只是中间状态,或者静态意图罢了。

本文转载于:https://www.php.cn/faq/2742867.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注