我最近在我的系统上安装了“wl”(wifi)内核模块。这是一个使我的 Broadcom wifi 卡正常工作的驱动程序。不幸的是,该模块在启动时启用(wifi 灯亮起),这不是我想要的。我想在启动后准备好时启用该模块。为此,我会运行
$ sudo modprobe wl
您能否建议系统上的哪些启动时文件可能会启用该模块?然后我可以编辑该文件并删除该命令。
或者,我想知道“wl”是否正在内核级别加载?如果是这样,在这种情况下如何禁用“wl”? (*好像我对我在说什么有最模糊的了解)。
我查看了以下启动时文件,但它们都没有加载“wl”模块:
/etc/modules
/etc/rc.local
/etc/init.d/knoppix-autoconfig
/boot/grub/menu.lst
/etc/inittab
我通过使用 Synaptic 包管理器安装包“broadcom-sta-dkms”在系统上安装了“wl”。所以我相信一个名为“dkms”的程序可能负责在某处添加启动时命令,加载“wl”模块。
通过观察启动系统时的屏幕,我发现笔记本电脑上的 wifi 指示灯在启动顺序的早期就亮起。这是加载“wl”模块的时间。
当启动屏幕显示“运行级别 n”行时,wifi 指示灯就会亮起,其中我认为“n”是 1、2 或 5。它过得太快,我无法确定数字。
据我所知,上面安装的broadcom-sta-dkms并没有编译出新的内核。
重新参考上面的 /etc/init.d/knoppix-autoconfig。这是一个执行“Knoppix 自动配置和设置”的 shell 脚本。它在那里是因为我的系统实际上是安装在硬盘上的“Knoppix live DVD”。我相信,例如 /etc/rc5.d/ 这样的启动时脚本不会在此系统上使用,而 /etc/init.d/knoppix-autoconfig 可以查看所有内容。
除此之外,系统基本上都是Debian。
答案1
udev
将自动检测设备并加载适当的模块。
wl
您可以通过在目录中添加您自己的黑名单项来阻止 Debian 自动加载模块modprobe.d
。
/etc/modprobe.d
以 root 身份创建一个以文件扩展名结尾的文件.conf
,并在里面放置:
blacklist wl
然后,您将能够通过insmod wl
命令手动加载模块。