Arming 发表于 2002-12-3 19:54:50

哪个Kernel版本起取消了/etc/rc.d/rc.modules?

记得在2.2.10内核配置网卡时,必须手工编辑/etc/rc.d/rc.modules,增加诸如“modprobe rtl8139”之类的模块加载语句,才能正常使用网卡。曾几何时,这个可爱的rc.modules从Linux中消失了。请教各位,从内核的哪一个版本开始,这个/etc/rc.d/rc.modules消失了?又是哪些文件接管了启动时加载网卡驱动模块的任务呢?

llc 发表于 2002-12-5 11:53:44

不知道是从哪个版本开始取消的
现在的新版本,和/etc/rc.d/rc.modules类似功能的文件是,/etc/modules.conf
里面定义了各种模块的别名和必要的参数,但好像自己在里面加入的模块定义是无法自动加载

其实在很多版本的启动脚本里,还保留对/etc/rc.d/rc.module的处理,你可以试试建立这个文件,往里面添加你自己想要随启动加载的模块,应该没问题的

Arming 发表于 2002-12-7 21:42:32

/etc/modules.conf是用来定义驱动模块别名的,我现在对驱动模块的加入次序有点糊涂了,比如说网卡,到底是在哪一个脚本加载驱动模块的呢?

llc 发表于 2002-12-7 22:00:24

一般只要在/etc/modules.conf里定义了
alias eth0 网卡模块

然后存在/etc/sysconfig/network-scripts/ifcfg-eth0和ifcfg-lo配置文件就可以加载网卡模块了

Arming 发表于 2002-12-9 10:15:22

一般只要在/etc/modules.conf里定义了
alias eth0 网卡模块

然后存在/etc/sysconfig/network-scripts/ifcfg-eth0和ifcfg-lo配置文件就可以加载网卡模块了

2.4.x 内核的确是这样的,/etc/modules.conf中定义了eth0是网卡驱动模块如8139.so的别名,在ifup eth0时就能激活网卡了;但是在2.2.x内核时,需要在/etc/rc.d/rc.modules文件中加载驱动才行,如modprobe rtl8139。那么在2.4.x内核中,到底是哪一步加载的网卡驱动呢?是/etc/inittab?/etc/rc.d/rc.sysinit?还是/etc/rc.d/rc.local?

llc 发表于 2002-12-9 22:13:15

网卡模块是在相应级别对应下的/etc/rc.d/rc?.d/下xxxnetwork脚本加载的,里面根据/etc/sysconfig/network-scripts下脚本设置执行ifup指令,这时只要你在modules.conf里定义了相应的网卡模块别名就可以加载了

Arming 发表于 2002-12-10 20:36:57

网卡模块是在相应级别对应下的/etc/rc.d/rc?.d/下xxxnetwork脚本加载的,里面根据/etc/sysconfig/network-scripts下脚本设置执行ifup指令,这时只要你在modules.conf里定义了相应的网卡模块别名就可以加载了

喔……我明白了,2.4.x内核简化了网卡驱动模块的加载,只要network脚本运行时就自动去搜索/etc/modules.conf,目前几乎所有的使用SysV启动脚本的Linux发行版都是这样的,除了Slackware(使用BSD启动脚本)。
页: [1]
查看完整版本: 哪个Kernel版本起取消了/etc/rc.d/rc.modules?