LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: huan

[求助]如何让开机不自动加载某些模块?

[复制链接]
发表于 2006-3-20 10:20:01 | 显示全部楼层
Post by pointer
要不直接去系统的/lib/mod的文件夹里对应的mod改名
如, foo.ko 改为 foo.ko.noused



这样应该找不到才对,同意7楼兄弟的说法,我觉得现在楼主后悔已经来不及了,都编译进去了嘛:rolleyes:
回复 支持 反对

使用道具 举报

发表于 2006-3-20 11:06:31 | 显示全部楼层
有些应该可以通过启动命令行禁止的
noapm noapci等
回复 支持 反对

使用道具 举报

发表于 2006-3-20 11:06:47 | 显示全部楼层
Post by faxian
加入到 /etc/modprobe.d/blacklist

不行啊,重启了还有
回复 支持 反对

使用道具 举报

发表于 2006-3-24 18:16:57 | 显示全部楼层
discover-modprobe.conf里面加了吗?
回复 支持 反对

使用道具 举报

发表于 2006-3-27 09:24:48 | 显示全部楼层
Debian加载模块的脚本在/etc/rcS.d的S20module-init-tools和S20modutils和S36discover以及S40hotplug里面。
对应前两个的是/etc/modules或者/etc/modules-内核版本号 或者 /etc/modules-内核主版本号文件。也会加载/lib/modules/内核版本号/boot目录下所指定的模块。
对于discover只要添加skip语句即可,对于hotplug需要增加blacklist语句。
或者直接update-rc.d -f hotplug remove把hotplug的启动脚本禁用掉。
所以要想不要加载某个模块以上四点都要顾及到才可以。
我用的是sarge其他版本的不同请直接阅读/etc/init.d中对应的脚本,都是bash写的,不难懂。

忘记说了一点,initrd里面的模块会先于以上四点加载。所以要想禁用没个模块的自动加载,你还需要重新mkinitrd一下,因为mkinitrd脚本可以智能的从当前系统加载的所有模块当中弄进initrd文件中。所以在mkinitrd之前,你应该用rmmod把一些你不想要加载的模块卸载掉。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表