很久就开始尝试编译Linux内核,但是总是遇到不少的问题,经过几十次的编译,直到现在才解决,人都要崩溃了。所以干脆把这个过程写出来,希望在你遇到同样问题的时候少走点弯路。我用的是Red Hat Linux 9. 内核版本是2.6.14.4

先到kernel.org去下载新的内核,然后解开到/usr/src/linux目录下,注意一定要在Linux下解开,如果是在Windows下的话会遇到问题(我就上了这样的当,郁闷了很久才找到原因)。

cd /usr/src/linux

make mrproper  #清除目录下所有和先前生成内核时候产生的中间文件

make menconfig  #内核配置

Device Drivers  —>SCSI device support  —>   SCSI disk support

Device Drivers  —>SCSI device support  —>SCSI low-level drivers  —> BusLogic SCSI support

Device Drivers  —> Fusion MPT device support  —> Fusion MPT (base + ScsiHost) drivers和   Fusion MPT misc device (ioctl) driver(这个不确定)

Device Drivers  —> USB support  —>   USB Mass Storage support

Device Drivers  —> Networking support  —>Ethernet (10 or 100Mbit)  —>    AMD PCnet32 PCI support

2.6中 make dep 可以不用了             #依赖性和完整性检测

make bzImage           #产生压缩内核

cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmkernel

make modules        #编译可加载模块

make modules_install     #安装模块

以上过程可能比较消耗时间,我每次编译都用了超过1小时的时间。.

如果BusLogic SCSI suppor选择的是M,就还要运行

mkinitrd  /boot/newkernel.img 2.6.14.4  #制作img文件和预加载模块

BusLogic SCSI support我选择的是*,所以就不用运行mkinitid命令了.

修改配置文件

我用的是grub,在/etc/grub.conf后添加以下语句

title New Kernel (2.6.14.4)

root (hd0,0)

kernel /newkernel ro root=/dev/sda2

#initrd /newkernel.img

BusLogic SCSI support 如果你选的M,你还得把#initrd /newkernel.img前的#去掉.

然后重新启动。

我也用lilo试过

在/etc/lilo.conf后添加以下语句

image=/boot/newkernel

label=New

#initrd=/boot/newkernel.img

read-only

append=”root=/dev/sda2″

同样BusLogic SCSI support 如果你选的M,你还得把#initrd=/boot/newkernel.img前的#去掉.

运行lilo命令,然后重新启动。

问题

1.No rule to make target `net/ipv4/netfilter/ipt_TOS.c, needed by `net/ipv4/netfilter/ipt_TOS.o.  Stop.

上面提到了,如果你是在Windows下解开Linux内核的话就会遇到这个问题,因为Windows不区分文件大小写,ipt_TOS.c和ipt_tos.c在Windows中是一回事,就被替换掉了,改在Linux下解开它就没有问题了。

2. 不能挂接根文件系统

修改配置文件把根文件系统改成具体的设备文件,不要使用LABEL标签

linux 4.14.2编译,vmware中linux内核2.6.14.4编译全过程_linux教程相关推荐

  1. linux系统中怎么设置网络,vmware中linux怎么设置网络

    vmware中linux怎么设置网络 本站整理   发布时间:2009-03-10 12:18:33   作者:jb51.net   我要评论 如果你的XXX卡没被内核支持,又怕自己编译的内核会造成系 ...

  2. VMware中linux硬盘空间不足的解决方法

    VMware中linux硬盘空间不足的解决方法 参考文章: (1)VMware中linux硬盘空间不足的解决方法 (2)https://www.cnblogs.com/hbmlml/p/5511369 ...

  3. VMware中linux虚拟机无法全屏显示的解决方法(1080P分辨率调节)

    VMware中linux虚拟机无法全屏显示的解决方法(1080P分辨率调节) 参考文章: (1)VMware中linux虚拟机无法全屏显示的解决方法(1080P分辨率调节) (2)https://ww ...

  4. 虚拟机VMware中Linux联网

    虚拟机VMware中Linux联网 一般我们用VMware虚拟机刚刚安装Linux的时候,进入虚拟机发现右上角的小电脑是打叉叉的: 这说明我们的网络链接是不通的.(可以ping一下百度网址什么的,pi ...

  5. (二)vmware中Linux共享文件夹设置

    1.首先点击vmware客户端菜单的"虚拟机"->"安装vmware tools" 2.下载完毕后,进入虚拟机安装vmware-tools 3.将Vmwa ...

  6. vmware中linux使用gparted调整磁盘大小并设置swap分区

    vmware中linux使用gparted调整磁盘大小并设置swap分区 今天使用虚拟机的时候,发现虚拟机快满了,提示磁盘空间小,不得不扩充虚拟机空间. 1首先把vmware中的ubuntu关机,然后 ...

  7. 最简单的VMware中Linux联网的一种方法

    最简单的VMware中Linux联网的一种方法 此次连接,为Linux设置了静态IP,使用VMware的NAT模式上网. 这是博主的第一篇文章,博主小白一枚,刚刚学习Linux,文章作自己学习笔记之用 ...

  8. vmware中linux无法动态获取dhcp解决方法

    最近遇到了vmware虚拟机中 linux  dhcp无法获取的问题 困扰了好久 终于得到大神的帮助 解决了 所以马上来分享~ 首先确定自己ethX的配置没问题,我是eth0 dhcp获取,配置如下: ...

  9. VMware中linux访问共享文件夹设置流程

    最近在学习嵌入式系统,师兄让从linux系统开始抓起,于是乎我就开始了"闹心"的linux之旅.由于要学习制作嵌入式系统的根文件系统,需要在linux系统中访问window目录下的 ...

最新文章

  1. 取消Windows server 2008关机提示备注的方法
  2. 日报 18/07/22 您的设计模式!终于有时间开写~ ~
  3. n皇后问题(回溯法-递归法和循环法,最小冲突法(较快解决10000级别问题))
  4. python字符串创建_在Python上创建完整的字符串
  5. WordPress Option API(数据库储存 API)
  6. SPFA差分约束(bzoj 2330: [SCOI2011]糖果)
  7. 锁 公平 非公平_推荐引擎也需要公平!
  8. svn将本地项目传到svn
  9. 【Excel】按百分比随机抽取excel中数据
  10. Windows命令--wmic
  11. 折线图-面积图-K线图
  12. 综合能源管理电力市场改革的主要问题及分析_能谱网
  13. ThreadPoolExecutor中的submit()方法详细讲解
  14. JS实现tic tac toe
  15. 人生,有时需要不知足!
  16. zabbix5.0-06-报警媒介
  17. Gibberish 本地化插件学习
  18. 表格的属性、表格的合并及表单
  19. c语言 电话簿 链表,C语言_链表_结构体_电话簿简单实现
  20. 魅族手机CUP浮点运算测试BUG

热门文章

  1. 使用Spring开发Java RESTful Web服务的7个理由
  2. hbase regions_使用Regions ADF 11g进行Master Detail CRUD操作
  3. jOOQ星期二:拉斐尔·温特豪德(Rafael Winterhalter)正在与字节好友搏斗字节码
  4. Java的几何布朗运动
  5. Openshift:使用Java 8在Wildfly 8.2.0上构建Spring Boot应用程序
  6. 使用JUnitParams进行参数化的JUnit测试
  7. 使用Java的RESTful Web服务
  8. 某些小时后MySql连接自动掉线
  9. JavaOne 2012:调查JVM水晶球
  10. 适当的Java堆大小的5个技巧