A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

YMr6bnaR

初级黑马

  • 黑马币:43

  • 帖子:16

  • 精华:0

© YMr6bnaR 初级黑马   /  2017-11-3 19:51  /  1883 人查看  /  3 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 YMr6bnaR 于 2017-11-3 19:55 编辑

来到黑马学习不知不觉已2月有余,总体感觉这里的学习氛围还是不错的,一个集体的学习氛围其实很大程度上决定了一个人学习的状态,老师也比较负责,在休息的时候也会给我们补课……
写感想不是我的擅长,话不多说,直接进入正题
以下文字针对windows和linux双系统的用户有帮助

前天由于电脑的突然断电,导致硬盘出现坏道,顺便说一句,突然断电对计算机的伤害确实比较大的
所以有条件的最好配一个ups,直接导致我的两个系统都进不去,windows系统进不去,是由于硬盘的坏道,而linux系统没进不去,是由于我在重装windows7系统的时候,对分区表的修改问题

定位不能启动的根源,并将其修复是非常耗费时间的,急着要用电脑,所以直接选择重装,win7
与其说是重装,不如说还原来的贴切,使用winpe系统进入,并还原,系统重装本身花不了多少时间,关键是自定义的软件,要装很久

接下来准备修复linux系统的启动问题,我的电脑引导加载程序是windows的boot manager,windows接着调用grub2,(注意,版本是2),以此来完成两个系统的启动,上一次和grub打交道还是在去年,印象有点模糊了
打开diskgenius,无法识别linux分区,扫描丢失分区也只能找到唯一的一个启动分区

直接通过easybcd,添加启动点,重新启动,发现进不去

直接进入了grub4dos命令行
执行ls命令也只能显示c盘下的文件

接着,通过livecd,或者U盘启动进入ubuntu,i浏览文件,居然根本就无法识别linux分区,使用gparted,整个硬盘显示未格式化




以下是重点,使用testdisk,这是一个命令行程序,可以完整识别整个硬盘分区,对硬盘分区进行必要的操作,并保存后,分区修复完成

重新进入windows系统,添加bcd入口,重启后分区可以识别
但是仍然不能进入系统,进入的是grub rescue界面

使用ls命令,罗列所有的磁盘分区信息
依次调用如下命令:X表示各个分区号码

grub rescue>ls (hd0,X)/boot/grub X是上边显示的各个数字
这个过程很枯燥,但是除非你记得linux启动区安装位置,否则只能一个一个尝试
当显示的不再是Unkown file system,表示该分区就是linux启动区(linux启动区因人而异,我的通常做法是/boot另外分区
调用如下命令:
grub rescue>set root=(hd0,5)

grub rescue>set prefix=(hd0,5)/boot/grub
grub rescue>insmod normal
grub rescue>normal
这四条命令中的前两条因人而异
至此,正常进入系统,该图显示的是gnome3




工作没有做完,进入Linux之后,在命令行执行:
sudo update-grub


还有一条,这是重点
如果你在网上搜索相关教程,接下来这条是
sudo grub-install /dev/sda
这条命令会覆盖硬盘mbr
但我有一个原则,能在最坏的情况下也能使电脑正常运行,所以我从不用grub引导windows,永远只用windows的boot manager引导linux
所以只安装到/boot分区,而非整个硬盘
执行
sudo grub-install /dev/sda7(该数字因人而异)
在正常情况下,总会报错
Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged..

/usr/sbin/grub-setup: error: will not proceed with blocklists.
在这里,我使用了--force参数
sudo grub-install --force /dev/sda7


至此,所有工作完成
说来简单,如果没有相关参考,很难进行
除了多用man命令
参考链接:
https://help.ubuntu.com/community/DataRecovery
https://ubuverse.com/recover-a-disk-partition-with-testdisk-and-gparted-live/
https://askubuntu.com/questions/139966/how-can-i-add-an-entry-for-ubuntu-to-the-windows-7-boot-menu
http://www.cnblogs.com/studyone/p/5500679.html
https://wiki.debian.org/BootLoader

更多图片 小图 大图
组图打开中,请稍候......

3 个回复

倒序浏览
秋子菇凉 来自手机 中级黑马 2017-11-3 22:40:37
沙发
不错的学习心得分享,赞一个
回复 使用道具 举报
fandongyang 来自手机 初级黑马 2017-11-3 22:42:55
藤椅
哎呦不错哦
回复 使用道具 举报
老铁,虚拟机才是无敌的,随便怼
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马