现在是否应该考虑弃用 /etc/mtab 的使用?

Phi*_*ing 8 linux compatibility proc

我对文件或符号链接很好奇/etc/mtab。我相信这是一个遗留机制。在我使用过的每一个现代 Linux 上,这是一个符号链接/proc/mounts,如果mtab是“普通”文件系统上的常规文件,/etc那么在使软件与挂载命名空间一起工作时就会遇到挑战。

很长一段时间我一直认为两件事之一是正确的。任何一个:

  • 我们正在等待软件引用/etc/mtab过期或更新
  • 其他非 Linux 操作系统仍然使用相同的文件名,并且链接是为了跨平台合规性

然而,这两种想法似乎都站不住脚。我找不到任何在 Linux 之外保留相同文件名的现代操作系统的良好参考。而且它似乎已经存在了太久了,不仅仅是一个向后兼容性问题;更重大的变化似乎在同一时间发生和消失。

所以我想知道是否/etc/mtab真的只是出于历史原因。它是否已被正式弃用?[截至 2023 年]有任何坚实的现代理由来保留它吗?

我不想从我的系统中删除它,但作为软件开发人员,我想了解它的用处以及是否要避免它。

Mar*_*ler 8

\n

现在是否应该考虑弃用 /etc/mtab 的使用?

\n
\n

取决于你问的是谁。如果你问 Linux 上 mount 的作者,答案是肯定的;自2018年以来,它说

\n
\n

默认情况下,\xe2\x80\xa6 在编译时完全禁用,因为在当前的 Linux 系统上,\xe2\x80\xa6 更好

\n
\n

我认为这是一个非常有力的声明。在此之前,/etc/mtab“也受支持”,但人们认为最好不要使用它:

\n
\n

这个真正的 mtab 文件仍然受支持,但在当前的 Linux 系统上,\n最好将其设为 \xe2\x80\xa6 的符号链接

\n
\n

这句话从2014年就一直有。在此之前,仅推荐

\n
\n

mtab 文件仍然受支持,但建议使用到 \xe2\x80\xa6 的符号链接

\n
\n

换句话说,是的。这已被弃用近十年了。你不应该依赖它。忽略。

\n

如果有的话,事实来源是/proc/mounts。(考虑到 Linux 挂载命名空间的存在,正确、唯一且明确地列出挂载在逻辑上是一个不平凡的问题)

\n

  • 显示该时间线确实有助于理解它的当前状态,并理解为什么它尽管已经有明显的年龄,但仍然存在。2019 年比我写问题时想象的要近。谢谢! (2认同)