被忽略的模块

被忽略的模块
/etc/modules includes

bbswitch load_state=0

每次bbswitch都没有加载,我必须手动:

sudo modprobe bbswitch

然后运行bbswitch命令来切换显卡。

为什么它不尊重load_state=0

答案1

不知道您使用的是哪个发行版,以下内容至少适用于 Ubuntu 16.04 和 18.04,因为 Ubuntusystemd从 16.04 开始使用。

旧的 module-loader 脚本/etc/init.d/kmod允许将模块选项放入/etc/modulessystemd确实用自己的服务 替换了这个脚本systemd-modules-load.service。新方法不允许将模块选项放入/etc/modules,并且只接受每行每个模块名称。
如果调用/etc/init.d/kmod它,则不会执行脚本,而是调用服务systemdsystemd-modules-load.service此外,最好习惯它,systemd因为旧的 sys-v init 脚本不太可能会卷土重来,而会被完全取代。

但是,如果您想bbswitch使用一组选项来加载模块,则必须执行以下步骤。

使模块在启动时加载。

root@localhost:~# echo "bbswitch" >> /etc/modules

将您的选项放入一个/etc/modprobe.d文件中,该文件在每次加载模块时都会被执行。因此,定义模块参数应该会更好。因此,创建文件/etc/modprobe.d/bbswitch.conf并输入以下行。

root@localhost:~# cat /etc/modprobe.d/bbswitch.conf
options bbswitch load_state=0

相关内容