ubuntu 系统中prefix 如何设置,用来解决开机界面中出现的error:prefix is not set

 我来答
hixtao
推荐于2016-06-06 · TA获得超过1099个赞
知道小有建树答主
回答量:468
采纳率:85%
帮助的人:323万
展开全部
参考:kinds的日记
http://www.douban.com/note/66041888/

#注意硬盘的分区表示方法。
grub 下(hd0,0) (hd1,1) ....代表分区 (hd0) (hd1)代表整个磁盘

linux下 /dev/sda1 /dev/sdb1 代表分区,/dev/sda /dev/sdb代表整个磁盘。
这里用x代表grub文件所在的分区。

x只是一个未知数,根据你系统安装时的分区情况决定
#hd(0,1),就是linux下的/dev/sda1,第一硬盘,第一分区。
#hd(1,1),对应/dev/sdb1,是第二硬盘,第一分区。

如果你不清楚具体参数,不妨多试一试:
set root=(hd0,1)
或者set root=(hd1,1)

现在正式开始:

第一步,引导系统启动。首先,你需要把root设置成/boot/grub所在的分区。
grub rescue>set root=(hd0,x)

#你可以使用ls (hd0,x)/ 查看根目录下的内容,来判断/boot/grub在哪一个分区
grub rescue>set prefix=/boot/grub

grub rescue>insmod normal -------->若出现启动菜单,按c进入命令行模式

grub rescue>insmod linux

grub rescue>linux /boot/vmlinuz-xxx-xxx root=/dev/sdax

#这里root=/dev/sdax
很重要,指定系统内核启动后到哪里挂载根分区,如果挂载失败,ubuntu就会drop to busy box
进入命令行模式。这时,你就需要重启机器,测试其他可能root=/dev/sda1或者root=/dev/sda3
甚至/dev/sdg1. 只要你敢试,就不怕打不开。

grub rescue>initrd /boot/initrd.img-xxx-xxx

rescue>boot
内核版本号 -xxx-xxx可以按Tab键查看后再手动补全。

第二步:登录系统后,重新安装grub到/dev/sda, 这里a后没有数字,代表整个硬盘,grub-install将会把引导代码写到第一硬盘的MBR主引导记录上。

sudo grub-install /dev/sda --boot-directory=/boot/grub

第三步:重新生成grub配置文件--/boot/grub/grub.cfg #这是开机菜单,相当与原来的menu.list
匿名用户
2013-08-15
展开全部
prefix 一般是某个软件安装时指明安装目录用的

configure --prefix=/opt/test
make & make install



开机中的?那是某个软件提示的吧。系统默认是不会有的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嗨阿达西瓦
2013-08-17
知道答主
回答量:9
采纳率:0%
帮助的人:1.3万
展开全部
我也是这问题么,好难好难啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式