+ -
当前位置:首页 → 问答吧 → 怎么向内核加入驱动?

怎么向内核加入驱动?

时间:2003-05-08

来源:互联网

我有张RAID卡芯片组是HPT370
Red Hat Linux8、9不被支持。
但有驱动盘,我在安装时用linux dd来加载驱动。可以进行安装。
但完成时重启失败。

现在有个想法,我想把驱动加到核心里。但我暂时没有Linux平台。能不能在Windows下完成?
在安装时有张安装盘,里面有initrd.img和vmlinuz?这两个文件。后者是核心,那前者是什么?
我知道重启失败是因为Kernel不支持这块RAID卡造成的。

那么,我要是能成功的把驱动加进 Kernel里是不是就OK了?

当时假设一下,我成功地加入驱动,把安装盘的initrd和vmlinuz覆盖掉。(可以不用加载驱动盘就驱动RAID卡?)
OK,然后安装,制作一张启动盘(这时启动盘里有initrd这文件吗?vmlinuz是支持RAID卡的?还是不支持的?要是不支持的我再覆盖掉这文件)
然后用启动盘启动(假设能启动Red Hat Linux9) 再次覆盖vmlinuz和修改lilo.conf文件。




因为Red Hat linux7.3有下载已经编好的核心了,所以7.3能成功的安装。不知道我这个想法行么???脑子都大了。装了好几次。就这些还没试。
现在最大的问题是怎么把驱动加到核心里?????有没有高手或版主来帮帮我啊???

作者: Lyrazxm   发布时间: 2003-05-08

----------------------------------------------------------------------

怎么向内核加入驱动?
我有张RAID卡芯片组是HPT370
Red Hat Linux8、9不被支持。
但有驱动盘,我在安装时用linux dd来加载驱动。可以进行安装。
但完成时重启失败。

现在有个想法,我想把驱动加到核心里。但我暂时没有Linux平台。能不能在Windows下完成?
在安装时有张安装盘,里面有initrd.img和vmlinuz?这两个文件。后者是核心,那前者是什么?
我知道重启失败是因为Kernel不支持这块RAID卡造成的。

那么,我要是能成功的把驱动加进 Kernel里是不是就OK了?

当时假设一下,我成功地加入驱动,把安装盘的initrd和vmlinuz覆盖掉。(可以不用加载驱动盘就驱动RAID卡?)
OK,然后安装,制作一张启动盘(这时启动盘里有initrd这文件吗?vmlinuz是支持RAID卡的?还是不支持的?要是不支持的我再覆盖掉这文件)
然后用启动盘启动(假设能启动Red Hat Linux9) 再次覆盖vmlinuz和修改lilo.conf文件。




因为Red Hat linux7.3有下载已经编好的核心了,所以7.3能成功的安装。不知道我这个想法行么???脑子都大了。装了好几次。就这些还没试。
现在最大的问题是怎么把驱动加到核心里?????有没有高手或版主来帮帮我啊???
----------------------------------------------------------------------

我不知道是否可以帮助你, 但想说明你的几个问题:


你的RAID卡在linus下不是加载, 而是kernel挂起此驱动, initrd 是初始化RAID卡的意思。

kernel如果可以挂起RAID当然可以启动,但不敢保证RAID是否真正的发挥自身的效果, 你用dd挂起的这个RAID卡只是说白了是安装上,但在起机的时候kernel并没检测到其。

问题的解决方法。 第一: 可以从新编译kernel来挂起你的RAID卡。
第二: 像你说的使用kernel驱动来挂起它。 当然不是靠你的驱动程序盘,而是修改和编译,然后可以挂起你的RAID卡。 这样,你修改一下init的文件,是开机搜索新的程序来找到RAID卡,关于驱动我想你必须找kernel的驱动程序文件来实现。

如果上述方法不可行,我会帮你找一些方法和资料。

作者: ZeroC   发布时间: 2003-05-09

非常感谢ZeroC兄
首先我安装时是用linux dd 来加载驱动的。
我现在想要一个已经编译好的Kernel。但我没有Linux平台也没有编译过Kernel。但我有驱动文件和未被编译的Kernel(30MB)。
不知道你能束帮助我呢?
我的QQ:95709

作者: Lyrazxm   发布时间: 2003-05-09

我们QQ上说吧,我加你了哈

作者: ZeroC   发布时间: 2003-05-09

说实话,你这个问题很麻烦, 我劝你安装上一个linus自己动手实验实验, 这样你以后也个话题聊!


自己动手 疯衣诅尸

作者: ZeroC   发布时间: 2003-05-09

我就是装不上啊~~~~~~~~!有LINUX我就可以自己学着编译内核了

作者: Lyrazxm   发布时间: 2003-05-09

装不上什么??????????????????

作者: ZeroC   发布时间: 2003-05-09

我的磁盘子系统是RAID。
那RAID
卡没有驱动起来就进不了LINUX了

作者: Lyrazxm   发布时间: 2003-05-10

试用一下vm/vpc,

作者: ZeroC   发布时间: 2003-05-10

http://user.nankai.edu.cn/cim/studen...ionenglish.htm

看对你是否有启发!

作者: ZeroC   发布时间: 2003-05-10

开始有点雾水。@_@晕晕的

作者: Lyrazxm   发布时间: 2003-05-10

呵呵

作者: keenor   发布时间: 2003-05-10

驱动盘里就是很多*.o的文件。怎么把它加到内核里?我没做过。我手上现在没有linux的平台

作者: Lyrazxm   发布时间: 2003-05-10

insmod *.o

作者: keenor   发布时间: 2003-05-10

你的语法有问题?

作者: Lyrazxm   发布时间: 2003-05-10

我的意思是这样的:
你有个文件,您知道它是驱动,一般它的文件名是…….o,例如ee100.o,你可以用下面的命令加载驱动:
insmod ee100.o

作者: keenor   发布时间: 2003-05-11

那这个*.o的文件要放在哪?可以随便么?那还还要不要编译内核?

作者: Lyrazxm   发布时间: 2003-05-11

不用编译内核
对了
你没有不用linux,为什么还要装linux下的驱动呢?

作者: keenor   发布时间: 2003-05-11

你没有不用linux,为什么还要装linux下的驱动呢?

什么意思?我看不明白

作者: Lyrazxm   发布时间: 2003-05-11

请教你一个问题。我的驱动是在安装时用linux dd来加载的。文件名如下
modinfo
modules.cgz
modules.dep
pcitable
rhdd-6.1
怎么把它们加到内核中?来驱动我的RAID卡?

作者: Lyrazxm   发布时间: 2003-05-11

2) Instalación

2.1) Arranca con el disco de arranque
2.2) Escribe "linux dd" cuando SYSLINUX muestre "boot:" y pulsa enter.
2.3) El instalador preguntará por un disco de drivers. Usa el segundo disco.
2.4) Instala normalmente* (verás el array en /dev/sda)
2.5) Reinicia

* Consideraciones:
- Estás usando un driver propietario de highpoint tech (1.31): Este driver No ES GPL.
- Una vez que RedHat9 está instalado utilizará otro driver,... esta vez es GPL.
- El driver GPL accede al array desde /dev/ataraid/d0 y /dev/ataraid/d0pX (X es el nº de partición) o /dev/ataraid/disc0/disc y /dev/ataraid/disc0/partX (X es el nº de partición) si usas devfs.
- El instalador de RedHat9 usa ' LABEL="/" ' para identificar la partición "/",... esto no requiere cambios.
- Debido a los cambios en /dev/* entre los 2 drivers, es posible que necesites cambiar algunas lineas en /dev/fstab ( /dev/sdaX -> /dev/ataraid/d0pX o /dev/ataraid/disc0/partX ) .
- Con /etc/lilo.conf pasa lo mismo.
- Probablemente quieras tener todos estos cambios antes de reiniciar tras la instalación.

- Por fabor si quieres compilar tu propio kernel, indica aqui: http://www.bandaancha.st/documentos.php?docid=56 tu fichero ".config" , la versión del kernel y si funciona o no

能不能帮我看看是怎么做的?

作者: Lyrazxm   发布时间: 2003-05-11

2) Instalation

2.1) Boot with the bootdisk
2.2) Write "linux dd" at the "boot:" prompt of SYSLINUX and click return.
2.3) You will be asked for a driver disk,... just use this
2.4) Install normally* (your array will be at /dev/sda)
2.5) Reboot

* Considerations.
- You are using a propietary driver from highpoint tech (1.31): This driver IS NOT GPL.
- Once RedHat9 is installed will work with other driver,... GPL this time.
- The GPL driver access the array from /dev/ataraid/d0 and /dev/ataraid/d0pX (X is the partition number) or /dev/ataraid/disc0/disc and /dev/ataraid/disc0/partX (X is the partition number) if you use devfs
- Note that RedHat9 installer uses ' LABEL="/" ' to identify the root partition,... this does not need changes
- Due to the /dev/* changes between drivers, thats posible you must replace some lines in /dev/fstab ( /dev/sdaX -> /dev/ataraid/d0pX or /dev/ataraid/disc0/partX )
- The same goes to /etc/lilo.conf
- Probably you want to do this changes before reboot

- Please if you want to build your own kernel, post here: http://www.bandaancha.st/documentos.php?docid=56 your ".config" file and kernel version and if fail or work


Castellano:

read more at http://www.terra.es/personal2/capullator

作者: Lyrazxm   发布时间: 2003-05-11

你是用什么盘启动的机器?驱动给了个光盘吗?你拿那个光盘启动的吗?

作者: keenor   发布时间: 2003-05-11

没有。是软盘的。没有光盘。
我用Red Hat Linux9的光盘来引导的。然后用linux dd命令来加载驱动盘。

作者: Lyrazxm   发布时间: 2003-05-11

我的是 Promise 20276.芯片.
RH8.0 的驱动 linux dd 和使用都没什么问题.
一般一会找到一个源代码程序.可以在大部分linux 下编译出你所需要的驱动文件 xxx.o 得到他并不难.然后开始设置.
例如.安装RH8.0.我按照我的驱动说明必须给内核一个参数.
ide0=0x1f0,0x3f6,14 ide1=0x170,0x376,15 ide2=0 ide3=0 ide4=0 ide5=0 ide6=0 ide7=0 ide8=0 ide9=0
我理解可能是暂时关闭主板上 两个ide接口.使内核识别其他板载IDE接口...总之如果.你能安装系统.在安装时成功调用并分区.那么应该不会太难...还有个经验是.当你安装到最后一步.
也就是创建完起动磁盘的时候. 你可以按下 Ctrl+Alt+F2
或者...+F3 ,F4 查看一下
Ctrl+Alt+F2 你可以具体操作你的系统.做最后的修改以适应接下来的新系统. #lsmod 查看已经加载的 raid 驱动模块.
/lib/modules/$2.4.18-14$/kernel/drivers/scsi 检查这个目录.内对应你的 驱动模块. 可以用软盘导入你事先准备好的驱动

作者: greenforce   发布时间: 2003-05-14

然后要仔细查阅这2个文件
/etc/modules.conf
/lib/modules/$2.4.18-14$/modules.dep
一切设置ok 你就可以Ctrl+Alt+F7 回到图形界面点下一步完成.
从新起动

作者: greenforce   发布时间: 2003-05-14

请你直接贴出. 驱动磁盘的下载联接...我对它很有兴趣想研究一下.
modules.cgz 是一个cpio 的归档文件.你可以解压缩.
里面就是你的驱动模块文件 XXX.o

作者: greenforce   发布时间: 2003-05-14

我是LINUX的新手。对我来说还是很难。主要一起概念我不明白。
GreenForce兄你的QQ加不了你。我们QQ谈谈吧!
95709我的

作者: Lyrazxm   发布时间: 2003-05-14

在windows中可以一些虚拟的OS软件,不过很要求机器的硬件配置
像vm,pc等等,我只知道这些了

作者: wytilyhwh   发布时间: 2003-05-17

我还是失败了。N次。晕晕啊

作者: Lyrazxm   发布时间: 2003-05-18