分页: 1 / 1
请问大家内核编译的问题~
发表于 : 2007-12-29 23:21
由 ylyang05
我在7。04里面用的2。6的内核,想自己编译2。4的内核
编译是成功了,但是在内核加载的时候会提示下面的错误信息
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0.0
在lib/modules/文件夹下使用mkinitrd命令的时候会提示
/usr/sbin/mkinitrd: Cannot determine root device
这是怎么回事阿 ?
在网上查看说要支持什么文件格式,但是在编译内核的时候又不知道在那里
知道的大虾教教小弟阿
发表于 : 2007-12-31 23:43
由 leowang
我编译时出现的问题和你的一样,不过我编译的是2.6.23.12的内核,编译了很多回,就是用新内核启动时就会出现和你一样的问题,自带的内核却不会,不知道谁能解答。
发表于 : 2008-01-03 18:44
由 Strange
导致这样的原因很多,中心思想是编译的内核不能被正确读取
要看自己的实际情况,比如磁盘驱动没有,文件系统的支持没有,等等
发表于 : 2008-01-03 18:50
由 BigSnake.NET
2.4 的支持 initrd 吗?
发表于 : 2008-01-03 22:40
由 leowang
我编译的是2.6.23.12内核,已经编译成功了,在ubuntu下不能用普通的编译方法,我是用
代码: 全选
make xconfig
make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers
[/quote]
的方法编译成功的,2.4的内核没试过,不知道按照这个方法行不行。
编译内核的时候,强烈建议你在自己的home文件夹下进行,而且不要用root帐号编译。
发表于 : 2008-01-03 23:28
由 ylyang05
o ~
我试一下在home里面进行
我都在/usr/src里面进行的
你的方法我试过
但是没有通过~
发表于 : 2008-01-04 11:35
由 freelather
似乎是配置内核的file system那里有问题
是说无法mount root所有的设备
ext3, 之类的一定要选择编译进内核, 即使编成M也不行
还有
Include IDE/ATA-2 DISK support
SCSI device support
SCSI disk support
看你硬盘是什么的,上面几个对应的一定要选 Y,不要选择M
发表于 : 2008-01-04 12:14
由 windwiny
可以用 mkinitrd 生成内核的 initrd 文件
发表于 : 2008-01-04 12:15
由 leowang
ext3和ext2都要选上Y的,而且在ubuntu下按照普通方法编译的内核经常不能用,我以前按照普通方法编译内核就不能用,就会出现上面的错误,而相同的选项,用上面的方法编译的就可以用。不知道为什么。
发表于 : 2008-01-04 12:42
由 BigSnake.NET
initrd 可以选 M
否则的话 / 的文件系统支持一定要 Y
发表于 : 2008-01-05 11:15
由 ylyang05
9楼的方法是生成一个deb的包
里面有很多自己的依赖关系。好像是这样
就和apt-get install一样
发表于 : 2008-01-05 11:16
由 BigSnake.NET
代码: 全选
(time make-kpkg --rootcmd fakeroot --initrd --append-to-version=$(echo -ac-$(date +%y%m%d)) kernel_image kernel_headers linux_image linux_headers modules_image) 2>&1 | tee ../makelog
我用的编译命令..