定制安装光盘在RAID卡上安装Linux


目前方案:

方案一:直接在启动安装程序时加载官方提 供驱动,已失败。
linux dd,指定驱动的位置和名称失败;指 定驱动盘失败。
linux text,切换到2号控制台,挂载U盘, 复制驱动目录到/tmp/hptdd下,执行step1, 失败。
 
结论:官方驱动程序不适应相应的内核版本。最不解的是5U5版本的驱动居然在CENT5.5的系统中都不能支持,就别说Elastix了。
===================================== ========================
 
方案二:编译内核并替换掉原有光盘中的内核文件。然后生成新的initrd.img文件。
1、内核源码的选择问题
 
标准版本的内核源码编译后用在光盘安装应 该是没问题。但是为了能使用这份源码编译 生成rr272x_1x.ko文件,我还是选择了使用与光盘中内核版本相同的源码,下载地址如下:
http://vault.centos.org/5.6/centosplus/SRPMS/kernel-2.6.18-238.12.1.el5.centos.plus.src.rpm
 
2、下载,并解压驱动源码
 
注意由于源码是.src.rpm文件,所以步骤如下:
#rpm -ivh kernel-2.6.18-238.12.1.el5.CentOS.plus.src.rpm "安装源码RPM
#rpmbuild -bp /usr/src/RedHat/SPECS/kernel-2.6.spec "生成源码文件
 
3、先编译出.ko(驱动模块文件)备用
 
在以下位置下载相应驱动源文件http://www.highpoint-tech.cn/China_new/product_support_sas6c.htm
# yum install ncurses-devel   "(此步要求您的Linux工作站目前已联网)准备编译环境,如果没有gcc、ncurse类推处理。
# tar xzvf rr272<tab>       "解压驱动源码包,注意是名为rr…….src.……这样的驱动包。
# cd rr272x-linux-src-v1.1<tab>/product/rr272x/linux/ "进入驱动安装目录
# make patchkernel KERNELDIR=<内核源文件目录> KERNEL_VER=2.6 "把驱动补丁嵌入内核,本例源文件目录为/usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18.x86_64
#cd 内核源码路径
#make SUBDIRS=驱动源码目录 "编译出驱动模块文件rr272x_1x.ko,此文件非常重要。
 
4、编译内核,把rr272x_1x的驱动直接写入内核文件,而不是以模块方式存在(保险起见)
 
#cd /usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18.x86_64 "进入 源码目录
#cp /boot/config* .config "为避免编译失败,复制系统原有的内核配置文件。
#make menuconfig "开始编译
我选择了以下项目:
--kernel hack里所有项目都拿掉不要(重要!)
--device driver下scsi device、scsi disk和low level项目下的"HighPoint RocketRAID 272x support" 全部加载到内核中
--low level下的"bus logic"加载到内核中(只有虚拟机vmware需要此驱动)
--iptables防火墙的一些相关选项,这个必须根据个人经验,与本案例无关
--其它项目如NTFS支持、不完整源码、源码校验等常用项目在本案例中不是很紧要,新手建议尽量少的修改选项。如果需要支持或移除某些功能可以自行实验(需要反复编译验证选项是否正确,有些项目选择会导致编译失败,此乃天命,君勿自扰)
 
如果编译失败或出现错误,就重新make menuconfig,建议不要按错误提示去修改include文件(会导致编译模块失败)。
#make modules "编译内核所需的模块文件
#make modules_install "把模块放到应该去的地方
#make install "安装新内核到系统中(本案例中,此步无意义)

  • 1
  • 2
  • 下一页

相关内容