服务器 2024-06-18

    jinnianhui 服务器RAID卡驱动编译总结

    一、现网描述

    1.1?环境描述

    设备型号:jinnianhui

    主板型号:S920S00

    RAID卡型号:RAID-3408iMR_3416iMR_3508_3516_3908_3916-megaraid_sas


    二、故障描述

    2.1 故障现象

    客户安装操作系统时无法识别到硬盘,无法安装。


    三、问题分析

    3.1 排查思路

    1. 查看BMC或BIOS存储管理,客户是否有配置RAID阵列,或者RAID卡模式和硬盘状态是否为JBOD,否则也无法识别到硬盘;

    image.png?

    3.2原因分析

    客户安装的操作系统内不含设备目前安装的RAID卡驱动,所以无法识别到硬盘。


    四、问题解决

    4.1解决办法

    获取源码和客户镜像文件(系统版本与内核版本需一致),在测试机中安装系统并手动编译相关驱动,通过Linux dd在安装系统时挂载即可解决。

    NeoKylin ServerV7.0U6系统为例:

    4.1.1前期准备??

    (1)安装NeoKylin Server?V7.0 U6?for?ARM 操作系统??

    ?image.png?

    (2)下载驱动源码包??

    驱动源码包下载地址如下: ?

    https://www.broadcom.com/products/storage/raid-controllers/megaraid-9460-8i??

    ?image.png

    ?(3)下载storcli64 工具? ?

    4.1.2?raid 卡驱动编译 ?

    ?(1)配置安装源??

    注意:若全安装系统,无需配置安装源即可源码编译?;若不全安装系统则需要配置一下组件??

    步骤1??虚拟光驱挂载OS镜像??

    image.png?

    步骤2??OS下挂载虚拟光驱,执行如下命令: ?

    mount /dev/sr0 /mnt ?

    ?image.png

    步骤3??创建yum本地源配置文件 ?

    创建本地源文件:vi /etc/yum.repos.d/localyum.repo ?

    配置内容: ?

    [local] ?

    name=local ?

    baseurl=file:///mnt ?

    enabled=1 ?

    gpgcheck=0 ?

    ?image.png?

    (2)安装组件??

    a)? 安装rpm-build:yum install?rpm-build ?

    b)? 安装createrepo:yum install?createrepo??

    c)? 安装mkisofs:yum install?mkisofs??????

    d)? 安装kernel-devel:yum install?kernel-devel ?e)? 安装gcc:yum install?gcc??

    (3)上传源码包??

    ?使用压缩包下的kmod_srpm路径的源码包kmod-megaraid_sas-07.714.04.00-1.src.rpm:??

    ?image.png?

    将驱动编译源码包kmod-megaraid_sas-07.714.04.00-1.src.rpm上传至操作系统root目录??

    (4)编译驱动??

    ?步骤一:安装src.rpm包,并进入SPEC目录下??

    执行命令:rpm -ivh kmod-megaraid_sas-07.714.04.00-1.src.rpm ?

    进入SPEC路径:cd /root/rpmbuild/SPECS// ?

    ?image.png

    ?image.png

    ?image.png

    步骤二:rpmbuild ?spec文件 ?

    执行命令:rpmbuild -bb megaraid_sas.spec ?

    ?image.png?

    ?image.png

    步骤三:进入编译好的驱动路径:??

    cd /root/rpmbuild/RPMS/aarch64/ ?
    ? ? ? ?下图所示的kmod-megaraid_sas-07.714.04.00-1.aarch64.rpm就是编译好的驱动文件??

    ?image.png

    步骤四:将编译好的驱动文件重命名为对应OS版本的名称:_?NeoKylinV7.0按需更改??

    执行指令:mv?kmod-megaraid_sas-07.714.04.00-1.aarch64.rpm kmod-megaraid_sas-?07.714.04.00_NeoKylinV7.0-1.aarch64.rpm??

    image.png?

    (5)制作dd.iso??

    步骤1??执行.mkdir -p /home/update_disk_tmp/{disk,rpms/aarch64,images} ?

    touch /home/update_disk_tmp/disk/rhdd3??

    ?image.png

    步骤2??执行??vi?/home/update_disk_tmp/disk/rhdd3,写入以下字段??

    Driver?Update?Disk?version 3??

    步骤3??将编译生成的rpm复制到/home/update_disk_tmp/rpms/aarch64/下??

    cp /root/rpmbuild/RPMS/aarch64/kmod-megaraid_sas-07.714.04.00_NeoKylinV7.0-?1.aarch64.rpm /home/update_disk_tmp/rpms/aarch64/ ?

    cd /home/update_disk_tmp/rpms/aarch64/??

    image.png?

    步骤4??生成repomd.xml校验文件??

    createrepo --pretty /home/update_disk_tmp/rpms/aarch64/ ?

    ?image.png

    ?image.png

    rm -rf?/home/update_disk_tmp/disk/rpms ?

    cp -ax?/home/update_disk_tmp/rpms /home/update_disk_tmp/disk/rpms??

    image.png?

    步骤5??生成dd.iso??

    mkisofs -R?-o /home/update_disk_tmp/images/dd.iso /home/update_disk_tmp/disk/??

    image.png?

    生成的dd.iso在images目录下??

    ?image.png?

    4.1.3驱动安装??

    (1)安装驱动??

    执行命令安装驱动:??

    rpm -ivh kmod-megaraid_sas-07.714.04.00_NeoKylinV7.0-1.aarch64.rpm?

    ??image.png

    (2)系统重启查询驱动版本??

    系统重启,再次查看目标驱动,目标版本为07.714.04.00??在命令行下输入命令??

    a)? ./storcli64_ arm /c0 show???
    ? ? ? ?b)? modinfo megaraid_sas????
    ? ? ? ?查询驱动版本??

    ?image.png

    (3)使用dd.iso 加载驱动安装系统??

    ?步骤1??进入安装起始界面,默认选择第一项??,然后按“e”??

    ?image.png

    步骤2??如下图选择在linux行末添加“linux dud=1”,然后按“Ctrl+x”启动??

    ?image.png

    步骤3??加载驱动??

    在如下图界面,如加载iso格式驱动,需要先弹出系统镜像,然后再插入驱动iso,然后选择?OK回车??

    ?image.png


    image.png

    ?步骤4??虚拟光驱弹出系统镜像,根据服务器实际配置,插入RAID卡驱动ISO,输入“r”回车?刷新,再输入“1”回车,可看到挂载的驱动镜像,输入“1”回车选择驱动,再输入“c”回车加载驱动。?

    image.png?

    步骤5??虚拟光驱弹出驱动镜像,插入NeoKylinV7.6系统ISO,输入“C”进入系统.????

    ?image.png

    进入系统

    ?image.png

    步骤6??识别到硬盘后,按照自己的实际需要进安装。?

    ?image.png

    4.2分析总结

    考虑到该款硬盘不在兼容性列表内,影响风扇调速,存在过温等较大的风险,建议客户更换成在兼容性列表内的硬盘。



    【网站地图】【sitemap】