greensun
发表于 2004-3-21 12:24:36
呀,好,迫切需要这些知识。 :-D
感谢您的劳动。
xingy
发表于 2004-4-11 15:05:30
使用如下命令将modules转换为modprobe.conf
/generate-modprobe.conf /etc/modprobe.conf
转换时可能会有警告,可以不理会它。转换完成后将modules.conf移除或更名。
修改/etc/rc.sysinit文件:
将其中所有的/proc/ksyms替换为/proc/kallsyms。
将其中所有的/proc/sys/kernel/modprobe 替换为/sbin/modprobe
在文件中mount -f /proc这一句下添加mount -f /sys
在文件中的action $"Mounting proc filesystem: " mount -n -t proc /proc /proc 这一句的下面添加 action $"Mounting sysfs filesystem: " mount -n -t sysfs /sys /sys
修改/etc/fstab文件:
加入none /syssysfs defaults0 0
修改/etc/init.d/halt文件:
将halt_get_remaining函数内的awk '$2 ~ /^\/$|^\/proc|^\/dev/{next}改为
awk '$2 ~ /^\/$|^\/proc|^\/sys|^\/dev/{next}
创建目录:
mkdir /sys
然后重启机器,模块的问题应该解决的差不多了。
我按这种方法还是不行啊,连mount都不起作用了,启动有很多错误
看来2。6。4的内核很难编译啊
iswind
发表于 2004-4-14 15:04:13
一个简单的方法处理kernel 2.4/2.6共存:
kernel 2.6由于module名有变, 二楼gxl117给出了修改方法. 对于kernel 2.4/2.6需要有不同处理的引导过程(包括有些模块加载过程), 可以在引导shell中判断uname -r值分别处理. 比如将原来的rc.sysinit复制为rc.sysinit-2.6/rc.sysinit-2.4并根据需要修改, 然后建立新的rc.sysinit:
#!/bin/sh
if [ `uname -r` = "2.6.0" ]; then
exec /etc/rc.d/rc.sysinit-2.6
else
exec /etc/rc.d/rc.sysinit-2.4
fi
呵呵,我没有这样做,但2.4.20-8和2.6.0都可以用啊...我只是改了一下rc.sysinnit,不过也没有做mkdir/sys, 不过就是mount fat分区时要要先做modprobe vfat
风继续吹
发表于 2004-4-29 09:36:00
学到了很多知识,这个帖子应该置顶啊。
不过看的我不敢改了,呵呵。ajeep写的方法是好,也没敢实践
jackieupc
发表于 2004-7-10 11:21:24
我的Debian也没有/etc/rc.sysinit,我怎样修该?
傻傻地笑
发表于 2004-7-16 19:19:05
my OS is debian
kernel is 2.6.6
there is no rc.sysinit in /etc~~~
and no /etc/rc.d/ directory~~~
how to deal with it????
?????touch rc.sysinit and edit it by myself??????