自己编译redhat 9.0内核心得

简介:
redhat 9.0 kernel 2.4.20-8.tar.gz ­
 
1.先确定是升级内核还是用自己带的内核心,如果是升级你可以到www.kernel.org上下载内核. ­
然后把它#mv kernel-2.4.20-8.tar.gz /usr/src目录下. ­
2.然后如果是用自己带的内核,需要检查kernel, kernel-source,kernel-headers,rpm软件包是否被安装. ­
用#rpm -qa 软件包名确定是否安装,如果没有用自带的cdrom装用rpm -ivh 软件包名 ­
3.然后确定/usr/include/linux是否指向 /usr/src/linux/include/linux一些头文件,前提要把原来的linux符号链接给删除,cd /usr/src,rm linux删除符号链接.然后ln -s kernel-版本号 linux. ­
4.然后以上步骤好了之后然后进入/usr/src/linux目录 ­
5.最好vi Makefile把EXTRAVERSION最后的-8后面加上你喜欢的后缀比方xx这是一个内核心出现不同的变体以区别不同的内核版本. ­
6.然后cd ..回到上级目录就是/usr/src/linux目录,然后最好make mrproper清除以前编译过的文件,一般下载新的不需要但最好清楚一下避免一些麻烦,然后make menuconfig/xconfig config配置内核,我本人比较喜欢菜单形式的配置,就用第一个吧,然后配置好内核后保存,内核的配置网上比较多况且配置选项特多有几千个,有些可以编译到内核里去,有些可以不编译可以以模块modules形式以后加载这也是为了节约内存的使用.模块就是一些设备的驱动程序,有MTD子系统,一些网卡的驱动模块,一些fs文件系统模块,一些网络协议的模块,还有些程序调试模块反正挺多的.有些你根本用不到.但了解一些也是有好处的.配置好之后 ESC然后询问你是否保存就yes ­
其实你只要编译一次最好把隐藏的.config文件保存起来以后恢复有帮助.这个文件要用ls -a才能被看到. ­
7.make bzImage压缩过的映像.如果要arm就看ReadMe或Install文档吧在内核源代码下. ­
8.make modules编译模块,编译时候就慢慢等吧. ­
9.make modules_install安装编译好的内核心一般安装到/lib/modules/目录下 ­
8.最后把编译好的内核cp -rf /usr/src/linux/arch/i386/bzImage /boot/vmlinuz-内核心版本的目录下(这个目录前提要自己创建. ­
9.然后cp -rf /usr/src/linux/System.mp /boot/System.map-内核版本号目录下需先创建目录 ­
接着rm System.map自身的链接,然后ln -s System.map-内核版本号目录下需先创建目录 System.map ­
10.接着mkinitrd /boot/initrd-内核心版本.img  内核版本好具体用发.看帮助在终端#mkinitrd就可以 ­
11.最后配置grub或lilo引导装载程序照着系统/boot/grub/grub.conf上面写,集体内容可以 ­
  title test标题 ­
  root (hd0,x) ­
  kernel /vmlinuz-内核心版本号/bzImage ro root=根分区所在区(/dev/xx)或opition ­
       initrd /initrd-内核心版本号 ­
  总结如果想了解grub或lilo最好多实验,有时候会error15的错误要不找不root根分区,要panic内核恐慌init=opition的错误.其实都是grub.conf配置文件的错误.多用grub的编辑模式修改然后就可以找出问题的所在.然后进系统修改保存即可. ­
  我写的内核编译文档难免会出错希望能提出宝贵的意见.­


本文转自zh888 51CTO博客,原文链接:http://blog.51cto.com/zh888/327838,如需转载请自行联系原作者

相关文章
|
8月前
|
编解码 Java Linux
linux【redhat&ubuntu】下ffmpeg-3.1安装编译及视频转码
这篇是几年前整理的老文章了,当时在调研流视频推送及播放相关技术,并在项目中应用,使用到ffmpeg,所以整理了这篇文章,但并未发布。最近又有相关的技术需求,所以整理出来,作为一个新的开始。
175 0
|
JavaScript 前端开发 开发工具
|
Linux 网络安全 数据安全/隐私保护
|
Linux C++
ice-3.6.3源码编译,RedHat6.5
ice-3.6.3 for Red Hat Enterprise Linux 6.5 64bit install
1862 0
|
Linux
Redhat 7 内核版本查询及修改主机名
-- 查看Linux内核版本命令: cat /proc/version uname -a lsb_release -a 即可列出所有版本信息: cat /etc/redhat-release 这种方法只适合Redhat系的Linux: cat /etc/issue 此命令也适用于所有的Linux发行版 -- redhat 7 主机名 使用NetworkManager的nmtui接口修改了静态主机名后(/etc/hostname文件),不会通知hostnamectl。
1308 0
|
网络协议 Linux Docker
在RedHat/CentOS下安装Docker(不升级内核)
背景 由于内核版本问题,最初仅Ubuntu可以较好的支持Docker。不过,由于RedHat系列OS(REHL、CentOS)是目前主流的Linux服务器操作系统,所以令RedHat系列OS支持Docker很有必要。
1807 0