网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > linux > 系统管理 > 内核技术 > VMware环境下Linux内核编译过程详细解析  

VMware环境下Linux内核编译过程详细解析

2007-07-25  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

  终于可以在vmware中使用新编译的内核调试驱动了,虽然也比较经常在vmware里使用linux,但是还从没有在里面编译过内核,所以不知道居然还有这么多的道道。编译内核的过程就不说了,除了通用的编译过程,各个发行版可能还会有自己特有的编译命令,比如我使用的debian。下面只列出我在编译过程中尝试过的步骤。 网管论坛bbs_bitsCN_com

  1、从kernel.org上下了2.6.18的sourcecode,编译安装后使用新的内核启动,看到下面让人讨厌的错误: 网管u家u.bitsCN.com

  VFS:Cannot open root device "sda" or unknow-block(0,0) 网管u家u.bitsCN.com

  Please append a correct "root=" boot option 网管u家bitscn.net

  kernel panic:VFS:Unable to mount root fs on unknown-block(0,0) 网管u家bitscn.net

  这样的错误到也不是第一次亲密接触了,比如很久以前使用dd将系统copy到另一块硬盘上,并使用新的硬盘启动时也遇到过这样的错误,那是因为没有将硬盘接到与原来硬盘对应的IDE接口上,不过这绝对不是让它追随我在这里出现的原因,当然久经风浪脸皮已经跟brass一样厚的我是觉得不会在这里倒下的,于是没有多想(惭愧),随即使用大家都最常使用的重启大法,寄望于它刚才是一时的疏忽。但是在几十秒之后,它又赧然出现在我的眼前,无它,只好google了。

网管bitscn_com

  2、从google的结果来看,同道(一同着道)中人还真不少,五花八门的过程揭露了大致无二的解决方法。主要是内核的配置选项了,并且主要集中在

中国网管联盟bitsCN.com

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

网管有家bitscn.net

  主要是因为使用scsi时,vmware需要它,还有文件系统,我用的是ext3,因为看到有人说没有将它们直接编译进内核导致启动仍然不成功,给自己个懒的理由,也就不多尝试了,直接将它们built-in了,然后执行

网管网www_bitscn_com

  make-kpkg –revision=1.0 kernel-image 网管网www.bitscn.com

  编译,且使用dpkg安装后重启,让人沮丧的是,前面那几行可爱的错误又出现了。

网管有家bitscn.net

  3、再回头检查内核的配置选项,觉得相关的都已经选上了,按理说不应该会再找不到root文件系统了啊,要不试试initrd?虽说已经将上面的几个模块编进了内核,是不是还需要创建initrd那?权且试试吧,于是重新编译内核

网管论坛bbs_bitsCN_com

  make-kpkg –revision=1.0 kernel-image –initrd 中国网管论坛bbs.bitsCN.com

  再安装重启,居然甩开了那个粘人的panic,不过仍然还有点云里雾里的,呵呵,linux上的这些事儿好像多是这样子,抽空深入研究下initrd去。

网管论坛bbs_bitsCN_com

TAGs   过程   详细   解析   编译   环境   使用   内核   没有   错误   root      
 上一篇:Linux 2.6内核的编译步骤及模块动态加载   下一篇:Debian Linux系统下的内核编译详细讲解
VMware环境下Linux内核编译过程详细解析 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: