LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: xsam

集中反映一下最近大家在pacman -Syu后不能启动的问题

[复制链接]
发表于 2006-12-19 14:31:58 | 显示全部楼层
楼主你说你的live cd是0.7.0的,这里推荐楼主方便的话最好不要用早期arch cd安装升级使用,非要使用也可以,通过live cd 用在线ftp模式安装一个base

不过楼主想解决问题的心情我非常赞赏,动不动就重装系统那只能解决问题,而不能了解问题所在

楼主说编译内核不能使用的问题,那是因为你编译的内核没有把底层的磁盘控制器(如 via的8235之类的)和分区格式(如ext2/3 xfs reiserfs之类的)写进内核,而不是设为模块挂载~
如果非要用模块挂载的话,那光复制编译好的内核到台式机/boot下是绝对起不来的,因为加载的模块都在/lib/modules/(内核名称)/下
现在你会问是不是连那个文件一起复制就行了,我告诉那还是不行的,因为linux引导内核是不会自动加载那些模块的,这就是/boot/下img文件的作用了,同理,相同内核的img文件都不能通用,就别说不同内核的img文件了,所以你还必须在笔记本上对那个内核创建一个img文件
如果是用mkinitcpio的话,请用man mkinitcpio查看使用方法,实在不明白再问~

PS:还是推荐你把那些重要模块写进内核,可以省很多麻烦,先启动台式机才去解决其它问题要方便的多
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-12-19 14:32:33 | 显示全部楼层
有兄弟提示把initrd.img改成kernel26.img可以解决问题,我向天发誓,/boot目录里面绝对没有initrd.img。升级之后/boot目录里面的img文件就只有diag1.img, kernel26.img, kernel26-fallback.img。而且menu.list里面没有initrd的加载项,只有vmlinuz内核的加载项。initrd文件并不是必须的,因为我之前在debian, ubuntu下基本都没用到Initrd文件。

为了不浪费时间,今天中午我还是用0.7.1重装了base系统,更新时把kernel给ignore掉。这次终于可以mount root filesystem,并且可以加载服务,但在加载Uevent服务的时候就停住了……

再次ft……
回复 支持 反对

使用道具 举报

发表于 2006-12-19 14:36:09 | 显示全部楼层
呵呵,就重装了,看来我来晚了哈~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-12-19 14:40:16 | 显示全部楼层
论坛反应太慢了,不小心多点了一下,sorry.

Post by blance
楼主说编译内核不能使用的问题,那是因为你编译的内核没有把底层的磁盘控制器(如 via的8235之类的)和分区格式(如ext2/3 xfs reiserfs之类的)写进内核,而不是设为模块挂载~


Blance你误会了我的意思。我怎么会把那么重要的东西编成modules呢?我当然考虑到模块不能加载的问题才会把所有必须的东西都bulit-in了。

此外,我是用gentoo的liveCD启动进去的,所以不能彻底地修复……
回复 支持 反对

使用道具 举报

发表于 2006-12-21 01:24:39 | 显示全部楼层
前不久用0.72的安装盘,也遇到了楼主说的情况,在arch的官方论坛上搜到一贴解决了问题。
具体过程如下:
用0.72安装盘启动,选择ftp安装,源是buaa-skate,完成后重启,报告说不能加载根文件系统。于是修改mkcpio的配置文件,指定ide,reiser等模块,重新生成kernel26.img,这回可以加载了,但是紧接着又报告“Attempted to kill init”(类似这个错误)。后来在arch的官方论坛上看到一个人和我的情况一样,他是这么解决的:在grub引导的时候暂时先用kernel26-fallback.img,成功。然后再重新生成kernel26.img,在重启就没问题了。自己试了一下居然也行得通,然后就再没管这件事了。
回复 支持 反对

使用道具 举报

发表于 2006-12-21 03:06:02 | 显示全部楼层
只修改了给内核所加的root=/dev/sdxx 和 vga=752 这两个参数 (我用的beyond内核)
其他一切正常.
回复 支持 反对

使用道具 举报

发表于 2006-12-21 09:07:09 | 显示全部楼层
Post by jupiteye
前不久用0.72的安装盘,也遇到了楼主说的情况,在arch的官方论坛上搜到一贴解决了问题。
具体过程如下:
用0.72安装盘启动,选择ftp安装,源是buaa-skate,完成后重启,报告说不能加载根文件系统。于是修改mkcpio的配置文件,指定ide,reiser等模块,重新生成kernel26.img,这回可以加载了,但是紧接着又报告“Attempted to kill init”(类似这个错误)。后来在arch的官方论坛上看到一个人和我的情况一样,他是这么解决的:在grub引导的时候暂时先用kernel26-fallback.img,成功。然后再重新生成kernel26.img,在重启就没问题了。自己试了一下居然也行得通,然后就再没管这件事了。

0.7.2安装盘,FTP安装。在安装末段,修改/boot/grub/menu.lst
将initrd26.img改成kernel26.img
重启,遇到很少问题就能进入系统,
再重启,启动过程中去到检查Filesystem阶段,就提示busy,不过可以跳过继续
现在就不知道busy怎么处理
回复 支持 反对

使用道具 举报

发表于 2006-12-21 09:17:45 | 显示全部楼层
新安裝系統的朋友,請使用 0.8-1218.iso
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-12-21 10:28:18 | 显示全部楼层
对,0.7.*的光盘里面的软件版本和pacman -Syu后的差很多。

我不想折腾了,干脆试试新的吧。幸好我还有cd-rw,否则又要浪费张光盘……
回复 支持 反对

使用道具 举报

发表于 2006-12-21 17:49:06 | 显示全部楼层
Post by xsam
有兄弟提示把initrd.img改成kernel26.img可以解决问题,我向天发誓,/boot目录里面绝对没有initrd.img。升级之后/boot目录里面的img文件就只有diag1.img, kernel26.img, kernel26-fallback.img。而且menu.list里面没有initrd的加载项,只有vmlinuz内核的加载项。initrd文件并不是必须的,因为我之前在debian, ubuntu下基本都没用到Initrd文件。

为了不浪费时间,今天中午我还是用0.7.1重装了base系统,更新时把kernel给ignore掉。这次终于可以mount root filesystem,并且可以加载服务,但在加载Uevent服务的时候就停住了……

再次ft……


这位兄弟甘牢气阿……
真是不好意思阿,我表达有点问题,我点意思是menu.lst里换,将initrd.img换成kernel26.img(没就加上去),即是用kernel26.img启动

Post by jupiteye
前不久用0.72的安装盘,也遇到了楼主说的情况,在arch的官方论坛上搜到一贴解决了问题。
具体过程如下:
用0.72安装盘启动,选择ftp安装,源是buaa-skate,完成后重启,报告说不能加载根文件系统。于是修改mkcpio的配置文件,指定ide,reiser等模块,重新生成kernel26.img,这回可以加载了,但是紧接着又报告“Attempted to kill init”(类似这个错误)。后来在arch的官方论坛上看到一个人和我的情况一样,他是这么解决的:在grub引导的时候暂时先用kernel26-fallback.img,成功。然后再重新生成kernel26.img,在重启就没问题了。自己试了一下居然也行得通,然后就再没管这件事了。


他说得专业点
回复 支持 反对

使用道具 举报

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

本版积分规则

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