Linux内核重编译常见故障及其解决方法

2016-01-29 19:16 6 1 收藏

Linux内核重编译常见故障及其解决方法,Linux内核重编译常见故障及其解决方法

【 tulaoshi.com - Linux 】

  内核重编译对很多Linux爱好者来说是一个不小的挑战。笔者认为,很多Linux用户对内核通常有一种误解,他们认为普通用户是不能调整内核的。其实,就实际情况而言,这种认识是不全面的。应该说,内核重编译是具有一定深度和复杂性的,同时也是易失败的配置工作。


如果大家留意那些比较权威的Linux参考工具书的话,就会发现很多原版书籍都把内核重编译作为一个很重要的章节进行介绍。本文将要向读者介绍的并不是如何去一步步的对Linux内核进行重编译,而是收集整理了几个在Linux内核重编译中最常见的故障及其解决方法,如果您在编译内核过程中遇到了类似的故障,那么本文将会对您有所帮助。


Linux内核重编译常见故障介绍


在介绍Linux内核重编译常见故障前,假设我们已经按照参考工具书上的步骤对Linux内核进行了相应的配置。


Linux内核重编译通常包括了许多步骤。如果“幸运”的话,Linux内核重编译是可以一次性编译成功的。如果在编译完成后,启动计算机或者内核的时候系统有错误信息的提示,那么最有可能出现的是以下5个:1.内核不能启动;2.异常I/O错误;3.内核反映缓慢;4.内核不能正确编译;5.系统重复启动。


故障分析及其解决方法


内核不能启动


当我们重新创建Linux内核时,主要是选择用户需要或不需要在系统中使用的设备及服务。从2.0版内核开始,Linux引入了一个全新的设计特征到内核中并提供了折中方案:组件可以动态的、随时的调入和调出内核。例如我们在修改/etc/lilo.conf之后都要重新启动系统,如果你的内核不能启动,并且在屏幕上看到了下面的信息:


Warning: unable to open an initial console Kernel panic: no init found. Try passing init= option to kernel



这个错误最大的可能就是我们没有正确的给/etc/lilo.conf 中的“root=”提供参数。例如,在一个Linux系统中有root=dev/hdc5这样的配置方式,那么这是错误的,正确的应该是root=/dev/hdc5,不要小看只是多了一个 “/”,这是给root提供的重要参数。没有“/”则Linux内核无法确认root到底该从哪里启动。很多朋友往往忽略了这个小细节而造成内核引导失败。下面给出/etc/lilo.conf的一个正确的配置清单,仅供参考。


/etc/lilo.conf示例
―――――――――――
boot=/dev/hdc5
map=/boot/map
prompt
timeout=50
image=/boot/vmlinuz-2.2.2-1
label=Linux
root=/dev/hdc5
inirtd=/boot/initrd-2.2.2-1.img
read-only

other=/dev/hda1
label=dos
table=/dev/hda


异常I/O错误


如果您重新创建了一个Linux内核,并且能正确启动,但在使用新内核过程中,系统经常出现崩溃、死机等异常现象。那么很可能是I/O出现了问题。I/O异常除了使得系统频繁出现莫名其妙的故障之外,更重要的是会使Linux内核降级,导致整个系统系能严重下降。


究其异常I/O错误的原因,是用户在编译Linux内核结束的时候没有执行“make dep clean”这一步骤。一般来说,我们在保存Kernel configuration选项中的“menuconfig”或“xconfig”时并不包含“make dep clean”这个步骤。因此,这里建议用户在保存配置后的Kernel configuration选项时注意确认是否已经进行了“make dep clean”这一步。


内核反映缓慢


目前很多计算机都采用了高速的CPU和大容量内存。可有时候在创建新内核后系统显得比没有配置内核之前的反映速度慢得多。出现这个情况,很可能是用户在修改Kernel configuration options的时候,在“menuconfig”或者“xconfig”选择了过多的选项。这样不仅使得计算机在编译新内核的时候要花费更多的时间,也使得系统在工作的时候占用了太多的内存。由于很多内存都是被无用的选项所占用,这就导致了系统运行的缓慢。解决方法很简单,尽量选择我们需要的选项,那些无用的,太过于复杂的选项就无需去修改了,有时候使用默认的参数效果会显得更好。


内核不能编译


当用户输入“make b

来源:http://www.tulaoshi.com/n/20160129/1508927.html

延伸阅读
标签: 电脑入门
常见故障一:开机无显示 内存条原因出现此类故障一般是因为内存条与主板内存插槽接触不良造成,只要用橡皮擦来回擦试其金手指部位即可解决问题(不要用酒精等清洗),还有就是内存损坏或主板内存槽有问题也会造成此类故障。 由于内存条原因造成开机无显示故障,主机扬声器一般都会长时间蜂鸣(针对Award Bios而言)。 常见故障二:Windows注册表...
标签: ASP
[错误信息] Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Microsoft Access 97 Driver] The Microsoft Jet database engine cannot open the file '(unknown)'. It is already opened exclusively by another user, or you need permission to view its data. [原因] 这个错误发生在IIS使用匿名帐号(通常是...
标签: 电脑入门
网卡故障常见的安装故障 无法给无盘站安装网卡 现象:我公司在采用联想逐日1000电脑作无盘站时,无法安装en1688网卡。经过检查,该批电脑使用ga-6la7或qdi legend7主板。 方法:修改网卡的bootrom默认起始地址和其他资源占用。 步骤:建议把网卡的bootrom默认起始地址设置成d800h,中断为3,i/o为300h,另外,不要禁止bios setup中的软...
CUP是电脑中最为重要的设备之一。以下是编辑为各用户整理的关于CPU常见的故障,希望通过这些故障的整理能帮助用户们更了解CPU。 1、刷新BIOS可以解决CPU不工作问题; 2、更换电源、换转接卡又是可以解决问题; 3、有可能是BIOS座接触不好,尤其是PLCC的BIOS座; 4、BIOS供电故障也会导致CPU不工作; 5、BIOS的CS、OE; 6、BIOS的地址、数据线;...
标签: windows 操作系统
问:以前我曾经为了玩游戏安装过虚拟光驱软件,后来删除掉它以后,发现它虚拟出来的光驱却没有跟着消失,请问现在如何删除它? 答:估计你删除虚拟光驱软件时并不是按照正确方法删除的,造成了现在这种现象。在控制面板中打开“系统→设备→硬件管理器”,看一下“DVD/CD-ROM驱动器”项下是否有虚拟的那个光驱,将其删除。如果问题依...

经验教程

859

收藏

56
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部