使用内核命令行的 Modprobe 黑名单

使用内核命令行的 Modprobe 黑名单

我有两个启动配置,或多或少看起来像这样:

  1. modprobe.blacklist=nouveau
  2. modprobe.blacklist=nvidia,<and other nvidia modules>

其用于在启动时动态使用开源或专有驱动程序。现在我想添加另一个启动项,它会禁用两者nouveau,并nvidia实际上禁用 NVIDIA GPU。

  1. modprobe.blacklist=nouveau,nvidia,...

lsmod | grep -iE '(nouveau|nvidia)'仍然显示nvidia,所以我的猜测是另一个模块将其引入。

通常我可以创建一个文件/etc/modprobe.d/blacklist

install nvidia /bin/true
install nouveau /bin/true

但这意味着我失去了选择另一个启动项的灵活性。

有什么办法可以实现这种行为吗?我唯一的想法是拥有两个包含不同modprobe.d配置的小文件系统,并在更改为真正的根分区后在引导过程中尽早动态挂载它们。

相关内容