Ubuntu不显示了!怎么办?

2024-12-15 03:26:12
推荐回答(3个)
回答1:

你的问题描述不详细啊,我把几种可能列出来:

1、双系统,重装windows引起没有ubuntu启动项

使用安装版的windows重装windows时会改写mbr,造成grub丢失,可以用grub4dos引

导进入ubuntu后修复grub或用livecd启动后修复grub。

1)用grub4dos修复ubuntu

先下载最新版的grub4dos,下载地址http://nufans.net/grub4dos/ ,如果是xp系统,

把grub4dos压缩包内的grldr复制到C盘根目录下,修改boot.ini,在最后加上一行

c:\grldr="grub4dos",

对 于vista/win7系统,把压缩包内的grldr.mbr和grldr复制到C盘根目录下,在C盘自己

建立一个boot.ini文件,若有boot隐 藏分区的,先给boot分区分配盘符,再把grldr,

grldr.mbr和boot.ini放在boot分区下,boot.ini内容如下:(底部图)

Win7使用软改激活的请不要使用此方法,否则会造成

使用软改激活的请不要使用此方法,否则会造成win7不能启动。

不能启动。

然后在根目录新建一个menu.lst,内容为

timeout 0

default 0

title grub2

find --set-root /boot/grub/core.img

kernel /boot/grub/core.img

boot

(有/boot分区的改为

find –set-root /grub/core.img

kernel /grub/core.img)

重启后选择Grub4Dos会自动转入grub2,从grub2菜单项选择ubuntu启动后,在终端

执行

sudo grub-install /dev/sda

将grub装入第一硬盘的mbr,如要装入第二硬盘的mbr把sda改为sdb,第三硬盘为

sdc,类推。

至于要把grub装到sda或sdb或sdc的mbr上,需根据自己情况确定,看看要设置哪一块

硬盘为启动盘,就把grub装到那块硬盘的mbr上

2、安装时grub没装在mbr上而选择装在linux分区的pbr上,怎么引导ubuntu

1)按前面的方法一,以grub4dos引导转入grub2。

2)把ubuntu分区/boot/grub目录下的boot.img提取出来,放到C盘根目录下,然后修

改boot.ini,在最后添加一行 C:\boot.img="grub2"

对vista/7可在C盘新建一个boot.ini,内容为

[boot loader]

timeout=0

default=c:\boot.img

[operating systems]

c:\boot.img="grub2"

重启后选择grub2就可进入grub2菜单。

此法兼容性较差,成功率低,仅供测试。

3、由于分区调整引起分区号或分区UUID改变造成的grub2不能正常启动

己安装好系统,对硬盘再次进行分区调整时可能会改变现有分区的分区号发生变化,

或者某种原因改变启动分区的UUID,都会造成grub2不能正常启动,而启动进入修复

模式(grub rescue),这时就要对grub进行修复。

1)用ubuntu9.10的livecd光盘启动,进入试用桌面系统后,再修复grub,操作方法如

第一种情况的第二种方法—

2)在rescue模式下启动并修复

由于分区问题,启动时会自动进入rescue模式,只要grub核心文件还在分区内,就能

由rescue模式转到normal模式,进而通过命令进入系统。下面这个就是rescue介面:

error: unknown filesystem

grub rescue>:

由于在rescue模式下,只有少量的基本命令可用,必须通过一定的操作才能加载正常

模块,然后进入正常模式。

rescue模式下可使用的命令有:set,ls,insmod,root,prefix(设置启动路径)

先假设grub2的核心文件在(hd0,8)分区,再来看看怎样从rescue模式进入从(hd0,8)启

动的正常模式(normal)。

在rescue模式下search命令不能用,对不清楚grub2文件处于哪个分区的,可以用ls命

令查看,比如

ls (hd0,8)/ 查看(hd0,8)分区根目录,看看有没有boot文件夹

ls (hd0,8)/boot/ 查看(hd0,8)分区的/boot目录下文件

ls (hd0,8)/boot/grub/ 查看(hd0,8)分区/boot/grub目录下文件

通过文件查看,可以确定grub2核心文件处于哪个分区,接下来就可以进行从rescue到

normal的转变动作:

先 ls 看看分区,根据分区列表,猜下 / 分区的编号再 ls (hd0,x)/ 看分区目录下文件确

定找到 / 分区,不对的话继续找。找到 / 分区的 (hd0,x) 继续

grub rescue>root=(hd0,x)

grub rescue>prefix=/boot/grub

grub rescue>set root=(hd0,x)

grub rescue>set prefix=(hd0,x)/boot/grub

grub rescue>insmod normal

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

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

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

rescue>boot

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

有 /boot分区的,要先找出 /boot 分区 (hd0,x),再找出 / 分区的 (hd0,y),同样用 ls

(hd0,x)/ 和 ls (hd0,y)/ 的方式确定分区

grub rescue>root=(hd0,x)

grub rescue>prefix=/grub

grub rescue>set root=(hd0,x)

grub rescue>set prefix=(hd0,x)/grub

grub rescue>insmod normal

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

rescue>linux /vmlinuz-xxx-xxx root=/dev/sday

rescue>initrd /initrd.img-xxx-xxx

rescue>boot

说明:

1)由于grub2版本的的不一致,有的可能在第9步insmod normal.mod加载正常模块后

直接进入normal模式,即出现了normal grub>的提示符,这种情况就不能执行第10

步,即可以跳过normal命令的输入。

2)虽然输入normal命令会出现菜单,但由于缺少加载内核的Linux命令,直接从菜单

不能进入系统,需要按c在命令行继续操作。

3)使用/boot单独分区的,要正确修改路径,如

prefix=(hd0,8)/grub

insmod /grub/normal.mod

另外root=/dev/sda8也要修改根分区的分区号。

4)按boot启动系统后,再在系统下打开终端,执行命令修复grub

重建配置文件grub.cfg

sudo update-grub

重建grub到第一硬盘mbr

sudo grub-install /dev/sda

4、双硬盘双系统 Grub Loading时间过长的解决方案

grub2的boot.img设定root的uuid从第一分区开始搜索分区的/boot/grub下的模块并加

载, 如果linux分区处于第二硬盘甚至第三硬盘,会导致搜索时间过长而,出现菜单时

间会长达10多秒。

对双(多)硬盘的情况建议把grub安装在ubuntu所在硬盘的mbr上,/boot分区或 / 分

区 尽量靠前,并设该硬盘为启动盘,会大大缩短启动时间。

回答2:

我遇到你这样的问题,我认为能修好的可能行真的不大,所以你考虑下重装双系统,没事别在Ubuntu下打开windows系统C盘的东西,Windows很娇贵,不小心改了哪个地方都会让它进入系统修复,而且这个修复真的真的是形同虚设啊~~
你的数据可以用Ubuntu的安装盘来恢复,你可以用Ubuntu的安装盘启动,这个我就不说了吧~~,然后选第一项进去,你电脑上所有盘里的数据都可以考到移动硬盘里。。
好运~
另外对于上楼聊表不同意见,觉得Windows7引导启动过于麻烦,初学者估计学不来,做双系统的话,可以先装Win7再Ubuntu,重装win7后可以用这个恢复ubuntu启动项。
http://zhidao.baidu.com/question/157881614.html?si=1

回答3:

login incorrect的原因是控制台不认小键盘的数字,比如123必须打!@#这3个数字,startX试试