当前位置: 技术问答>linux和unix
Linux 断电后无法启动 无法重装
来源: 互联网 发布时间:2016-07-06
本文导语: 我是先装了XP系统,然后用grub装的FC7。断电后Linux无法启动: …… exec of init ((null)) failed!!!: Bad address ata3.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0 ata3.00: (BMDMA stat 0x65) ata3.00: cmd 25/00:08:18:fe:ee/00:00:14:00:00/...
我是先装了XP系统,然后用grub装的FC7。断电后Linux无法启动:
……
exec of init ((null)) failed!!!: Bad address
ata3.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata3.00: (BMDMA stat 0x65)
ata3.00: cmd 25/00:08:18:fe:ee/00:00:14:00:00/e0 tag 0 cdb 0x12 data 4096
ata3.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata3.00: (BMDMA stat 0x65)
……
EXT3-fs error (device sda5): ext3_get_inode_loc: unable to read inode block .. ode=39256065, block=39256066
Kernel panic - not syncing: Attempted to kill init!
本来XP系统还可以进的去,重启来重启去折腾了几次后,现在XP也进不去了 提示 Read disk error.
我打算重装XP系统,把原来的全盘格式化掉。可是重装不了,貌似读不到系统盘,我已经在BIOS设置了从CD/DVD启动。。
系统盘没有问题,因为在另外一台电脑上可以读。现在不确定是不是光驱坏了
如何是好呢~
……
exec of init ((null)) failed!!!: Bad address
ata3.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata3.00: (BMDMA stat 0x65)
ata3.00: cmd 25/00:08:18:fe:ee/00:00:14:00:00/e0 tag 0 cdb 0x12 data 4096
ata3.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata3.00: (BMDMA stat 0x65)
……
EXT3-fs error (device sda5): ext3_get_inode_loc: unable to read inode block .. ode=39256065, block=39256066
Kernel panic - not syncing: Attempted to kill init!
本来XP系统还可以进的去,重启来重启去折腾了几次后,现在XP也进不去了 提示 Read disk error.
我打算重装XP系统,把原来的全盘格式化掉。可是重装不了,貌似读不到系统盘,我已经在BIOS设置了从CD/DVD启动。。
系统盘没有问题,因为在另外一台电脑上可以读。现在不确定是不是光驱坏了
如何是好呢~
|
呵呵:这种问题我也遇到过,其实:当你的XP还能启动的时候,你只需要用你的安装光盘修复一下,
Linux就可以进去了!
你的硬盘肯定是串口的,对吧?
现在:你用你的Linux安装光盘先去修复一下,修复代码如下:
Linux就可以进去了!
你的硬盘肯定是串口的,对吧?
现在:你用你的Linux安装光盘先去修复一下,修复代码如下:
当我们每次要重装WIN的时候,MBR都会被重写,这样原来的GRUB或LILO就会不见了,或者由于某些原因使得原来的GRUB不见了,这个时候只要重装GRUB就行了**
GRUB的重装方法有很多,这种方法不行,换一种试下/
1.用安装光盘启动,选升级安装,再只选安装GRUB行了.
2.用安装光盘启动,到BOOT那里输入linux rescue
也就是进入求援模式,到出现#命令提示符时,输入chroot /mnt/sysimage
然后再输入grub-install /dev/hda
搞定...
3.没有软驱如何修复grub/lilo引导菜单?
a.把第一张linux安装盘里的dosutils目录复制到windows盘中。如果是iso可以用winrar3提取。
b.进入纯dos,进入dosutils目录,执行loadlin autoboot/vmlinuz root=/dev/hdxx()hdxx是你的linux根分区。这样就能进入linux。
c.执行grub-install /dev/hdx(x=a,b,c,d) 或lilo即可以重写引导。
另外还可以参考:http://www.linuxfans.org/nuke/modul...iewtopic&t=5101
4.如果你用grub来引导linux和windows,当windows出毛病重新安装后,会破坏MBR中的grub,这时需要恢复grub.
a.把linux安装光盘的第一张放到光驱,然后重新启动机器,在BOIS中把系统用光驱来引导。
b.等安装界面出来后,按[F4]键,也就是linux rescue模式。
c.一系列键盘以及几项简单的配制,过后就[继续]了。。。这个过程,我不说了,比较简单。
d.然后会出现这样的提示符:
sh#
e.我们就可以操作GRUB了.输入grub:
sh#grub
会出现这样的提示符:
grub>
我们就可以在这样的字符后面,输入:
grub>root (hdX,Y)
grub>setup (hd0)
如果成功会有一个successful......
这里的X,如果是一个盘,就是0,如果你所安装的linux的根分区在第二个硬盘上,那X就是1了;Y,就是装有linux系统所在的根分区。 setup (hd0)就是把GRUB写到硬盘的MBR上。
另外说下,有人说我没安装光盘啊?我是从硬盘安装的.呵呵,那你的ISO文件还在吧..那再来次硬盘安装进入安装界面也是一样的....
5.如何把GRUB或LILO删掉?
只要在DOS下执行FDISK /MBR就行了...
如何配置grub?
修改/boot/grub/grub.conf文件。其中
“default=n”(n是个数字)是grub引导菜单默认被选中的项,n从0开始,0表示第一项,1表示第二项,依此类推。
“timeout=x”(x是一个数)是超时时间,单位是妙。也就是引导菜单显示后,如果x秒内用户不进行选择,那么grub将启动默认项。
“splashimage =xxxxxx”,这是引导菜单的背景图,先不理他。
其它常用项我用下面的例子来说明:
title Red Hat 8.0
root (hd1,6)
kernel /boot/vmlinuz-2.4.18-14 ro root=/dev/hdb7
initrd /boot/initrd-2.4.18-14.img
其中"Red Hat 8.0"是在启动菜单列表里显示的名字
root (hdx,y)用来指定你的boot分区位置,如果你没有分boot分区(本例就没分boot分区),那就指向根分区就行了,hdx是linux所在硬盘,hd0是第一块硬盘,hd1是第二块,依此类推。y是分区位置,从0开始,也就是等于分区号减一,比如你要指向的分区是hdx7,那么y就是6,如果是hdx1,那y就是0。注意root后面要有一个空格。
kernel /boot/vmlinuz-2.4.18-14,其中"/boot/vmlinuz-2.4.18-14"是你要用的内核路径,如果你编译了心内核,把它改成你的新内核的路径就行了。
ro就不用管,写上不会有错。
root=/dev/hdxx指定根分区,本例是hdb7,所以root=/dev/hdb7
initrd xxxxxxxxxxxxx这行不要也行,目前我还不清楚它是做什么用的。
上面是linux的,下面是windows的
title windows 98
rootnoverify (hd0,0)
chainloader +1
title xxxxxxx不用解释了,上面有解释。
rootnoverify (hdx,y)用来指定windows所在分区,x,y跟上面一样,注意rootnoverify后有空格。
chainloader +1照抄就行,注意空格。
|
重装不了,如果安装时提示找不到磁盘驱动器的话,这个问题就比较普遍了。
解决的办法是:进入BIOS,然后找到SATA(可能是其他字符串,但是都是一个意思,表示设置磁盘驱动器模式)选项,选择磁盘设备为IDE模式,然后F10,保存退出,重启安装即可。
解决的办法是:进入BIOS,然后找到SATA(可能是其他字符串,但是都是一个意思,表示设置磁盘驱动器模式)选项,选择磁盘设备为IDE模式,然后F10,保存退出,重启安装即可。