linux使用--9.grub各种引导的恢复
来源:互联网 发布:知乎每周精选232期 编辑:程序博客网 时间:2024/06/07 12:54
一.装XP之后修复ubuntu的引导
1. 用ubuntu-14.04-desktop-amd64.iso做一个引导u盘
2. u盘启动系统进入LiveCD模式
3. grub-install解决问题
二. grub rescue: no such partition
ubuntu下删除了某个分区,导致系统启动时出现grub rescue: no such partition
1.在grub rescue下进入到正常模式
a. 查看ubuntu的/boot在哪个分区中
b.从rescue模式到normal模式
2. grub normal模式下引导系统启动
3. 进入系统
参考文章
https://wiki.archlinux.org/index.php/GRUB_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
三. xp+ubuntu双系统中mbr的修复
1.系统出问题了,在进入grub界面之前直接重启,难道这就是传说中的硬盘逻辑锁吗?第3步:挂载ubuntu的各种分区,即重建原先在磁盘上的文件系统目录结构,建好之后,chroot过去,并用update-grub和grub-install将grub安装到mbr,使之可以多重引导。 3.2 这下grub修复之后,windows又没有了,进入ubuntu
这下两个都有了
1. 用ubuntu-14.04-desktop-amd64.iso做一个引导u盘
2. u盘启动系统进入LiveCD模式
3. grub-install解决问题
- cong@msi:~$ sudo -i --> 切换到root下
- root@msi:~# fdisk -l --> 查看ubuntu装在哪个分区下,我这儿是/dev/sda7
- Disk /dev/sda: 1000.5 GB, 1000456224768 bytes
- 255 heads, 63 sectors/track, 121631 cylinders, total 1954016064 sectors
- Units = sectors of 1 * 512 = 512 bytes
- Sector size (logical/physical): 512 bytes / 4096 bytes
- I/O size (minimum/optimal): 4096 bytes / 4096 bytes
- Disk identifier: 0x000c4529
- Device Boot Start End Blocks Id System
- /dev/sda1 * 2048 41945087 20971520 7 HPFS/NTFS/exFAT
- /dev/sda2 41947134 1954016063 956034465 f W95 Ext'd (LBA)
- Partition 2 does not start on physical sector boundary.
- /dev/sda5 41947136 83890175 20971520 7 HPFS/NTFS/exFAT
- /dev/sda6 1912075072 1954016063 20970496 82 Linux swap / Solaris
- /dev/sda7 83892224 251657848 83882812+ 83 Linux
- /dev/sda8 251660288 1912072191 830205952 83 Linux
- Partition table entries are not in disk order
- root@msi:~# mount /dev/sda7 /mnt/ -->挂载ubuntu的根文件系统到/mnt
- root@msi:~# grub-install --root-directory=/mnt /dev/sda -->把grub的引导写到mbr
ubuntu下删除了某个分区,导致系统启动时出现grub rescue: no such partition
1.在grub rescue下进入到正常模式
a. 查看ubuntu的/boot在哪个分区中
- grub rescue>ls --->ls 查看当前有多少个分区
- (hd0),(hd0,msdos1),(hd0,msdos8),(hd0,msdos9),(hd0,msdos6)
- ---->ls查看每个分区的内容,看boot文件位于哪个分区
- grub rescue>ls (hd0,msdos1)/
- unknown partition..
- grub rescue>ls (hd0,msdos8)/
- ---> 如果会出现 boot 等目录,说明/boot就是在这个分区
- grub rescue>set root=(hd0,msdox8)
- grub rescue>prefix=(hd0,msdos8)/boot/grub
- grub rescue>insmod normal -->注意这儿是normal,没有后缀
- grub rescue>normal -->这儿会出现启动菜单,按c进入命令行模式
- grub>set root=(hd0,msdos8)
- grub>set prefix=(hd0,msdos8)/boot/grub
- grub>linux /boot/vmlinuz-xxx-xxx root=/dev/sda8 -->注意这儿的root=后面的参数就是根文件系统的设备结点
- -->不加这个参数,系统会进入initramfs中
- grub>initrd /boot/initrd.img-xxx-xxx
- grub>boot -->这儿就会引导系统启动
- cong@msi:~$ sudo update-grub2 -->更新grub2的配置
- 重装grub2到mbr,若不重装启动时还是会进入grub rescue模式,提示normal.mod文件找不到
- cong@msi:~$ sudo grub-install --target=i386-pc --recheck --debug /dev/sda
https://wiki.archlinux.org/index.php/GRUB_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
三. xp+ubuntu双系统中mbr的修复
1.系统出问题了,在进入grub界面之前直接重启,难道这就是传说中的硬盘逻辑锁吗?
问题判断: 这应该是mbr被修改了,修复一下。但问题是我这是双系统,修复之后两个系统都要正常引导才可以,最好的解决方法是有一张ubuntu的安装光盘,但是我只有一张xp的ghost盘,没办法,只好迂回一下了。
1. 用xp的ghost盘修复mbr,这样可以进入xp,但是grub没有恢复。
2. 安装grub4dos,用ubuntu的安装镜像从硬盘启动ubuntu
3.进入磁盘镜像中的ubuntu后,修复grub
下面就分别说一下。
第1步:没有什么技术含量,光盘启动ghost的xp,进入diskgen,点菜单中的修复mbr就可以了。这样会把以前坏的mbr覆盖,当然双系统的grub也没有了,所以启动时只能时入xp。
第 2步:说明一下ubuntu的两种镜像:desktop和alternate, 这两种镜像在硬盘安装时有区别,desktop硬盘安装时直接解压出iso中的vmlinuz和initrd.gz文件就可以引导,alternate硬 盘安装时需要另行下载vmlinz和initrd.gz文件。
- 不管是解压出来的还是网上下载的vmlinz initrd.gz 还有ubuntu的镜像一律放在C盘根目录中。
- 2.1 安装grub4dos, 网上下载grub4dos0.4.4(不要下太老的版本),解压出grldr放到C盘根目录,然后boot.ini文件最后添加一行 c:\grldr="Ubuntu 10.10"
- 2.2 解压出ubuntu-10.10-desktop-i386.iso中的casper中的vmlinuz和initrd.lz,放在C盘根目录,最后把ubuntu-10.10-desktop-i386.iso也放在C盘根目录
- 2.3 在C盘根目录,建立menu.lst,内容如下。
- title Install Ubuntu 10.10(10.10)
- root (hd0,0)
- kernel /vmlinuz boot=casper iso-scan/filename=/ubuntu-10.10-desktop-i386.iso ro quiet splash locale=zh_CN.UTF-8
- initrd /initrd.lz
- boot
- 这样在重启时就可以进入ubuntu的光盘镜像了。
3.1 从LiveCD的Desktop进入ubuntu,打开一个terminal
- root@ubuntu:/# sudo su
- root@ubuntu:/# mkdir –pv /mnt/test
- root@ubuntu:/# mount /dev/sda5 /mnt/test/
- root@ubuntu:/# mount --bind /sys/ /mnt/test/sys/
- root@ubuntu:/# mount --bind /dev/ /mnt/test/dev/
- root@ubuntu:/# mount --bind /proc/ /mnt/test/proc/
- root@ubuntu:/# chroot /mnt/test/
- root@ubuntu:/# update-grub
- Generating grub.cfg ...
- Found linux image: /boot/vmlinuz-2.6.35-22-generic
- Found initrd image: /boot/initrd.img-2.6.35-22-generic
- Found memtest86+ image: /boot/memtest86+.bin
- done
- root@ubuntu:/# grub-install /dev/sda
- Installation finished. No error reported.
- 如果出现下面的错误,说明目录结构没有挂载正确,要重新挂载:
- "no /boot/grub/grub.cfg or it’s not correct, create one usingupdate-grub"
- root@ubuntu:~# update-grub
- Generating grub.cfg ...
- Found linux image: /boot/vmlinuz-2.6.35-22-generic
- Found initrd image: /boot/initrd.img-2.6.35-22-generic
- Found memtest86+ image: /boot/memtest86+.bin
- Found Microsoft Windows XP Professional on /dev/sda1
- done
0 0
- linux使用--9.grub各种引导的恢复
- 恢复Linux操作系统的GRUB引导程序
- 使用grub引导恢复linxu引导
- 重装win7后恢复linux GRUB引导菜单的方法
- 恢复 Grub 引导
- grub引导恢复
- 使用GRUB引导linux和winxp双系统
- 重装系统后,恢复GRUB引导
- linux的引导流程grub的配置
- Linux下GRUB引导的问题
- 通过GRUB引导安装Linux的方法
- 删除grub引导的linux双系统
- GRUB下对linux系统的引导
- 恢复9.10Grub引导过程的离奇经历以及解决方法
- 恢复Ubuntu 9.10 GRUB引导的方法适用于10.04
- 再生龙恢复Ubuntu之后的grub引导修复方法
- Grub引导Linux + Windows
- linux 引导 启动 grub
- SQLite数据库中索引的使用、索引的优缺点
- spring组件及架构
- QQ邮箱查看好友/发件人IP地址
- tjut 3499
- jsp调用服务器上的其他程序(C程序)
- linux使用--9.grub各种引导的恢复
- 侧滑菜单
- MySQL之order by 优化(1)
- 银行卡三元素实名认证
- 事务!!事务!!
- radiogroup+radiobutton与viewpager购成页面
- linux使用--10.用gimp画图
- 那些年撸代码遇到的让人心酸bug-------ajax异步请求数据不成功
- Jquery click函数传参问题