当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 7 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : grub rescure> error: invalid arch independent elf magic
帖子发表于 : 2013-04-27 17:50 

注册: 2013-04-19 16:56
帖子: 8
系统: Ubuntu 13.04
送出感谢: 0 次
接收感谢: 0 次
先说一句,这个问题已经在度娘和google搜过N多了,搜到基本上都是同一篇文章拷贝来拷贝去的,都解决不了问题。
求求各位,请不要再把下面这篇文章拷贝过来了!
解决Grub Rescue: invalid arch independent ELF magic问题

环境:
硬件:联想服务器:ThinkCentre M8400T/CPU Core i5/内存 4GB/硬盘 1TB。
安装媒介:用Ubuntu Server 12.04.2 LTS的光盘镜像转成的U盘安装盘
系统引导模式:UEFI
分区计划:/dev/sda1 主分区 250M EFI引导区 可启动
/dev/sda2 主分区 250M ext2 /boot分区
/dev/sda5 逻辑分区 剩余全部空间 LVM分区
卷组中只划分了两块逻辑卷,其他空间暂时保留:
/dev/vg00/system 50G ext4 /
/dev/vg00/swap 4G swap

问题描述:
@ 全新安装Ubuntu,安装之前低格过,没有任何残留。
@ 安装过程正常,没有报错,重启后无法启动.
@ 若直接启动报错信息如为:
Error 1962: No operating system found. Press any key to repeat boot sequence.
@ 若引导时,按F12键,手工选择从指定的硬盘(只有一块硬盘)启动,则报错如下:
error: unknown filesystem.
grub rescue>


刚才我提到的网上被传烂了的文章,里面的方法我也试过,完全不起作用。
grub rescue> ls
(hd0) (hd0,msdos5) (hd0,msdos2) (hd0,msdos1)
grub rescue> set
prefix=(hd0,msdos1)/grub
root=hd0,msdos1
grub rescue> ls (hd0,msdos1)/ # 这块应该是EFI启动分区
error: unkonwn filesystem. # 和系统启动时同样的错误
grub rescue> ls (hd0,msdos2)/ # 这块应该是/boot分区
./ ../ lost_found/ efi/ ..... # /boot分区内的文件都能看到
grub rescue> set prefix=(hd0,msdos2)/grub # 按那篇文章内的方法来做,错误如下
grub rescue> set root=hd0,msdos2
grub rescue> insmod /grub/normal.mod
error: invalid arch independent ELF magic.

另外,用liveusb重新引导后,刷新grub也是一样的老问题,没作用:
# mount /dev/vg00/system /mnt
# chroot /mnt/ /bin/bash
# mount /dev/sda2 /boot
# mount /dev/sda1 /boot/efi
# grub-install --root-directory=/ /dev/sda
# update-grub

重启之后,还是同样的错误。


页首
 用户资料  
 
2 楼 
 文章标题 : Re: grub rescure> error: invalid arch independent elf magic
帖子发表于 : 2013-04-27 23:47 
头像

注册: 2010-10-27 20:43
帖子: 370
送出感谢: 2
接收感谢: 15
看了那篇文章,它转引的第二篇有一种解决方法:

代码:
sudo mount /dev/sda1 /mnt
sudo grub-install --root-directory=/mnt /dev/sda

注意这里sda1是它的boot分区。或者对应过来是efi分区。
挂载后安装grub时候 root那一句是对应到挂载点的,不是/。你这里肯定写的不对了。
我感觉应该是 把/改为/boot/efi 才对。

我也遇到同样问题。我用的是--boot=/mnt 这种,解决了。但那篇转引的英文说boot不对
,root才对。也搞不懂原理。

区别是使用root时候在EFI上根分区上建立的是 /boot/grub目录.使用boot时候是在EFI分区根目录上建立grub目录。


_________________
牛是牛顿的牛 毛是朱毛的毛


最后由 niumao 编辑于 2013-04-28 0:03,总共编辑了 2 次

页首
 用户资料  
 
3 楼 
 文章标题 : Re: grub rescure> error: invalid arch independent elf magic
帖子发表于 : 2013-04-27 23:57 
头像

注册: 2010-10-27 20:43
帖子: 370
送出感谢: 2
接收感谢: 15
此外,这两句执行完以后还是没有生成grub.cfg文件。需要手动生成grub.cfg。
原来是--boot-directory=/mnt的话,grub目录在/mnt下。
代码:
sudo grub-mkconfig -o /mnt/grub/grub.cfg

如果原来是--root-directory=/mnt,那么grub目录是/mnt/boot/下。应该是
代码:
sudo grub-mkconfig -o /mnt/boot/grub/grub.cfg


_________________
牛是牛顿的牛 毛是朱毛的毛


页首
 用户资料  
 
4 楼 
 文章标题 : Re: grub rescure> error: invalid arch independent elf magic
帖子发表于 : 2013-04-28 11:56 

注册: 2013-04-19 16:56
帖子: 8
系统: Ubuntu 13.04
送出感谢: 0 次
接收感谢: 0 次
老哥,我用你说的方法有实验了一下,还是不行,问题现象又不同了。

用liveusb启动,挂载硬盘root分区的文件系统,然后步骤如下:
代码:
# mount /dev/sda1 /mnt
# grub-install --boot-directory=/mnt /dev/sda
# update-grub

重启系统,提示信息“secure boot not enabled”。


niumao 写道:
看了那篇文章,它转引的第二篇有一种解决方法:

代码:
sudo mount /dev/sda1 /mnt
sudo grub-install --root-directory=/mnt /dev/sda

注意这里sda1是它的boot分区。或者对应过来是efi分区。
挂载后安装grub时候 root那一句是对应到挂载点的,不是/。你这里肯定写的不对了。
我感觉应该是 把/改为/boot/efi 才对。

我也遇到同样问题。我用的是--boot=/mnt 这种,解决了。但那篇转引的英文说boot不对
,root才对。也搞不懂原理。

区别是使用root时候在EFI上根分区上建立的是 /boot/grub目录.使用boot时候是在EFI分区根目录上建立grub目录。


页首
 用户资料  
 
5 楼 
 文章标题 : 参数--uefi-secure-boot?
帖子发表于 : 2013-04-28 12:11 
头像

注册: 2010-10-27 20:43
帖子: 370
送出感谢: 2
接收感谢: 15
哦。抱歉少说了一步。
你在grub-install时候加上一个参数,例如 --target 故意出个错
这个是错误参数,会出现提示信息的。
接着把提示信息中的正确参数加上: 好像是 --uefi-secure-boot
去掉那个错误参数。也许可以。
(但提示信息也说了 这个参数 --uefi-secure-boot 如果要起作用,
需要安装一个 signed?签过名的?一个image文件。应该把那个文件也装上吧?
我是在新立德里面和efi相关的装上好几个signed的东西,呵呵)


_________________
牛是牛顿的牛 毛是朱毛的毛


最后由 niumao 编辑于 2013-04-28 12:21,总共编辑了 1 次

页首
 用户资料  
 
6 楼 
 文章标题 : 需要grub-efi
帖子发表于 : 2013-04-28 12:19 
头像

注册: 2010-10-27 20:43
帖子: 370
送出感谢: 2
接收感谢: 15
注意,如果提示参数中没有 --uefi-secure-boot
说明你的grub2s是grub-pc.那就需要先安装grub-efi.


_________________
牛是牛顿的牛 毛是朱毛的毛


页首
 用户资料  
 
7 楼 
 文章标题 : Re: grub rescure> error: invalid arch independent elf magic
帖子发表于 : 2013-04-28 15:40 
头像

注册: 2010-10-27 20:43
帖子: 370
送出感谢: 2
接收感谢: 15
ai.学习学习再学习。
wiki
https://wiki.archlinux.org/index.php/Gr ... _systems_2


_________________
牛是牛顿的牛 毛是朱毛的毛


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 7 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:Youdao FeedFetcher 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译