系统:Ubuntu 11.10
Linux gray 3.0.0-12-generic #20-Ubuntu SMP Fri Oct 7 14:50:42 UTC 2011 i686 i686 i386 GNU/Linux
我正在尝试将一个模块(包括 rt2800usb)列入黑名单,例如;
$ lsmod | grep rt
rt2800usb 22300 0
rt2800lib 48717 1 rt2800usb
crc_ccitt 12595 1 rt2800lib
rt2x00usb 20092 1 rt2800usb
rt2x00lib 48114 3 rt2800usb,rt2800lib,rt2x00usb
mac80211 272785 3 rt2800lib,rt2x00usb,rt2x00lib
cfg80211 172392 2 rt2x00lib,mac80211
$ emacs /etc/modprobe.d/blacklist.conf
并添加:
blacklist rt2800usb
blacklist rt2800lib
blacklist rt2x00usb
blacklist rt2x00lib
进而:
$ sudo update-initramfs -u
$ sudo reboot
但重启后模块会被加载:
$ lsmod | grep rt
rt2800usb 22300 0
rt2800lib 48717 1 rt2800usb
crc_ccitt 12595 1 rt2800lib
rt2x00usb 20092 1 rt2800usb
rt2x00lib 48114 3 rt2800usb,rt2800lib,rt2x00usb
mac80211 272785 3 rt2800lib,rt2x00usb,rt2x00lib
cfg80211 172392 2 rt2x00lib,mac80211
如何让更改在重启后继续存在(即将模块列入黑名单)?
答案1
正如你所看到的修改输出:
rt2800usb 22300 0
rt2800lib 48717 1 rt2800usb
crc_ccitt 12595 1 rt2800lib
rt2x00usb 20092 1 rt2800usb
rt2x00lib 48114 3 rt2800usb,rt2800lib,rt2x00usb
mac80211 272785 3 rt2800lib,rt2x00usb,rt2x00lib
cfg80211 172392 2 rt2x00lib,mac80211
rt2800usb和rt2800lib 由模块使用 rt2x00lib它本身被cfg80211
因此,您列入黑名单的这两个模块是加载模块所必需的cfg80211未列入黑名单。这就是为什么它们尽管被列入黑名单,但仍被加载。