LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1396|回复: 16

Arch涅磐

[复制链接]
发表于 2008-10-16 01:14:42 | 显示全部楼层 |阅读模式
前几天更新了一下,第二天竟然起不来了,就停在init...那了,进fallback模式,重新更新下内核(原来我都是ignore的),重启,结果更糟,打印什么:控制权交给kinit,然后kinit提示找不到root sda8(8,8),最后:Kernel panic - not syncing: Attempted to kill init! 相当郁闷阿。旁边又没其他机子,不是很好查。最后,准备重装了。到windows下,下了安装文件,到这里看了看,发现也有兄弟更新后,出问题了,感觉是内核,正好2.27出来了,于是,又回到arch下,pacman -S base,彻底更新了一下,看了下pacman日志(重要),更新后,重新编辑了/etc/rc.conf和/etc/initab文件,然后重启,盼望奇迹出现, panic 还是panic, 没办法,只能再进fallback模式,期待的奇迹这时出现了,gdm的登录界面出现了,一个念头顿时在头脑中闪现:难道两个imag搞错了(玩笑),回忆了下,论坛上有人提到mkinitcpio.conf文件,fallback模式应该比正常模式少加载几个模块,也许问题就出在这几个模块上,看pacman日志,果然,HOOK中,就一个不同,autodetec模块,在mkinitcpio文件中去掉autodetect,重新生成vmlinuz26文件,重启,搞定。果然问题出在这。

自己分析了一下,也同时请教下:我的是ide硬盘,但在arch下,都认成是sda,貌似是pata这个模块的作用(上次也搞过一次,启动失败,把fstab里的hda改成sda就ok),但是现在,如果加载autodetec模块(没细查,字面理解自动检测),会出现,找不到sda8,会不会是这两个模块冲突(autodetec检测为hda,或者说没检测到有sda设备,但pata却认为是sda)。想做一个实验,在mkinitcpio文件里,去掉pata,加上autodetec,然后fstab里也改成hda,这样是不是系统会按照hda来启动了,明天试一下,今天现睡了。
叙述比较乱,不过还是请高人指点。Thanks
发表于 2008-10-16 04:07:37 | 显示全部楼层
fstab用uuid,啥事没有。ide的盘应该在mkinitcpio.conf中加上ide作为hook。pata和sata都不要。
fallback会比正常模式多一些东西,因为他去掉了autodetect。硬盘通通认作sda和libata有关,和发行版无关。
回复 支持 反对

使用道具 举报

发表于 2008-10-16 08:29:08 | 显示全部楼层
autodetect这个hook可以精简后面的hook要加载的模块,可能就是它把一些必须的模块给“精简”掉了。猜的。
回复 支持 反对

使用道具 举报

发表于 2008-10-16 13:00:38 | 显示全部楼层
我觉得ide识别成sda比较好,不用额外开启dma模式了。。应该是趋势把。。。

我的就是ide的,模块里面加上pata相关的。hook里面留下base就够了
回复 支持 反对

使用道具 举报

发表于 2008-10-16 14:46:20 | 显示全部楼层
我也是这个问题,不过我比你更惨,我连fallback都进不去,同样提示“Kernel panic - not syncing: Attempted to kill init! ”
回复 支持 反对

使用道具 举报

发表于 2008-10-16 15:01:24 | 显示全部楼层
klibc没有更新?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-10-16 20:35:23 | 显示全部楼层
我的HOOK:

HOOKS="base udev pata scsi sata filesystems"


已经去掉sutodetec了,还有哪个能去掉的?SCSI应该可以吧,我没有SCSI设备。
回复 支持 反对

使用道具 举报

发表于 2008-10-16 21:09:18 | 显示全部楼层
加上ide,去掉pata scsi sata。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-10-16 22:41:15 | 显示全部楼层
谢谢ls,尝试了下:
现在的HOOK:

HOOKS="base udev filesystems"

autodetect加不加貌似都可以的。
回复 支持 反对

使用道具 举报

发表于 2008-10-16 22:50:37 | 显示全部楼层
"在mkinitcpio文件中去掉autodetect,重新生成vmlinuz26文件"
请问,“重新生成vmlinuz26"这步怎么做?我也遇到了同样地问题,
可以用mkinitrd auto”来rebuild initrd image。但我这里
fallback都没法进去,只能光盘启动。如何才能生成原系统的vmlinuz26呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表