如何将RAID卡驱动源码编译制作成Linux系统inst.dd加载的ISO格式并在安装系统时批量加载驱动?

目录

一、环境准备

二、编译驱动rpm包

2.1 准备kmod-megaraid_sas-07.720.04.00-1.src.rpm 

​编辑2.2 切换到mockbuild用户

​编辑2.3 安装源码

2.4 进入SPEC目录 

2.5 编译源码 

​编辑2.6 查看生成的rpm包

​编辑

三、挂载官方的iso格式驱动文件

3.1 创建挂载目录 

3.2 进入 官方 7.7 iso 格式驱动文件 目录 

3.3 解压 megaraid_sas-07.720.04.00_el7.7-1.x86_64.iso.gz 

3.4 挂载镜像文件 

3.5 创建ISO格式驱动制作目录 

3.6 进入ISO格式驱动制作目录 

3.7 拷入原ISO格式驱动文件 

3.8 删除原来的rpm文件和repodata 

3.9 拷入新编译的rpm文件 

3.10 进入/root目录,创建 repodata

3.11 重命名driver_iso_rebuild 

3.12 重新打包ISO 

3.13 测试验证 


一、环境准备

虚拟机:centos7.6系统  工作站版本 全包安装 跟将要使用驱动的Linux系统相对应

raid卡驱动:根据raid产品型号到raid卡厂商官网下载驱动源码包,这里以brocade 9560-8i raid为例

目的:由于centos7.6 1806系统镜像中,不包含brocade厂商9560系列raid卡的驱动,这就导致服务器在安装centos7.6及以前版本系统的时候,无法识别硬盘,从而无法安装系统,所以我们这里采用inst.dd加载raid卡ISO驱动,但raid卡厂商只提供7.7及往后版本的dd驱动,因此本文就教小伙伴如何使用源码编译成Linux系统可以手动加载的格式,手动加载驱动安装系统,如果需要将驱动源码编译集成到ISO镜像文件中,不需要每次安装系统都手动加载驱动这么麻烦,请看博文主流Linux操作系统如何适配服务器硬件&将驱动集成到老版本系统安装镜像ISO文件中?-CSDN博客

二、编译驱动rpm包

2.1 准备kmod-megaraid_sas-07.720.04.00-1.src.rpm 

cp /root/driver/megaraid_sas_components/kmod_srpm/kmod-megaraid_sas-07.720.04.00-1.src.rpm /home/mockbuild/

a240a3b00c1342afae0788cc26e0ece2.png2.2 切换到mockbuild用户

su - mockbuild

1e17c9216ac9425c8b2764e1d5eb6bc6.png2.3 安装源码

rpm -ivh kmod-megaraid_sas-07.720.04.00-1.src.rpm

ab2d847100f448ab93fd3691d8f45956.png

2.4 进入SPEC目录 

cd rpmbuild/SPECS/

040879061fbf4680bfd76c753242a444.png

2.5 编译源码 

rpmbuild -bb megaraid_sas.spec

a7cc50f1eee04ea49631e0a1deba28d5.png2.6 查看生成的rpm包

tree ../RPMS/

d851075022af497cb680ae4fe333acc7.png

三、挂载官方的iso格式驱动文件

3.1 创建挂载目录 

mkdir -p /mnt/driver_iso

505783fc5b794bc38ac93e58e3e0936f.png

3.2 进入 官方 7.7 iso 格式驱动文件 目录 

cd driver/megaraid_sas_components/rhel7_oel7_centos7/disks-1/

c53b3b745e67463c87e6335929e83b01.png

3.3 解压 megaraid_sas-07.720.04.00_el7.7-1.x86_64.iso.gz 

052969b830d54629b3b0dd4cb88c36b8.png 这里复用rhel7.7的目录结构。

3.4 挂载镜像文件 

mount megaraid_sas-07.720.04.00_el7.7-1.x86_64.iso /mnt/driver_iso/

 b7100fde5ac245cbae512a915feca807.png

3.5 创建ISO格式驱动制作目录 

进入/root目录, 创建 ISO格式驱动制作目录 。 

mkdir driver_iso_rebuild

df19be0c5a7a46ecad89ebb10bb1d686.png

3.6 进入ISO格式驱动制作目录 

cd driver_iso_rebuild/

5d53f5328aae486d902cb94f61924997.png

3.7 拷入原ISO格式驱动文件 

rsync -a /mnt/driver_iso/ .

 abd6d3b35bd24591ae09bec986ac0354.png

3.8 删除原来的rpm文件和repodata 

cd rpms/x86_64/ 
rm -rf *

27d1d913ef61433f95a9fb53b430d2d7.png

3.9 拷入新编译的rpm文件 

cp /home/mockbuild/rpmbuild/RPMS/x86_64/kmod-megaraid_sas-07.720.04.00-1.x86_64.rpm .

3b3d5b0fad35460c9915f7139d6b0148.png

3.10 进入/root目录,创建 repodata

cd /root createrepo --pretty driver_iso_rebuild/rpms/x86_64/

 67716fc401a94066b01ebbb71fc04f84.png

3.11 重命名driver_iso_rebuild 

mv driver_iso_rebuild/ dd_9560

983e5888e4fe44709ee7408aa8fa15fc.png

3.12 重新打包ISO 

mkisofs -R -o dd_9560.iso dd_9560/

5cd4b7e89b454337b4f5fc3960ed18d2.png

3.13 测试验证 

1)搭建 http服务 

python -m SimpleHTTPServer

e12ff66a20af414a9cce577ce07ef04a.png

2) 安装系统时 编辑 启动项,系统启动时按e,将以下内容写入

inst.dd=http://10.0.52.119:8000/dd_9560.iso

 eac167b2be7c4fdc91f421b845677096.png

3) 查看是否加载驱动成功 

dbb18a195e194981afe317c14151c093.png 4) 装操作系统时正确识别驱动器

05b829be4da54f27ada172471b58cafc.png 5) 安装后驱动版本为更新后的版本

modinfo megaraid-sas

2b3e108bce404e43b3abfc368dcb9de6.png

### PyCharm 打开文件显示全的解决方案 当遇到PyCharm打开文件显示全的情况时,可以尝试以下几种方法来解决问题。 #### 方法一:清理缓存并重启IDE 有时IDE内部缓存可能导致文件加载异常。通过清除缓存再启动程序能够有效改善此状况。具体操作路径为`File -> Invalidate Caches / Restart...`,之后按照提示完成相应动作即可[^1]。 #### 方法二:调整编辑器字体设置 如果是因为字体原因造成的内容显示问题,则可以通过修改编辑区内的文字样式来进行修复。进入`Settings/Preferences | Editor | Font`选项卡内更改合适的字号大小以及启用抗锯齿功能等参数配置[^2]。 #### 方法三:检查项目结构配置 对于某些特定场景下的源码视图缺失现象,可能是由于当前工作空间未能正确识别全部模块所引起。此时应该核查Project Structure的Content Roots设定项是否涵盖了整个工程根目录;必要时可手动添加遗漏部分,并保存变更生效[^3]。 ```python # 示例代码用于展示如何获取当前项目的根路径,在实际应用中可根据需求调用该函数辅助排查问题 import os def get_project_root(): current_file = os.path.abspath(__file__) project_dir = os.path.dirname(current_file) while not os.path.exists(os.path.join(project_dir, '.idea')): parent_dir = os.path.dirname(project_dir) if parent_dir == project_dir: break project_dir = parent_dir return project_dir print(f"Current Project Root Directory is {get_project_root()}") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技术瘾君子1573

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值