关于 U 盘加载 raid 驱动及 CENTSO 的知识点这里主要针对 dell 的服务器安装 2003用系统盘安装时,需要插入 RAID 驱动软盘,但是大部分服务器不配软驱就算配,谁还会为了装个系统跑去买个软盘,不合算安装方法主要有: 方法〇:使用 DOSA 来识别做了 RAID 的硬盘(仅适合初次安装和新的 dell 服务器,旧的没dosa,而且这种方法会丢失硬盘所有数据,一般开机 F10 进入) 方法一:用 USBKeyPrepF6 代替软驱 方法二:用 Nlite 把 RAID 驱动集成到系统安装盘 方法三:在集成 raid 驱动的 Win PE 环境下安装操作系统 这里主要推荐第一种方法,用 dell 的 USBKeyPrepF6 制作个带 raid 驱动的启动 U 盘代替软盘,这种方法比较灵活制作后的 U 盘任然可以恢复,其他的品牌的机器应该也可以用方法如下: 1、下载附件的 USBKeyPrepF6,解压到任意目录,U 盘除外 2、备份 U 盘数据 3、删除 Files 里所有文件 复制 Files_backup 下的所有文件到 Files 里复制 raid 阵列卡驱动的文件到 Files 里 4、确认无程序访问 U 盘,双击 USBKeyPrepF6.exe,选择你的 U 盘后点击 Prepare。
5、双击 U 盘盘符,提示如下则成功 6、确认 BIOS 中, Integrated device 里面软驱设置为 OFF选择光盘启动优先 7、插入 U 盘和光盘后开机 8、按 F6 表示要加载 raid 驱动,之后会的提示按 S 加载驱动按 SEnterS(看到提示”S=Use the driver on floppy” 后按”S”确认加载) 9、分区安装完成CentOS 5.5操作系统自身没有集成 Logic MegaRAID SAS 1078 驱动,所以在标配有此类 raid 卡的服务器需要安装 CentOS 5.5 时,需要我们用软驱或者 U 盘的方式来加载 raid 驱动,进而完成系统的安装针对此种情况,本人突发奇想,想自定制一套满足此类 raid 卡的 CentOS 5.5 系统盘,此系统盘除了只需手动分区外(由于分区会因业务的不同会有所变化,故此处不定制),其余所有要实现自动安装之目的,而且需增加一些第三方的软件包与做一些系统安全方面的设置,从而达到真正自动运维之目的,为了这个梦想,本人找遍谷歌与百度,网上都能难找到一篇完全的教程与文档来实现我的这个想法紧接着...下面就有了我自己艰难的定制之路。
在定制之前,本人开始直接想尝试修改光盘根目录下的 isolinux 目录下的引导文件isolinux.cfg,直接在引导选项加入 Logic MegaRAID SAS 1078 卡的驱动文件 megasr.img,即操作方式:dd=cdrom:/megasr.img 文件,可是事与愿违,启动安装过程中,提示让我们再次选择设备驱动器来加载第三方驱动,故只有另辟蹊径,重谋对策考虑到系统安装识别驱动是靠 initrd.img 这个镜像来实现的,需 initrd.img 这个文件解开,把 Logic MegaRAID SAS 1078 raid 卡驱动文件中的.ko 文件导入到 initrd.img 文件,进行再次打包,以实现系统的顺利安装;同时为了实现安装好的系统顺利启动,我们再次需要编辑 ks.cfg 这个 kickstart 文件,将 Logic MegaRAID SAS 1078 raid 卡驱动文件中的.ko 文件导入到/lib/modules/`uname -r`/updates/目录下, mkinitrd 重新制作 initrd 文件来实现安装后系统的引导,具体步骤如下:1、挂载光驱[root@localhost ~]# mount /dev/cdrom /mnt 2、创建临时目录[root@localhost ~]# mkdir -p /root/iso/CentOS 3、提取安装好系统需要 RPM 包 正常安装好操作系统在/root 目录下会有 install.log 文件,这个就是操作系统安装 RPM 包的记录,我们从这些记录中,将所需的 RPM 包从/mnt/CentOS 中复制到/root/iso/CentOS 里面去,这里我们编写脚本 package.sh。
[root@localhost ~]# vi package.sh #!/bin/bashcd /rootawk '/Installing/{print $2}' install.log | sed 's/^[0-9]*://g' >package.txtDVD='/mnt/CentOS' PACKDIR='/root/package.txt' NEW_DVD='/root/iso/CentOS/' while read LINEdocp ${DVD}/${LINE}*.rpm /${NEW_DVD} || echo "$LINE don't cp......."done > /tmp/initrd/modules/modules.alias mkdir /tmp/megasr 7、生成新的 initrd.img 文件就像我们以前所做的,修改了源码包中的内容就势必再次打包恢复,这里我们需要把修改过的内容打包成一个 initrd.img 文件,不过这里要注意打包时的压缩格式, modules.cgz文件用的是 crc 格式,而 initrd.img 文件用的是 newc 格式,命令参数不要弄错。
[root@localhost megasr]# cd /tmp/initrd/modules [root@localhost modules]# find 2.6.18-53.el5 | cpio -o -H crc | gzip -9 > modules.cgz [root@localhost modules]# rm -rf 2.6.18-53.el5 [root@localhost modules]# cd .. [root@localhost initrd]# find . | cpio -o -H newc | gzip -9 > /tmp/initrd.img 8、将打包好的 initrd.img 文件复制到 /root/iso/isolinux 目录[root@localhost initrd]# cp /tmp/initrd.img /root/iso/isolinux 9、上述第 3 步操作中,在/root/iso/CentOS 目录下的软件包仅是我们定制的一些系统自带的 rpm 软件包;除此之外,我们还需要增加一些系统不自带的软件包,如:MegaCli 与nload,并且禁止了 ipv6 协议。
其中 MegaCli-2.00.15-1.i386.rpm 与 nload-0.7.4.tar.gz 软件包详见博文后面的 nload 与 MegaCli 工具附件,请自行解压开来,上传到服务器上)[root@localhost initrd]# cd [root@localhost ~]# mkdir /root/iso/Custom [root@localhost ~]# cp MegaCli-2.00.15-1.i386.rpm /root/iso/CentOS [root@localhost ~]# cp /tmp/megasr/2.6.18-194.el5/megasr.ko /root/iso/Custom [root@localhost ~]# cp nload-0.7.4.tar.gz /root/iso/Custom 10、安装上述定制的软件包,我们需要配置 ks.cfg 文件,具体 ks.cfg 的配置文件如下: [root@localhost ~]# cd /root/iso[root@localhost iso]# vi ks.cfg 1. # Kickstart file automatically generated by anaconda. 2. 3. install 4. cdrom 5. lang en_US.UTF-8 6. langsupport --default=en_AU.UTF-8 en_US.UTF-8 zh_CN.UTF-8 zh_HK.UTF-8 zh_CN.UTF-8 zh_SG.UTF-8 zh_TW.UTF-8 en_AU.UTF-8 7. keyboard us 8. # Network information 9. network --device=eth0 --bootproto=dhcp --onboot=on 10. rootpw 123456. 11. authconfig --enableshadow --enablemd5 12. firewall --disabled 13. selinux --disabled 14. timezone Asia/Shanghai 15. bootloader --location=mbr 16. # The following is the partition information you requested 17. # Note that any partitions you deleted are not expressed 18. # here so unless you clear all partitions first, this is 19. # not guaranteed to work 20. clearpart --all --drives=sda 21. # part /boot --fstype ext3 --size=200 22. # part swap --size=8196 23. # part / --fstype ext3 --size=50000 24. # part /movies --fstype ext3 --size=100 --grow 25. # Reboot after installation 26. reboot 27. %packages 28. @base 29. @chinese-support 30. @core 31. @development-libs 32. @development-tools 33. @dialup 34. @editors 35. @ftp-server 36. @legacy-network-server 37. @legacy-software-development 38. @legacy-software-support 39. @server-cfg 40. @system-tools 41. @text-internet 42. keyutils 43. trousers 44. fipscheck 45. device-mapper-multipath 46. perl-Convert-ASN1 47. imake 48. lsscsi 49. audit 50. net-snmp-utils 51. sysstat 52. iptraf 53. dstat 54. expect 55. MegaCli 56. gfs-utils 57. gfs2-utils 58. OpenIPMI-tools 59. 60. %post --nochroot 61. 62. # 挂载光驱 63. mkdir -p /mnt/cdrom 64. m。