阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Centos7.3编译RAID驱动(一)

76次阅读
没有评论

共计 2286 个字符,预计需要花费 6 分钟才能阅读完成。

导读 本次实验,通过使用安装了自定义内核 4.18.202 的 Centos7.3 系统在 Lenovo SR650 服务器,RAID 阵列卡为 940-8i 中测试兼容性,进入安装界面发现找不到磁盘。

Centos7.3 编译 RAID 驱动(一)

解决方法

我们就需要下载 940-8i 的驱动,首先查一下 lenovo 940-8i 的芯片型号,然后在 Broadcom 官网查询和哪一个相同,下载芯片相同的 RAID 驱动。下载地址:
https://www.broadcom.com/products/storage/raid-controllers/megaraid-9560-8i
Centos7.3 编译 RAID 驱动(一)
解压 MR_LINUX_DRIVER_7.20-07.720.04.00-1.tgz,然后解压 megaraid_sas_components.tgz,
进入 kmod_srpm 目录,yum 安装”Development Tools”组和一些常用工具。

[root@localhost kmod_srpm]# yum groupinstall "Development Tools"
[root@localhost kmod_srpm]# yum -y install libelf-dev libelf-devel elfutils-libelf-devel

安装 kernel-headers,注意!kernel-headers 尽可能从镜像安装,因为 kernel-headers 要和 kernel 版本一致。

[root@localhost kmod_srpm]# yum -y install kernel-headers-`uname -r`

下面开始重新编译一个和当前系统版本兼容的 RAID 驱动:

[root@localhost kmod_srpm]# rpmbuild --rebuild kmod-megaraid_sas-07.720.04.00-1.src.rpm

Centos7.3 编译 RAID 驱动(一)
进入~/rpmbuild/RPMS/x86_64 目录,
找到这个文件 kmod-megaraid_sas-07.720.04.00-1.x86_64.rpm。找到之后先保留。我们下一步要将该 rpm 包打包成 dd.iso 文件。

[root@localhost ~]# cd ~/rpmbuild/RPMS/x86_64

Centos7.3 编译 RAID 驱动(一)
在官网下载的压缩包里面有一些其他操作系统的 raid 驱动。我们找这个目录
rhel7_oel7_centos7/disks- 1 里面的这个文件
megaraid_sas-07.720.04.00_el7.7-1.x86_64.iso.gz
首先使用 gunzip 解压它,解压为.iso 文件

[root@localhost generic_srpm]# gunzip /root/rhel7_oel7_centos7/disks-1/megaraid_sas-07.720.04.00_el7.7-1.x86_64.iso.gz

Centos7.3 编译 RAID 驱动(一)
将 megaraid_sas-07.720.04.00_el7.7-1.x86_64.iso 文件挂载到目录,然后将里面的内容复制到一个新建的文件夹里面:

[root@localhost ~]# mount rhel7_oel7_centos7/disks-1/megaraid_sas-07.720.04.00_el7.7-1.x86_64.iso /mnt/
[root@localhost ~]# mkdir test && cp -r /mnt/* test/

如下是复制出来的文件目录结构:
Centos7.3 编译 RAID 驱动(一)
将 test/rpms/x86_64/* 下面的东西删掉。将编译好的 kmod-megaraid_sas-07.720.04.00-1.x86_64.rpm 文件复制到 x86_64 目录下。

[root@localhost ~]# rm -rf test/rpms/x86_64/*
[root@localhost ~]# cp -p rpmbuild/RPMS/x86_64/kmod-megaraid_sas-07.720.04.00-1.x86_64.rpm test/rpms/x86_64/

安装 createrepo 安装包

[root@localhost ~]# yum -y install createrepo

进入 test/rpms/x86_64/ 目录
在当前目录执行 createrepo,为该目录生 repo metadata.

[root@localhost x86_64]# createrepo .

Centos7.3 编译 RAID 驱动(一)
然后想办法将 test 目录制作成 iso,就可以在 Linux dd 里面加载驱动了。
下面是使用 mkisofs 命令来制作 iso 文件。

[root@localhost test]# yum -y install genisoimage
[root@localhost test]# cd ~/test
[root@localhost test]# mkisofs -o dd.iso -r .

进入 grub boot option 时,选择 Install CentOS Linux 7
Centos7.3 编译 RAID 驱动(一)
按一下 tab 键,在后面加入 linux dd 选项,回车,就可安装 raid 驱动了。(如果是使用 58 的这个定制镜像,不要忘记修改前面 LABEL 名称)
Centos7.3 编译 RAID 驱动(一)
下图第一个红圈,选择存放 raid 驱动的存储器。第二个红圈搜索到 dd.iso 文件,是否挂载。三个红圈选择对应的 rpm 包格式的 raid 驱动。第四个圈输入 c,继续。
Centos7.3 编译 RAID 驱动(一)
再次输入 c,并回车,进入安装界面
Centos7.3 编译 RAID 驱动(一)
安装界面,可以看到识别硬盘了。
Centos7.3 编译 RAID 驱动(一)
安装完系统,发现无法进入系统,进入了 emerency 模式。
启动到安装界面时使用的内核版本为 3.10.0.514 版本:
Centos7.3 编译 RAID 驱动(一)
还是因为没有加载 RAID 驱动的问题,因为系统里面的内核为 4.18.202 版本,所以需要加载一个 4.18.202 匹配的 raid 驱动。
Centos7.3 编译 RAID 驱动(一)
Centos7.3 编译 RAID 驱动(一)

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计2286字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中