求助:linux-2.6.10启动时挂起,且无panic
时间:2009-06-18
来源:互联网
我当前的linux是2.6.23.1-42.fc8,gcc版本是 4.1.2-33,是在Dell vestro 1500(CPU为iX86系列的)。我从www.kernel.org 下载了linux-2.6.10[/url]的内核源码和相应的补丁linux-2.6-seg-5.patch,并安装了3.4.2版本的gcc。在make menuconfig进行内核配置时都是用默认配置,然后make bzImage,顺利通过编译。然后的操作如下:
make modules
make modules_install
cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.10
cp System.map /boot/System.map-2.6.10
ln -s /boot/vmlinuz-2.6.10 /boot/vmlinuz
ln -s /boot/System.map-2.6.10 /boot/System.map
new-kernel-pkg --mkinitrd --install --depmod 2.6.10
然后查看/boot/grub/grub.conf的内容如下:
# all kernel and initrd paths are relative to /, eg.
# root (hd0,8 )
# kernel /boot/vmlinuz-version ro root=/dev/sda9
# initrd /boot/initrd-version.img
#boot=/dev/sda
default=2
timeout=5
splashimage=(hd0,8 )/boot/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.10)
root (hd0,7)
kernel /boot/vmlinuz-2.6.10 ro root=LABEL=/
initrd /boot/initrd-2.6.10.img
title Fedora (2.6.23.1-42.fc8 )
root (hd0,7)
# kernel /boot/vmlinuz-2.6.23.1-42.fc8 ro root=LABEL=/ rhgb quiet
kernel /boot/vmlinuz-2.6.23.1-42.fc8 ro root=LABEL=/ rhgb
initrd /boot/initrd-2.6.23.1-42.fc8.img
title Windows
rootnoverify (hd0,1)
重新启动,选择linux-2.6.10的进入,在输出如下几行后就停滞不动了,只有一个光标在闪动,更郁闷的是竟然不报panic!这让人怎么查问题在哪啊
Red Hat nash version 6.0.19 starting
Mounting proc FileSystem
Mounting sysfs Filesystem
Creating /dev
我看了正常启动的linux-2.6.23,它在Creating /dev后有条语句输出:Creating initial device nodes。但是linux-2.6.10却没有啊?!
这个问题我已经折腾好些天了,都没弄好。望各位帮帮忙......................
作者: bigcavity1 发布时间: 2009-06-18
内核的配置一般根据自己的需求来,这个不能一概而论
2.6 内核正确的编译方法是
1、make menuconfig,配置内核
2、make 编译内核和内核模块
3、make modules_install 安装内核模块
4、make install,安装内核到 /boot 中
5、修改 grub.conf,使其指向新的内核 kernel 和 initrd 文件
你再试试呢?
作者: platinum 发布时间: 2009-06-18
查看一下这个脚本,发现其所作的操作和我在前面所做的操作一样。
并且,发帖之前我也用过make install安装内核,但还是出现和前面一样的问题。
刚才在编译内核时,我也用了make,而不是make bzImage,其他操作不变。但还是出现一样的问题!
郁闷,这个问题折腾我好些天了,用google搜了不少资料,但是都没解决。内核出错,好歹也要报个panic的错误的,让人有源可查。但现在连panic都不输出,只是挂起不动了。
在把/boot/grub/grub.conf文件里的kernel-2.6.10的启动项之kernel项的quite去掉后,才输出如下,然后挂起:
Red Hat nash version 6.0.19 starting
Mounting proc filesystem
Mounting sysfs filesystem
Creating /dev
不去掉quite之前,在输出 Red Hat nash version 6.0.19 starting后就停止不动了。
有对linux 2.6的内核启动过程的高人吗,帮我给些建议哦......
作者: bigcavity1 发布时间: 2009-06-18
不知道你的情况是否与我的相同
我的个人建议是,如果 initrd 中没有临时要加载的内核模块,那么不妨使用一个好的系统的 initrd 代替先
作者: platinum 发布时间: 2009-06-18
cp initrd-2.6.23.1-42.fc8.img initrd-2.6.10.img
但是重启后还是一样的问题!
好像行不通哦
作者: bigcavity1 发布时间: 2009-06-19
我的问题好像和你的是相似的,我查看了inittd-2.6.10.img文件中的init脚本,发现在执行语句:“mount -o mode=0755 -t tmpfs /dev /dev”的时候系统不动了,因为此语句之前的echo语句输出来了,此语句之后的echo语句就没输出来!
这是我的inittd-2.6.10.img文件中的init脚本,现在贴出来:
mount -t proc /proc /proc
setquiet
echo Mounting proc filesystem
echo Mounting sysfs filesystem
mount -t sysfs /sys /sys
echo Creating /dev
mount -o mode=0755 -t tmpfs /dev /dev
echo mount /dev finish
mkdir /dev/pts
echo mkdir /dev/pts finish
mount -t devpts -o gid=5,mode=620 /dev/pts /dev/pts
echo mount /dev/pts finish
mkdir /dev/shm
echo mount /dev/shm finish
mkdir /dev/mapper
echo mount /dev/mapper finish
echo Creating initial device nodes
mknod /dev/null c 1 3
mknod /dev/zero c 1 5
mknod /dev/systty c 4 0
mknod /dev/tty c 5 0
mknod /dev/console c 5 1
mknod /dev/ptmx c 5 2
mknod /dev/rtc c 10 135
mknod /dev/tty0 c 4 0
mknod /dev/tty1 c 4 1
mknod /dev/tty2 c 4 2
mknod /dev/tty3 c 4 3
mknod /dev/tty4 c 4 4
mknod /dev/tty5 c 4 5
mknod /dev/tty6 c 4 6
mknod /dev/tty7 c 4 7
mknod /dev/tty8 c 4 8
mknod /dev/tty9 c 4 9
mknod /dev/tty10 c 4 10
mknod /dev/tty11 c 4 11
mknod /dev/tty12 c 4 12
mknod /dev/ttyS0 c 4 64
mknod /dev/ttyS1 c 4 65
mknod /dev/ttyS2 c 4 66
mknod /dev/ttyS3 c 4 67
echo Setting up hotplug.
hotplug
echo Creating block device nodes.
mkblkdevs
echo "Loading ehci-hcd.ko module"
insmod /lib/ehci-hcd.ko
echo "Loading ohci-hcd.ko module"
insmod /lib/ohci-hcd.ko
echo "Loading uhci-hcd.ko module"
insmod /lib/uhci-hcd.ko
mount -t usbfs /proc/bus/usb /proc/bus/usb
echo "Loading mbcache.ko module"
insmod /lib/mbcache.ko
echo "Loading jbd.ko module"
insmod /lib/jbd.ko
echo "Loading ext3.ko module"
insmod /lib/ext3.ko
mkblkdevs
resume LABEL=SWAP-sda10
echo Creating root device.
mkrootdev -t ext3 -o defaults,ro LABEL=/
echo Mounting root filesystem.
mount /sysroot
echo Setting up other filesystems.
setuproot
echo Switching to new root and running init.
switchroot
echo Booting has failed.
sleep -1
在系统启动时,输出了语句“echo Creating /dev”,下一句“echo mount /dev finish”就没有输出来了。
我的grub.conf文件中的内容如下:
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,8 )
# kernel /boot/vmlinuz-version ro root=/dev/sda9
# initrd /boot/initrd-version.img
#boot=/dev/sda
default=4
timeout=5
splashimage=(hd0,8 )/boot/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.10)
root (hd0,7)
kernel /boot/vmlinuz-2.6.10 ro root=LABEL=/
initrd /boot/initrd-2.6.10.img
title Fedora (2.6.23.1-42.fc8 )
root (hd0,7)
kernel /boot/vmlinuz-2.6.23.1-42.fc8 ro root=LABEL=/ rhgb quiet
initrd /boot/initrd-2.6.23.1-42.fc8.img
title Windows
rootnoverify (hd0,1)
chainloader +1
请问问这是怎么回事呢?你有能正常启动的initrd-2.6.10.img,能传上来看看吗?谢谢platinum兄了
[ 本帖最后由 bigcavity1 于 2009-6-22 12:39 编辑 ]
作者: bigcavity1 发布时间: 2009-06-22

呜呼.................
作者: bigcavity1 发布时间: 2009-07-07
我有个办法,在你的启动脚本里,再次运行 nash 进入 shell
然后手动依次运行 shell 里的语句,看到哪里不行
初步感觉是 /dev 里面的设备不全或不对造成的
我查了一下我使用的 gentoo linux 的启动脚本,使用的是 mdev -s 来自动生成
作者: platinum 发布时间: 2009-07-07
就不动了。
急。。。。谢谢指导,感激不尽。
作者: 开源通宝 发布时间: 2010-10-13
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28