ImageVerifierCode 换一换
格式:DOC , 页数:10 ,大小:700.15KB ,
资源ID:30673      下载积分:5 金币
已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(redhat5.8升级内核版本.doc)为本站会员(夺命阿水)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(发送邮件至doc331@126.com或直接QQ联系客服),我们立即给予删除!

redhat5.8升级内核版本.doc

1、一、升级背景前段时间公司有个项目用到了短信收发的业务,采购了两台16口的Wavecom USB短信猫设备,服务器操作系统是ReadHat5.4,内核2.6.18,插上设备后,操作系统无法自动识别该设备,原因是没有预装该设备USB转串口的驱动程序,可能是只有这个产品不能识别,因为曾经我用过单口的GSM MODEM短信猫测试,可以自动识别出来。后来从供应商处得到信息,说是他们这个产品比较新,版本低的内核没有预装新的USB转串口驱动程序,但现在2.6.32以上内核都自带了USB转串口的驱动,所以最后通过升级系统内核的方式解决了这个问题。二、升级测试环境宿主机:Window xp虚拟机:VM8.0.2

2、OS:CentOS 5.8 Final内核(升级前):2.6.18所有操作步聚使用root权限三、升级步聚1、下载内核到www.kernel.org下载一个新版本内核源码,当前最新稳定版为3.3.4。这里下载的是:http:/www.kernel.org/pub/linux/kernel/v2.6/longterm/v2.6.35/linux-2.6.35.13.tar.bz22、解压内核文件将linux-2.6.35.13.tar.bz2上传到/usr/local/src目录下,使用tar -jxvflinux-2.6.35.13.tar.bz2命令解压,得到linux-2.6.35.13目

3、录3、清除文件cd linux-2.6.35.13(下面所有操作都是在此目录,除非切换了新的目录)make distclean清除以前编译内核生成的所有文件(除了清除可执行文件和目标文件外,configure所产生的Makefile也会清除掉)如果是第一次编译,这步聚可以省略4、复制配置文件将系统默认的内核配置文件复制到linux-2.6.35.13目录下,并命名.configcp/boot/config-2.6.18-308.el5 .config5、内核配置(make menuconfig)内核配置,有三种方式:a)、make config:基于文本的最为传统的配置界面,不推荐使用b)、m

4、ake menuconfig:基于文本选单的配置界面,字符终端下推荐使用。注意:使用make menuconfig 需要安装ncurses(yum -y install ncurses-devel) ,如果未安装会报如下错误:解决方式:在联网的情况下,在终端输入yum -y installncurses-devel,自动安装ncurses-devel包,如下图所示:c)、make xconfig:基于图形窗口模式的配置界面,Xwindow下推荐使用注意:如果要用makexconfig,则要先安装QT3开发包,并配置。如果未安装会报如下错误:解决方案:安装QT3开发包,再执行make xconf

5、ig。1)、以make menuconfig为例配置内核编译环境,在终端输入make menuconfig,进入如下图所示界面:2)、在上图,用上下键移动到菜单倒数第二项(Load an Alternate Configuration File),再用左右键移动到(Select),按回车进入下图界面:3)、在上图,移动光标至(OK),按回车键,保存配置文件。回到下图所示界面:4)、在上图中,用上下键移动到菜单最后一项(Save an Alternate Configuration File),用左右键移动到(Select),按回车键,保存配置文件。5)、选中(Exit),按回车键,退出配置。6

6、修改.config配置文件在.config文件搜索CONFIG_SYSFS_DEPRECATED_V2,会发现# CONFIG_SYSFS_DEPRECATED_V2 is not set这一行,将该行修改为CONFIG_SYSFS_DEPRECATED_V2=y。假如不修改该行,在升级重新启动后会报如下的错,导致启动失败:plainview plaincopy1. VolumegroupVolGroup00notfound2. Unalbetoaccessresumedevice(/dev/VolGroup00/LogVol00)3. mount:couldnotfindfilesyste

7、m/dev/root4. setuproot:moving/devfailed:Nosuchfileordirectory5. setuproot:errormounting/proc:Nosuchfileordirectory6. setuproot:errormounting/sys:Nosuchfileordirectory7. switchroot:mountfailed:Nosuchfileordirectory8. Kernelpanic-notsyncing:Attemptedtokillinit!7、编译内核make all大概需要30至60分钟左右,具体时间看机子的性能8、编

8、译模块make modules_install9、安装make install10、修改initrd文件假如升级重启后会报“insmod: error inserting /lib/dm-region-hash.ko: 1 File exits”错误,这是由于initrd里面重复加载dm-region-hash.ko这个模块了,因此需要修改生成的initrd文件(不是所有的机器都会出现这个错),修改的方式如下:a)、解压initrd文件#cp /boot/initrd-2.6.35.13.img /tmp#cd /tmp#lsinitrd-2.6.35.13.img#mkdir newinit

9、rd#cd newinitrd#zcat ./initrd-2.6.35.13.img | cpio -i#lsb)、编辑init文件,删除重复中的其中两行c)、重新打包内核文件#find . | cpio -c -o ./initrd#cd .#gzip -9 initrd-2.6.35.13.imgd)、将内核文件(initrd-2.6.35.13.img)重新复制到/boot目录下#cpinitrd-2.6.35.13.img /boot11、修改grub.conf,让引导程序默认从新的内核启动vi /boot/grub/grub.confgrub.conf文件如下图所示:将上图中将的d

10、efault=1改成default=012、重启系统#uname -r2.6.35.13注意:在对华为RH2288H V2工作站进行升级时发现如下问题需要注意。原先版本为redhat 5.8,内核版本为2.6.18-308.el5注意由于该工作站使用独立显卡输出,在编译完内核后重启会出现启动udev后黑屏,是由于新的内核没有安装显卡驱动,需要开机的时候选择编辑启动项,使用e进入编辑模式,然后输入e编辑,将rhgb改成single单用户模式,启动单用户模式后输入init 3进入系统,然后在终端模式下使用./NVIDIA-Linux-x86_64-331.38.run ui=none安装显卡驱动,

11、然后重启即可。如果在新版本的内核下安装了显卡驱动,则回到老版本还是会黑屏,需要安装上面的方式重启安装显卡驱动。华为RH2288H V2在升级内核后会出现网卡无法识别的问题,需要使用华为提供的驱动包更新,从华为官网下载的驱动中找到onboard_driver_rhel5.8,然后把里面的文件拷贝到/root/driver目录,使用sh install_driver.sh选择3来检查驱动,选择1来更新驱动,安装后网卡识别正常。目前升级内核后有的问题:1、 开机会出现pci 0000:02:00.0 BAR 6:no parent found for of device oxfff00000-oxffffffffpci 0000:04:00.0 BAR 6:no parent found for of device oxfff00000-oxffffffffpci 0000:09:00.0 BAR 6:no parent found for of device oxfff00000-oxffffffff2、 开机会提示Cannot access the Hardware Clock via any known method的信息,是由于hwclock会去读取系统硬件时间,而升级内核后读取的设备文件是老的,可以升级新版本的hwclock解决。

宁ICP备18001539号-1