我知道我可以将/etc/modprobe.conf
或中的模块列入黑名单/etc/modprobe.d/blacklist
,但是我有一个讨厌的模块,它在文件系统挂载之前加载(当然 /boot 除外),所以我认为,/etc
到那时它还不会被读取。
我可以使用内核启动参数来阻止模块加载吗?
(我正在使用 GRUB)
或者还有其他方法可以做到这一点?
谢谢你!
答案1
在启动序列早期加载的模块内置于 initramfs 中;您似乎可以运行update-initramfs -c -k your_kernel_version
以确保黑名单模块未加载到该 initramfs 映像中。
答案2
这个 Ubuntu 网站对选项进行了很好的细分:
https://help.ubuntu.com/community/BootOptions#Common%20Boot%20Options
虽然没有任何方法可以告诉内核不要在启动时加载模块,但您可以在以后使用。查看 break= 选项,它们会改变 initrd 的行为。如果您不知道确切的模块,您也许可以使用它们来进一步隔离它。