本期为服务器操作系统常见问题第三篇,介绍在系统安装过程中无法识别到连接在SAS卡上的硬盘,不能继续安装系统的情况下应如何解决。
问题描述
系统安装过程中无法识别到连接在SAS卡上的硬盘,不能继续安装系统:
过程分析
(1)在安装界面按“Ctrl+Alt+F2”组合键切换到tty2窗口,查看/tmp/syslog日志。
(2)在syslog日志中发现,系统安装启动过程中没有SAS卡驱动初始化的日志。
问题根因
系统自带的SAS卡驱动版本太低,无法正常识别初始化较新的SAS卡。
解决方案
通过如下方法,在一个已安装的系统上,创建一个用于在系统安装过程中更新SAS卡驱动到最新版本的U盘;
1.环境准备:
准备一台服务器,在此服务器中安装操作系统。此操作系统版本与需要安装的系统版本保持一致。用于编译sas卡驱动以及制作用于安装驱动的U盘。
2.通过驱动源码制作驱动rpm包:
以从官网下载的驱动源码包kmod-mpt3sas-43.00.00.00-1.src.rpm为例:
(1)将驱动源码上传到正常启动的操作系统环境中;
(2)执行 rpm -ivh kmod-mpt3sas-43.00.00.00-1.src.rpm命令解压驱动源码包;
(3)进入到/root/rpmbuild/SPECS目录中,执行rpmbuild -bb mpt3sas.spec命令编译驱动rpm包;
(4)生成的驱动rpm包保存在/root/rpmbuild/RPMS/x86_64路径中。
3.制作包含驱动的U盘:
(1)将空白U盘插入到服务器中,并能够被操作系统正常识别;(2)在U盘中制作一个5M空间、ext4文件系统的分区;
$ wipefs -a -f /dev/sdc
$ parted /dev/sdc mklabel msdos
$ parted /dev/sdc mkpart primary 2048s 12288s
$ parted /dev/sdc u s p
$ mkfs -t ext4 -b 4096 /dev/sdc1
$ e2label /dev/sdc1 OEMDRV
(3) 挂载该分区到 /tmp/dd-creation目录;
$ mkdir /tmp/dd-creation
$ mount -v /dev/sdc1 /tmp/dd-creation
(4)在/tmp/dd-creation路径中创建如下目录结构,并将驱动复制/tmp/dd-creation/rpms/x86_64/ 目录中;
$ echo "Driver Update Disk version 3" > /tmp/dd-creation/rhdd3
$ mkdir -p /tmp/dd-creation/rpms/x86_64/
$ cp -v /root/rpmbuild/RPMS/x86_64/kmod-mpt3sas-43.00.00.00-1.x86_64.rpm /tmp/dd-creation/rpms/x86_64/
(5)卸载U盘;
$ mkdir /tmp/dd-creation
$ mount -v /dev/sdc1 /tmp/dd-creation
4.将制作好的U盘插入到服务器中,并重启服务器进行系统安装;
5.在系统的grub界面中,选择需要安装的操作系统内核,按“e”键进入编辑模式,在linuxefi行末添加inst.dd参数,按“ctrl+x”启动安装;
6.根据启动的提示进行驱动的更新;
(1)根据提示选择制作好的U盘;
(2)选择U盘中的驱动rpm包,并输入“c”加载驱动文件;
(3)输入“c”继续启动系统安装;
(4)在安装界面可以生成识别到硬盘。