|

楼主 |
发表于 2007-11-30 16:08:16
|
显示全部楼层
没人来我就自己来吧
这几天又看了看rhel5的脚本,感觉rc.sysinit不再负责加载网卡驱动,而直接由network daemon启动脚本负责,就是/etc/rc.d/init.d/network,其中用来查找网卡配置文件的脚本和rhel4中rc.sysinit一样,如下:
interfaces=$(ls ifcfg* | \
LANG=C sed -e "$__sed_discard_ignored_files" \
-e '/\(ifcfg-lo\|:\|ifcfg-.*-range\)/d' \
-e '/ifcfg-[A-Za-z0-9\._-]\+$/ { s/^ifcfg-//g;s/[0-9]/ &/}' | \
LANG=C sort -k 1,1 -k 2n | \
LANG=C sed 's/ //')
通常interfaces变量会被赋值为eth0,eth1,接下来在start条件下加载对应的网卡驱动,如下:
if LANG=C egrep -L "^ONBOOT=['\"]?[Nn][Oo]['\"]?" ifcfg-$i > /dev/null ; then
# this loads the module, to preserve ordering
is_available $i
continue
其中is_availabel调用了network-scripts目录下的network-functions脚本中的函数。
这样做个人感觉比rhel4的启动脚本提高了效率,因为rc.sysinit是在各个runlevel前执行的,而rhel5只是在需要network服务的runlevel下才加载驱动。
以上新手愚见,多谢指正 |
|