轻松掌握RHEL 4内核编译

系统 Linux
内核对于对于一个操作系统来讲是很重要的,RHEL 4内核从准备,编译,安装都是一个很复杂的过程,本文从这三个方面介绍了RHEL 4内核编译的过程,希望可以帮助到大家。

在RHEL 4操作系统中各个部分几乎都是很尖端的,当然在内核上也不列外。内核是操作系统最基本的部分。所以RHEL 4内核各个方面都是经过很多考验的。下面就来给大家详细的介绍一下RHEL 4内核。

一、RHEL 4内核准备  
首先下载内核的压缩包,注意需要完整的压缩包,而不是文件名里有patch的那种,那种是用来升级的。用升级包来升级的话出错就进不了系统,无法调整所以风险较大,这里不予讨论。将压缩包解压后得到类似linux-2.6.14的文件夹,将这一文件夹移动到 /usr/src/ 下。此时确保你已经正确安装gcc,编译工作马上就可以开始了。

二、RHEL 4内核编译  
[paul@ParhWorkStation ~]$ su      
Password:获得root的权限。
[root@ParhWorkStation paul]#cd /usr/src/linux-2.6.14,进入内核目录。
[root@ParhWorkStation linux-2.6.14]#make mrproper,清除从前编译遗迹,注意这一步必不可少,少了这一步会导致编译出错。                    
[root@ParhWorkStation linux-2.6.14]#make gconfig,打开图形化的配置菜单,Gnome的用户执行make gconfig(基于Gtk),KDE的用户执行make xconfig(基于Qt)。

当然还可以选择make menuconfig或make config,如果你想体验一下linux前辈们的辛苦的话。
在配置的过程中,有几点要提一下。配置的选项大部分是对硬件的支持,你一定对自己电脑的硬件很熟悉,那么那些多余的乱七八糟的驱动就可以去掉了。每一次对选项的双击会使选项遵循由Y-->M-->N的循环,Y是编译进内核,M是编译成模块,N是不进行编译。Y的话是钩,M 的话是杠,N的话就是空的啦。编译进内核的话就是只要系统在跑,编译的功能就在运行,而编译成模块则是用的着的时候才加载到内核中运行,用不着的时候可以从内核中卸载以释放内存,这显然是Linux内核的一个巨大优点。因此一般的硬件驱动都可以编译成模块,只有几个例外,其中就有硬盘控制器的驱动。

为什么硬盘控制器不能编译成模块  当你最初引导内核的时候,引导的其实是一个驻留在/boot下的内核的压缩镜像,由这个镜像挂载硬盘分区和文件系统,进而读取分区上的数据,同时加载模块。如果没有将硬盘控制器驱动编译进内核,内核就无法读取分区,更不可能加载模块了!怎么?还没理解?想想先有鸡还是先有蛋吧!
因此,要特别注意选项里对SCSI或是IDE硬盘的支持,根据自己的情况将选项选为Y,同时建议将主分区(即挂载在/上的分区)分区格式的支持也编译进内核。例如ext3。
在新的内核中ntfs分区格式的支持已经包括,很好用。

另外要提的一点是'development', 'experimental', 'debugging'这几个在'kernel hacking'下的选项,除非你真的需要,(不过反过来,如果你需要的话就不会来看本文这么初级的文章了)不要选它们。它们会使你的内核更大,也更慢。

配置好之后可以选择 'Save as...'l来以文本的形式备份所作的配置,这样如果需要再次编译,就不用重新一项项选了。最后保存,关掉窗口。
◆[root@ParhWorkStation linux-2.6.14]#make,开始编译,这时可以吃点零食犒劳一下,或者去床上数几只绵羊。这个过程会持续一会儿,长度与你电脑的内存成反比。
◆[root@ParhWorkStation linux-2.6.14]#make modules_install,编译好后执行这个命令安装模块,这个过程快多了。好了,编译就到这里。

三、RHEL 4内核安装
◆[root@ParhWorkStation linux-2.6.14]#cp /usr/src/linux-2.6.14/arch/i386/boot/bzImage /boot/vmlinuz-2.6.14
◆[root@ParhWorkStation linux-2.6.14]#cp System.map /boot/System.map-2.6.14
  这是将编译过程中产生的镜像复制到/boot分区下,使Grub(假定你安装时选择默认的引导器)能够引导。
◆[root@ParhWorkStation linux-2.6.14]#/sbin/new-kernel-pkg --mkinitrd --depmod --install 2.6.14,redhat提供这么一个工具用来生成引导时的initrd文件,里  面包含了启动系统的初始信息。同时,--install参数更新了/boot /grub/grub.conf 中的信息,添加了新内核的引导项。如果你不满意默认的引导标题等等,可以自己  vim /boot/grub/grub.conf,那个配置文件可读性很强的,不会有问题。
如果有激活SELinux,那么请vim /etc/selinux/config,将SELinux disable掉,因为新内核可能无法加载SELinux。

四、重新启动

上述就是笔者对于RHEL 4内核的详细介绍和解析,RHEL 4内核可是说是非常简单和方便的,希望通过笔者的介绍可以帮助到大家对RHEL 4内核的了解和认识。

【编辑推荐】

  1. 设置ORACLE11g随RHELRHEL 5下Samba服务器的搭建
  2. RHELRHEL搭建FTP服务器步骤和问题解析(1)
  3. RHELRHEL 5搭建FTP的完美组合
  4. 问题解析:这样使用RHELRHEL 4上配置Postfix的完美4步
  5. RHEL架设RHEL4系统Sendmail的七大步骤
责任编辑:赵杰 来源: 博文
相关推荐

2009-10-12 17:14:50

RHEL内核编译

2009-10-12 13:41:00

RHEL 内核

2010-01-06 17:51:26

Linux关机命令

2014-10-30 16:41:14

编程技术算法

2014-10-30 16:34:28

编程技术算法

2009-01-18 15:14:00

数据仓库开发OLTP

2009-12-16 14:26:19

Linux VMwar

2010-01-04 17:35:32

Silverlight

2009-11-12 10:32:47

ADO.NET技术

2014-10-30 16:12:55

编程技术算法

2012-07-17 10:54:49

AJAX

2023-09-13 08:00:00

MLOps数据科学

2009-12-07 09:57:06

Fedora/内核编译

2009-10-12 13:03:45

RHEL Squid

2009-12-10 11:02:44

PHP函数eval()

2009-11-09 15:28:04

WCF知识结构

2009-11-17 17:38:37

PHP Session

2024-02-27 08:22:56

2009-12-14 11:15:34

Linux chgrp

2009-10-10 15:54:55

RHEL 4配置Pos
点赞
收藏

51CTO技术栈公众号