我的ubuntu是硬盘安装的,如果ubuntu是wubi安装的请看这里.我对linux不精通,属于菜鸟一个,就按我的理解解释一些命令吧.如果错了希望高手能不吝赐教.
总结各种方法其实就是两个大步骤
第一:想办法进入ubuntu系统 //有liveCD方法(不一定用光盘,u盘也可以),有我用的这个方法
第二:重新安装并更新grub
一,下载这个文件grub4dos,将里面三个文件解压到Windows的安装目录,如C盘下.
二,重启进入grub4dos,下面开始输入命令.
1,切换到ubuntu的分区下
注:grub现在默认在你刚才解压的那个分区,如C盘.这句将目录切换到你的ubuntu所在分区,那个分区在哪里就自己试了.hd0代表第一块硬盘,一般都一块硬盘吧.root (hd0,?) //?号需要自己填写,看下面的注
?号自己尝试,我是从(hd0,1)试到(hd0,9).每次执行完都会提示当前filetype,如果提示ntfs或fat之类的就是Windows下的目录了.如果提示ext什么的,估计就是ubuntu了.
比如我试到(hd0,8)的时候提示ext2fs,然后我就ls一下,看到了我熟悉的ubuntu下的文件夹.那就是这个了,所以我的?号是8.
2,加载kernel
注:vmlinuz-????中的?号特简单,就是敲代码到vmlinuz的时候按一下TAB键自动补全,然后后面????的版本部分就自动补全了kernel /boot/vmlinuz-??????? root=UUID=????????????????????? ro quiet splash //?号自己填写,看下面注解
然后UUID不知道是多少怎么办?在执行这条命令之前,执行一下UUID就知道了.
重要注解:到了grub4dos下又不能上网看命令是什么,一时忘了怎么办?我就是这样的,我原来找的教程也不知道是哪个网址了.但是后来我想了这些代码好像见过.然后我就真找到了,就在中,所以大家可以直接照着grub.cfg敲命令就行,UUID信息也有.
cat /boot/grub/grub.cfg //查看文件
只不过里面有的代码不用敲,就找我说得上面那句就行了,然后他的第一个不是kernel而是linux我们就敲kernel,因为我尝试了linux失败.
3,加载initrd
initrd /boot/initrd-?????? //?号在敲命令到initrd的时候TAB键自动补全就行了
4,启动
boot
好了,几乎就成功了,你可以见到ubuntu了,已经正常启动进入ubuntu了.但是为了找回开机那个启动项,不用每次通过grub4dos启动.就只要 5,简单的在ubuntu的终端里输入两句代码sudo grub-install /dev/sda sudo update-grub
三,重启,进入windows后删除复制进windows盘的三个文件(这个随意,可删可不删)
OK,大功告成!