我遇到了一个问题:我的笔记本电脑加载了 Nvidia 驱动程序,尽管它已添加到/etc/modprobe/blacklist.conf
as blacklist nvidia
、 in 和/etc/default/grub
as rdblacklist nvidia
in 中GRUB_CMDLINE_LINUX
。这会导致机器在电池供电时运行发热并且不那么流畅。
为什么 Fedora 不遵守我的黑名单配置?可以做什么?
更新。
文件:
[0] % cat /etc/modprobe.d/bumblebee.conf
blacklist nvidia
blacklist nouveau
options bbswitch load_state=0 unload_state=0
[0] % cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=fedora/root rd.lvm.lv=fedora/swap nouveau.modeset=0 rd.driver.blacklist=nouveau,nvidia rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
编辑:lsmod|grep nvidia
[1] % lsmod|grep nvidia
nvidia 8642560 1
drm 335872 12 i915,drm_kms_helper,nvidia
答案1
该模块可能会在启动时加载到 initramfs 中。您必须重新生成 initramfs 以包含对以下内容的修改/etc/modprobe.d/*
运行以下命令重新生成 initramfs
dracut -f /boot/your-initramfs
重新启动时,不应自动加载驱动程序
答案2
如果您需要暂时将某些内容列入黑名单,或者出于某种原因更喜欢使用 Grub 来执行此操作,您还可以编辑内核启动选项以将模块也列入黑名单:
vmlinuz ro rhgb quiet rdblacklist=<modulename>
可以通过将其添加到 /etc/default/grub 的这一行来使其永久化:
GRUB_CMDLINE_LINUX="<existing boot options> rdblacklist=<modulename>"
然后更新你的启动配置
grub2-mkconfig -o /boot/grub2/grub.cfg
然而,这通常应该是将某些内容列入黑名单的最后手段。