7.11. 删除程序,编辑与模块相关的文件

默认情况下,当您像我们一样首次安装 Red Hat Linux 时,内核构建为模块化内核。这意味着我们需要的每个设备或功能都以模块的形式存在,并由名为 kmod 的内核守护程序控制。kmod 会在需要时自动将一些模块和功能支持加载到内存中,并在不再使用时卸载它们。

  1. kmod 和 modutils RPM 包中包含的其他模块管理程序使用conf.modules文件,位于/etc目录中,以了解例如您拥有哪种以太网卡,以及您的以太网卡是否需要特殊配置等等。由于我们在新的编译内核中不使用任何模块,我们可以删除conf.modules文件并完全卸载 modutils 包程序。要删除conf.modules文件,请使用命令
               [root@deep] /#rm -f  /etc/conf.modules
               
    要卸载 modutils 包,请使用以下命令
               [root@deep] /#rpm -e --nodeps modutils
               

  2. 最后一件事是编辑文件rc.sysinit并注释掉所有与 depmod -a 相关的行,方法是插入一个#在行的开头。这是必需的,因为在启动时系统会读取rc.sysinit脚本以查找内核中的模块依赖项(默认情况下)。

    Version 6.2 only

    注释掉第 260 行,在rc.sysinit文件 vi +260/etc/rc.d/rc.sysinit: if [ -x /sbin/depmod -a -n "$USEMODULES" ]; then, 要读取
               #if [ -x /sbin/depmod -a -n "$USEMODULES" ]; then
               
    注释掉第 272 到 277 行,在rc.sysinit文件 vi +272/etc/rc.d/rc.sysinit:
               if [ -L /lib/modules/default ]; then
               INITLOG_ARGS= action "Finding module dependencies" depmod -a default
               else
               INITLOG_ARGS= action "Finding module dependencies" depmod -a
               fi
               fi
               
               To read:
               #    if [ -L /lib/modules/default ]; then
               #        INITLOG_ARGS= action "Finding module dependencies" depmod -a default
               #    else
               #        INITLOG_ARGS= action "Finding module dependencies" depmod -a
               #    fi
               #fi
               

    Important: 上述步骤与 Red Hat Linux 6.1 版本下的 initscripts-4_70-1 包相关。

    Version 6.2 only

    注释掉第 243 行,在rc.sysinit文件 vi +243/etc/rc.d/rc.sysinit: if [ -x /sbin/depmod -a -n "$USEMODULES" ]; then, 要读取
               #if [ -x /sbin/depmod -a -n "$USEMODULES" ]; then
               
    注释掉第 255 到 260 行,在rc.sysinit文件 vi +255/etc/rc.d/rc.sysinit:
               if [ -L /lib/modules/default ]; then
               INITLOG_ARGS= action "Finding module dependencies" depmod -a default
               else
               INITLOG_ARGS= action "Finding module dependencies" depmod -a
               fi
               fi
               
    要读取
               
               #    if [ -L /lib/modules/default ]; then
               #        INITLOG_ARGS= action "Finding module dependencies" depmod -a default
               #    else
               #        INITLOG_ARGS= action "Finding module dependencies" depmod -a
               #    fi
               #fi
               
    再次强调,只有当您对以下项选择“否”时,才需要执行所有关于删除程序、文件和与模块相关的行的操作:启用可加载的模块支持CONFIG_MODULES在上面的内核配置中。

  3. 现在您必须重启系统并测试结果。
               [root@deep] /#reboot
               
    当系统重启并且您登录后,请使用以下命令验证新内核的版本:要验证新内核的版本,请使用以下命令
               [root@deep] /#uname -a
               


                 Linux deep.openna.com 2.2.14 #1 Mon Jan 10 10:40:35 EDT 2000 i686 unknown [root@deep]#
               

恭喜!