linux installer os的驱动更新
installer os的驱动更新
linux系统可以简单的分为installer OS与运行时的OS,安装阶段识别不到硬件设备大概率因为installers OS版本较低,没有驱动来识别新的硬件,可以尝试更新驱动。
安装installer OS对应的linux-headers
在系统界面进入Rescue a broken system或者在系统开始安装的时候中断,进入命令行模式,
~ # uname -r
3.2.0-23-generic
拿到版本后
apt-get install linux-headers-3.2.0-23-generic
安装完成后检查
dpkg -l|grep linux-headers
# 输出中含有下面两项即可
ii linux-headers-3.2.0-23 3.2.0-23.36 Header files related to Linux kernel version 3.2.0
ii linux-headers-3.2.0-23-generic 3.2.0-23.36 Linux kernel headers for version 3.2.0 on 64 bit x86 SMP
编译新的驱动
去 http://www.broadcom.com/site-search 搜索需要的驱动,这里使用MR Linux Driver - 07.703.05.00,下载到root目录下。
在root下创建megaraid_sas_07.703文件夹之后
tar -xf ../MR_LINUX_DRIVER_7.3-07.703.05.00.tgz
cd src
rpm2cpio ../generic_srpm/megaraid_sas-07.703.05.00-1.src.rpm | cpio -i
此时src目录下生成文件如下
drwxr-xr-x 2 root root 4096 Jan 2 15:40 ./
drwxr-xr-x 16 root root 4096 Jan 2 15:36 ../
-rw-r--r-- 1 root root 142594 Jan 2 15:40 megaraid_sas-07.703.05.00.tar.gz
-rw-r--r-- 1 root root 8049 Jan 2 15:40 megaraid_sas.spec
-rwxr-xr-x 1 root root 25 Jan 2 15:40 Module.supported*
tar -xf megaraid_sas-07.703.05.00.tar.gz
进入解压后的目录drivers/scsi/megaraid_sas,这里就是我们要编译出.ko文件的地方,在该目录下执行
make -j4 CONFIG_DEBUG_INFO=1 -C /usr/src/linux-headers-3.2.0-23-generic M=${PWD} modules

修改initrd.gz文件
首先挂载我们的iso,此时可以看到iso中的内容,但是只读的,所以将整个挂载目录复制到root下
cp -a galen/. /root/copy_mount_is/
root目录下
root@g6:~# mkdir initrd.dir
root@g6:~# cd initrd.dir/
# 将initrd.gz解压出来到initrd.dir文件夹下
root@g6:~/initrd.dir# gzip -d -c < /root/copy_mount_is/install/initrd.gz | cpio -i
# 替换.ko文件
root@g6:~# cp megaraid_sas_07.703/src/drivers/scsi/megaraid_sas/megaraid_sas.ko initrd.dir/lib/modules/3.2.0-23-generic/kernel/drivers/scsi/megaraid_sas.ko
# 将initrd.dir文件压缩回去
root@g6:~/initrd.dir# find . | cpio --create --format='newc' | gzip > ../copy_mount_is/install/initrd.gz
替换完initrd.gz之后要修改copy_mount_is目录下md5sum.txt中的校验码,先获取当前的md5校验码
md5sum initrd.gz
然后替换下图中的校验码

重新打包ISO
以上操作全部完成后,将我们的文件重新合为iso就可以了。
mkisofs -joliet-long -J -l -b isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table -z -iso-level 4 -c isolinux/isolinux.cat -eltorito-alt-boot -e boot/grub/efi.img -no-emul-boot -o 6.1-scaler-galen-test.iso copy_mount_is
linux installer os的驱动更新的更多相关文章
- Linux下的硬件驱动——USB设备(转载)
usb_bulk_msg函数 当对usb设备进行一次读或者写时,usb_bulk_msg 函数是非常有用的; 然而, 当你需要连续地对设备进行读/写时,建议你建立一个自己的urbs,同时将urbs 提 ...
- 超赞的Linux软件分享(持续更新)
开发 Android studio - Android 的官方 IDE:Android Studio 提供在各种类型的安卓设备上构建应用最快的工具. Aptana - Aptana Studio 利用 ...
- Linux USB ECM Gadget 驱动介绍
1 USB ECM介绍 USB ECM,属于USB-IF定义的CDC(Communication Device Class)下的一个子类:Ethernet Networking Control Mo ...
- TODO:Linux安装PHP MongoDB驱动
TODO:Linux安装PHP MongoDB驱动 PHP利于学习,使用广泛,主要适用于Web开发领域. MongoDB的主要目标是在键/值存储方式(提供了高性能和高度伸缩性)以及传统的RDBMS系统 ...
- Linux修改系统以及pip更新源
Linux修改系统以及pip更新源 时间:2015-08-01来源:csdn 作者:henulwj 修改系统更新源 你是否跟我一样在刚看时接触Linux时被系统更新源问题搞得晕头转向,不同的Linux ...
- Dell R410 broadcom网卡驱动更新失败
问题描述: 最近遇到一个Dell R410 broadcom网卡驱动更新失败的问题.从官网上下载的驱动在安装的过程中都会自己回滚回来,很是困惑. 尝试解决: Dell官网现在提供的驱动一般最少有两种格 ...
- linux下的声卡驱动架构
1.linux下的声卡驱动架构主要分为OSS架构和ALSA架构. 2.OSS架构 OSS全称是Open Sound System,叫做开放式音频系统,这种早期的音频系统这种基于文件系统的访问方式,这意 ...
- linux内核SPI总线驱动分析(一)(转)
linux内核SPI总线驱动分析(一)(转) 下面有两个大的模块: 一个是SPI总线驱动的分析 (研究了具体实现的过程) 另一个是SPI总线驱动的编写(不用研究具体的实现过程) ...
- 微软开源PowerShell并支持Linux和OS X
[微软在开源的道路上加速度了] 从一开始的各种对抗,各种通吃,到现在开始做服务,包罗万象.果然,换了主力,大有不同. 微软今天还宣布开源其.NET框架,令.NET Core能在Linux和OS X上运 ...
随机推荐
- Strange Way to Express Integers
I. Strange Way to Express Integers 题目描述 原题来自:POJ 2891 给定 2n2n2n 个正整数 a1,a2,⋯,ana_1,a_2,\cdots ,a_na ...
- hdu 1358 Period (KMP求循环次数)
Problem - 1358 KMP求循环节次数.题意是,给出一个长度为n的字符串,要求求出循环节数大于1的所有前缀.可以直接用KMP的方法判断是否有完整的k个循环节,同时计算出当前前缀的循环节的个数 ...
- SuperSocket获取会话的连接和断开事件
关键字: 连接事件, 断开事件, OnSessionStarted,OnSessionClosed, NewSessionConnected, SessionClosed AppSession 的虚方 ...
- functiils.lru_cache缩短递归时间
力扣上看到一道题: 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 使用普通递归解决,超出时间限 ...
- html手机端全屏显示和溢出问题
<meta name="viewport" content="width=1200, initial-scale=0.3"> initial-sca ...
- tp5 thinkphp5 多表关联查询 join查询
model下: $res = \think\Db::name('article') ->alias("a") //取一个别名 ->join('admin ad','a. ...
- 【codeforces 761C】Dasha and Password(动态规划做法)
time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...
- 模板——BigInteger
#include <iostream> #include <cstring> #include <string> #include <vector> # ...
- JDK自带的native2ascii工具介绍
背景:在做Java开发的时候,常常会出现一些乱码,或者无法正确识别或读取的文件,比如常见的validator验证用的消息资源(properties)文件就需要进行Unicode重新编码.原因是java ...
- 【37.48%】【hdu 2587】How far away ?(3篇文章,3种做法,LCA之Tarjan算法)
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s) ...