内核模块选项的优先级:内核启动参数与 modeprobe.d?

内核模块选项的优先级:内核启动参数与 modeprobe.d?

如果我有nvidia-drm.modeset=1内核参数options nvidia-drm modeset=0modeprobe.d.那么使用的是哪个值呢?

如果我有多个nvidia-drm.modeset内核参数,那么将使用第一个或最后一个参数?

我问这个是因为 rpmfusion 的人决定添加nvidia-drm.modeset=1/etc/default/grub我需要它关闭。但似乎每次我重新安装驱动程序时,它都会不断将此值添加到默认的 grub 配置中。我想覆盖它,而不是总是调用 grubby 或在安装驱动程序后手动更改默认 grub。

在虚拟机上测试后,我想我明白了:

  1. 启动参数总是覆盖 modprobe.d
  2. 最后一个参数总是获胜

答案1

作为一般规则,当存在多个相互冲突的参数时:

  • 最后设置的值获胜(因此,人们始终可以通过在末尾添加一个值来覆盖生成的内核命令行上的值)
  • 内核命令行胜过存储在文件中的设置(因此人们总是可以恢复配置文件中设置不正确的系统)。

相关内容