admin 管理员组

文章数量: 1086019


2024年6月7日发(作者:less和sass)

用Ubuntu的安装CD,也就是Live CD从光驱启动,打开一个终端窗口,在里

面输入如下命令:

sudo -i (获得超级用户权限)

mount /dev/sda7 /mnt (也就是你的Ubuntu的“/”的挂接硬盘分区,比如sda7,

根据你的具体安装情况确定,/mnt是你建立的一个用来挂接的目录)

如果你单独划分了Ubuntu的boot分区,那么还需要做如下操作:

mount /dev/sda6 /mnt/boot (假设你的boot分区是在sda6)

挂载你其他的分区,如果有的话

重建grub到sda的mbr

grub-install --root-directory=/mnt /dev/sda

然后,重启,就应该可以了

无CD修复ubuntu启动项

本人是按下面方法解决的,已经成功。

我的linux在调整分区后,出现了grub rescue>

这表示grub2的配置文件坏了,由于分区调整或分区UUID改变造成GRUB2不能

正常启动,从而进入修复模式(grub rescue)也称救援模式。

在救援模式下只有很少的命令可以用:

set , ls , insmod , root , prefix

(1)set 查看环境变量,这里可以查看启动路径和分区。

(2)ls 查看设备

(3)insmod 加载模块

(4)root 指定用于启动系统的分区,在救援模式下设置grub启动分区

(5)prefix 设定grub启动路径

一、分区乱了,我不知道boot目录在什么地方了

ls #查看一下设备状态

如图:

grub rescue救援模式的处理 - 汉斯的遗忘 - 汉斯的遗忘

grub rescue> ls (hd0,msdos3)

error: bad filename.

提示:错误的文件名,我在测试时发现必须是后面加一个/

grub rescue> ls (hd0,msdos3)/

./ ../ lost+found/

通过查看发现在(hd0,msdos1)/下有一个boot目录

二、设置grub的启动分区和路径

set root=(hd0,msdos1) #设置grub启动分区

set prefix=(hd0,msdos1)/boot/grub/ #设置grub启动路径

查看一下设置情况:

grub rescue> set

prefix=(hd0,msdos1)/boot/grub

root=hd0,msdos1

三、加载基本模块

insmod /boot/grub/ #加载基本模块

四、进入正常模式

normal #进入正常模式,出现菜单,如果加载(错误的)可能出现问

题,按shift可以出现菜单,之后按c键进入控制台

进入正常模式后就会出现grub>这样的提示符,在这里支持的命令就非常多了。

五、引导系统

set root=(hd0,msdos1) #设置正常启动分区

linux /boot/vmlinuz .... ro text root=/dev/sda1 #加载内核,进入控制

台模式

initrd /boot/initrd .... #加载

boot #引导

六、更新grub

安装:grub-install /dev/sda

更新:update-grub


本文标签: 分区 启动 模式 查看 设置