请问linux /proc/self/(mountinfo、mountstats、mounts),用哪个文件拿挂载点信息?

发布于 2022-09-12 23:20:22 字数 184 浏览 30 评论 0

需求是拿到linux fliesystem相关信息。

我的做法是先通过/proc/self/(mountinfo、mountstats、mounts) 这三个中任意一个文件拿到挂载点信息,然后通过挂载点来调用statfs函数获取其他信息。

但是我发现,这个三个文件记录的文件记录的挂载点居然有少部分不一样,我想问问大家应该拿哪个?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

碍人泪离人颜 2022-09-19 23:20:22

建议是使用 mountinfo

在proc的文档中有简单提到,mountinfo 最新,linux 2.6.26引入,它是为了替代mounts(linux 2.4.19引入) 而出现的,同时也解决了mounts存在的一些问题

It supplies various information (e.g.,  propaga‐
              tion  state, root of mount for bind mounts, identifier for each mount and its parent) that is missing from the (older) /proc/[pid]/mounts file, and fixes vari‐
              ous other problems with that file (e.g., nonextensibility, failure to distinguish per-mount versus per-superblock options).

而mountstats则更多的目的是暴露一些统计信息和配置信息?文档中提到只有NFS有这些信息暴露,其他文件系统只有普通的类型和挂载点记录,它在 Linux 2.6.17引入,略早于mountinfo,信息详细程度没有 mountinfo 多。

从文档来看,我盲猜:
1、挂载点的数量:mountinfo = mountstats >= mounts
2、挂载点信息的详细程度:mountinfo > mounts > mountstats

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文