linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘建议留言网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > article > Linux入门与提高 > 安装与配置 >
栏目导栏
资料搜索
热门文章
·什么是ISO文件
·VMware下Linux的安装及简单设置
·为Canon PIXMA iP1000喷墨打印
·Linux必学60个命令文件处理
·实例解说Linux中fdisk分区使用
·Linux下软件安装详解(图)
·Windows下硬盘安装FC6
·用DVD镜像文件硬盘安装FC5详细
·linux下软件的基本安装和卸载
·Linux下硬盘分区的最佳方案
·Suse Linux最新版本 10.1的 IS
·Ubuntu Linux操作系统安装Luma
·Linux下的软件安装
·FC5,LINUX下ADSL上网设置与安装
·把你的Linux配置成Windows
最新文章
·Fedora 9下使用VirtualBox安装
·Ubuntu Linux 8.04 Vsftp 虚拟
·Weblogic 8.1 for Linux ES3.0
·Ubuntu Linux 8.04下本地安装L
·VMware安装Redhat不能输入密码
·双系统攻略:修复Windows XP引
·Windows Vista硬盘安装Fedora
·在一个硬盘上安装两个Linux操作
·从硬盘安装Fedora-9-i386-DVD
·Ubuntu 8.04下安装配置Tomcat5
·Linux系统下显示多核模式方法
·Ubuntu Linux 8.04下关于字体的
·Linux系统下Autodock 4.0安装与
·SUSE Linux系统BASH下配置JAVA
·Linux kernel2.6.25 CS8900网卡
Google
 
利用U盘加载控制器驱动来安装Linux系统
[ 作者:  加入时间:2008-01-25 11:12:53  来自:Linux联盟收集整理 ]
 

一般我们在安装服务器过程中需要加载一些scsi卡或raid卡驱动,以便操作系统可以检测到硬盘。

常规的安装方式是要用到软驱,其实我们也是可以通过U盘来进行加载的。

装Linux控制器驱动往往都是*.dd或者*.img结尾的文件,我们都可以在linux下通过dd命令来写入到U盘中,比如驱动的名字为megaraid_sas.img

假设有一台Linux机器,先把文件拷贝到/tmp,U盘的设备名为sdb。

dd if=/tmp/megaraid_sas.img of=/dev/sdb

cat命令也可以实现dd的作用,注意这里是sdb而不是sdb1,是设备而不是分区,如果你把文件写入到sdb1,你可以尝试加载驱动会失败。

Linux可以写裸设备而windows不可以,也就是说如果U盘在windows下是未分区的(此时windows是无法写的)但是在linux下还是可以写的。

在 of=/dev/sdb 的时候是从U盘的最开始位置写的,结果把它模拟成了一个软盘,前446Bytes即“boot code”定义了它的类型。此时你把这个U盘拿到windows机器上,在磁盘管理里边可以看到1G的容量,但是右键属性发现容量为1.38,即成了一个软盘,也可以说是四不像,其实是欺骗了windows。

这个时候你可以把U盘格式化,然后把megaraid_sas.img在windows下用第三方工具解压后发送到U盘之后,安装系统过程中还是可以正常加载驱动的。

这是为什么呢?

因为我们在windows下对这时的U盘操作时,windows会先读取U盘的“boot code”,认为它是一个软盘,因为软盘是没有分区的概念即没有partition table,把其后边的空间格式化了,简单的说,再怎么样也不会把“boot code”给改了。

这时再拿到linux下,linux仍可以读出其中的数据,但在用 fdisk -l /dev/sdb 的时候会发现U盘的Partition table有问题,可以在用fdisk /dev/sdb 进入交互界面后用一个命令“w”重新改写,把U盘变成一个没有分区的U盘。

有很重要的一点补充,现在很多人再买到服务器之后要装linux系统,但是没有linux环境,无法按照上边的步骤来把驱动写到U盘上去,经测试发现可以用redhat的第一张盘来创造这样一个linux环境,假设现在要加载的驱动为LSI sas raid卡的驱动

步骤如下:

1、先在windows环境中把驱动拷贝到U盘上去,

2、用redhat的第一张盘引导,当出现提示你是否加载hard driver时,选择skip,这是OS没有检测到硬盘的提示,此时就可以skip,接着就要加载图形化界面了,这时候我们就可以按CTRL+ALT+F2切换到控制台了,

(有一点补充,硬盘的驱动是在出现图形化界面之前就已经加载了,对于这个问题我还请了前辈一瓶水,我们可以在出现控制台后切换到F3,F4就可以看到内核和安装的详细过程)

3、在内存中建两个目录mkdir /a /b

4、mount /dev/sda1 /a

5、cp /a/megaraid_sas-rhel40-all.img /b

6、umount /a

7、dd if=/b/megaraid_sas-rhel40-all.img of=/dev/sda

8、再次启动服务器,当出现boot之后输入linux dd,然后按照提示选择从/dev/sda中添加驱动,就会找到硬盘(如果出现多个sdx设备,可以按CTRL+ALT+F4来看到底你的U盘是哪个设备)

后话:

因为工作能接触到不同cpu的服务器,发现此种方法在AMD cpu的机器上无法实现,intel的机器没有问题,intel的cpu可以在找不到硬盘的情况下仍然可以加载图形界面,AMD的cpu如果找不到硬盘就不可以继续,而且即使用dd命令把驱动写到U盘上去,驱动还是不能正常的加载的,也就是说无法用U盘给AMD cpu的机器加载硬盘的驱动。

Linux在检测不同cpu时反馈的结果差别还是真的很大,不能说是redhat或者AMD的问题。

Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·解决硬盘安装Linux时找不到镜像文件问题  (2008-01-23 10:07:44)
 ·通过硬盘上的镜像文件安装Linux操作系统  (2007-12-30 12:05:59)
 ·在Linux操作系统下重新安装Linux的方法  (2007-11-27 11:21:37)
 ·通过网络安装Linux(CentOS)系统的方法  (2007-11-09 10:06:26)
 ·如何为oracle数据库精简快速安装linux操作系统  (2007-11-01 09:50:40)
 ·安装过Windows后如何安装Linux操作系统  (2007-10-31 18:05:51)
 ·XP下移动硬盘装Linux后变“死盘”的解决  (2007-10-22 09:45:25)
 ·ATI显卡的机器上安装Linux花屏解决办法  (2007-09-19 11:05:36)
 ·安装Linux操作系统引导时的命令参数介绍  (2007-08-02 10:56:24)
 ·在硬盘中安装Linux操作系统最简单的方法  (2007-07-17 11:29:32)