为什么 modprobe.conf 中的 /bin/true

wir*_*ben 8 linux modprobe

install hfs /bin/true

据称禁用/etc/modprobe.d/hfs.conf hfs

为什么?看起来倒退了。

Lac*_*cek 8

根据modprobe.d(5) 手册页

安装模块名称命令...

这是最强大的原语:它告诉 modprobe 运行您的命令,而不是像平常一样将模块插入内核。

所以你基本上是在对内核说“嘿,如果你想插入hfs模块,只需运行/bin/true而不是你本来要运行的命令。诚实地说,它将插入并配置模块。”

  • 根据 Redhat,这只会禁用启动时加载。它不会阻止有意使用 insmod 或 modprobe 加载模块,或通过依赖项加载模块。因此,您还必须将“install hfs /bin/false”添加到配置中以禁用这些用例。参考:https://access.redhat.com/solutions/41278#rhel7only (3认同)
  • 告诉_用户_这里发生了什么可能会更好,但是,告诉_内核_这不是一个糟糕的选择。由于`/bin/false`总是不成功,modprobe总是会认为加载模块失败。还应该注意的是,这种方法是一种黑客:您可以简单地在配置中编写“blacklist hfs”,这将禁用该模块,并且很简单。 (2认同)