环境: ASUS MB VER K45VD 笔记本电脑一台( i5-3230M 处理器、 SATA 、 Nvidia)、 Windows7 系统

在 win7 下安装 CentOS7

使用 UltraISO(软碟通) 制作 U 盘启动盘
到官网下载安装镜像,插入 U 盘,打开 UltaraISO ,选中下载的镜像,依次点击“启动 -> 写入硬盘镜像”,在弹出的窗口中选择 U 盘,首先用 fat32 格式格式化 U 盘,然后选择写入方式“usb-hdd+”(这个方式根据电脑的硬件环境不同自行选择,有些老电脑不支持这个方式),点击写入开始向硬盘写数据。大概 10 分钟到 20 分钟即可完成,制作完后不用复制任何文件, U 盘大概使用了 4 G。这里还需要修改一下 U 盘中的文件,进入 U 盘,修改 isoLinux/sysLinux.cfg isoLinux/grub.cfg 文件(或者还有其他几个文本文件),修改里面关于启动 U 盘的名称改为现在 U 盘的名称,否则无法从 U 盘安装系统。

划分空闲分区
在 Windows7 下右击图标“计算机”进入计算机管理,点击“磁盘管理”,选择 Windows 分区空闲最多的分区,右击,点击“压缩”盘(最好是最后一个分区,可以将最后一个分区的文件移动到前面的分区),选择压缩的空间,我压缩了 150G 。

安装
重启电脑,选择从 U 盘启动;这里有一个 EFI 的启动方式(默认 u 盘启动会使用这种方式),这是一个较新的技术,选择这个方式和没有 EFI 在启动方式上有区别,似乎要使用 GPT 硬盘,选择哪种方式要看电脑硬件支不支持,较新的电脑一般会支持,我选择这两种方式都可以。选择启动方式后,会进入 CentOS7 的安装界面的选择项,一个是直接安装系统,一个是测试硬件后安装系统,建议测试下硬件是否支持。我选择直接安装系统,进入 CentOS7 图形安装界面,选择语言,选择时区,设置网络,系统分区,设置软件安装,设置 Kdump (用来检测系统错误信息,一般关闭 Kdump )。分区时首先选择手动分区,注意次序,先选择 /boot 分区,500M左右吧,这个分区会存放启动时的镜像文件(选择 efi 方式启动的要先分 /bootefi ,再分 /boot,而没选 efi 方式的会有一个 /bootbios 分区,我没有管它);选择根分区“/”,大概 50G(自己看情况选择大小咯), swap 分区,大概 4G , home 分区剩下的,保存选择,如果不能安装就再次分区,这次选择自动分区保存退出即可;注意选择安装的软件,软件源是本地 U 盘,不用设置,选择安装的软件种类时选择 Gnome ,并且将右边的相关软件都打钩(需要的),这样安装图形界面后有无线网络的图标,很方便(选择编程种类时虽然软件更齐全,但是没有无线网络的图标,设置网络麻烦,并且它的 DHCP 服务还不好设置),关于网络的设置参考可以我另外一篇随笔。

在 Linux 下找回 Win7 的启动项:
在/etc/grub.d/40_custom中添加如下语句增加 Windows7 启动项

menuentry 'Windows 7'{  
            insmod part_msdos  
            insmod ntfs  
            insmod ntldr  
            set root=(hd0,3)          # 我的 Windows7 的 boot 启动分区(有的电脑 boot 文件就在 c 盘里,但是我的被单独划分出了一个分区)是 /dev/sda3
            chainloader +1          # +1 前面有个空格
            boot  
    }

然后执行命令 grub2-mkconfig -o /etc/grub2.cfg (根据 grub2.cfg 文件位置选择目录),重启电脑即可;使用 Linux 系统后一段时间,执行上面的命令就能自动识别 Windows7 的启动分区了,不用在 /etc/grub.d/40_custom 中添加语句。

grub rescue

造成这种不良事故的罪魁祸首是我的好奇心和 testdisk 这个强大的数据恢复软件,很可怕的性能,我没有完全了解他的操作,结果将我的分区搞坏了,系统启动不了,之后好好研究下他的操作。

我的系统配置是:CentOS7,grub2,mbr。

grub rescue 修复过程:
grub rescue 中能用得到命令:
ls set prefix root insmod
首先输入ls查看系统中有几个启动盘,我的情况是(hd0) (hd0,msdos1)………如果你知道自己的启动盘可以略过这段。
然后依次使用ls (hd0,msdosX)这条命令,如果出现filesysrem未知,则你的grub不在这里面,出现file not found 或者一大串文件列表,并且有grub. cfg这个文件,那么恭喜你,找到grub所在的磁盘了,我的是(hd2,msdos)
我的/boot是单独分区的,使用grub2,因此下面的情况适仅适合/boot单独分区的咯,如果你是没有单独分区的情况,请到网上搜索,大致的过程一样,仅仅目录grub的位置不同(没有亲自实践,不敢肯定)。

执行下面几条语句:

set root=hd0,msdos2
set prefix=(hd0,msdos2)/grub2
insmod normal
normal

这样就可以正常启动了,具体参数视自己情况而定。
启动之后进入系统,执行下列命令,不然每次启动都要进入grub rescue ,很不好。
grub-mkconfig -o /boot/grub2/grub.cfg
grub2-install /dev/sda
这样就行了,网上资料说这样是重建了MBR分区。

重建grub2

使用livecd或者u盘安装盘,进入系统后有sh#提示符。

sudo mount /dev/sda2 /mnt    #/dev/sda2是grub2所在的分区,可以进入grub后使用find /boot/grub/grub.cfg找到。

sudo grub-install root-directory=/mnt /dev/sda      #/mnt是系统安装的位置,重建的grub2在第一硬盘。这里的根目录不是电脑硬盘的目录(这条命令似乎不行)

相关经历:

下面是我这次悲惨遭遇的缘由,悲惨是因为我的磁盘中除了Linux系统启动和运行需要的分区还完好外,其他的分区都被销毁了,也许在经历一番波折后还能找回来,毕竟在磁盘分区消失后我没有在上面进行任何操作,数据没有丢失,以此为鉴。

前段时间我的电脑系统还是win7,在vmware虚拟机中装ubuntu学习了Linux下的shell编程,之后一段时间学习了系统方面的知识,然后就想装个centos7——win7的双系统,个人更喜欢centos,ubuntu更适合入门吧。经历各种挫折后终于装好了,关于如何安装的centos7与win7双系统,以后有时间我会写一篇博文详细记录下来的,波折不少,记录下来对我现在的时间来说不允许。其中的经验既可以与你们分享,又能让自己在很久之后还记得自己的成长历程。

这次“事故”是因为我昨天在virtual box中装好了win7的虚拟系统,所以我就想将笔记本上的win7卸载了,直接在虚拟机中运行。想到就做到,我直接将win7系统盘格式化,然后执行

grub-mkconfig -o /boot/grub2/grub.cfg

这个命令,重启系统。之后正常就如centos的启动过程,可是一直卡在了一条进程上面

a starting run in /dev/system

system 是我的win7系统盘分区(被我格式化的那个分区),我设置在系统启动时默认挂载win7的系统分区在 /system 目录下,问题就出在这里,我将它格式化后系统无法识别这个分区,无法挂在,因此系统集一直卡在这里,无法进入图形界面。在网上赵了很久,还下载了testdisk这个强大的软件 *_* ,最终在archLinux.org找到了解决方法(archLinux.org是个很棒的网站,我很多问题都是在上面找到解决方法的,他并不局限谈论archLinux这个发行版的,并且网站的管理也很好,不过似乎中文的版面很少很少,英语要有点基础)。

解决方法就是修改 /etc/fstab 中有关挂载 system 分区的语句,将他注释掉,重启系统,OK。
问题全都完美的解决了,win7已经从我的硬盘中消失了(除了虚拟数据),perfect。

可惜我的手有点发痒,想起昨天下载的testdisk软件还没有实践过呢,要不要实践一下呢(魔鬼般的想法毁灭了我宝贵的数据,我写的程序都消失了吗?),于是我就用他来恢复了我的win7系统盘,扫描了一晚上,将数据全部扫描出来了,然后我就将他写进了系统中,重启系统,很顺利。之后我就进入了 grub rescue 这个大坑。一番bing 搜索之后,终于找到上面的方法重启了系统,修复了系统,可是万万没想到,我的system盘恢复了,其他的几个关键的数据分区消失了,痛心疾首啊,这时突然发现grub居然自动识别了 windows7 的启动程序,以下勾起了我的好奇心,我能不能在window上恢复我丢失的文件呢?想到做到,重启,进入win7。这里不得不佩服下testdisk了,win7居然一点没变的重启成功了,就好像我并没有格式化他一样(快速格式化只是改变磁盘的属性,并不会改变数据,而恢复数据就是重建磁盘的相关信息,所以只要不覆盖原来的数据,就可以完美恢复),然后我下载了一个360(以前都用金山,用了很久,感觉比360好用,但是在系统底层方面好像不是很擅长,我感觉自己系统有些问题,可是他一直没有检测出什么问题,一直没有检测出来我的耳机驱动有什么问题,就是插上耳机没有声音。可能底层的问题和这些所谓的电脑管家、电脑助手关系不大,可惜我想修复下系统都不行,驱动精灵也是坑),希望他能修复我的系统引导问题,以前我就用360重装过系统,不过360除了要你绑定一大堆软件外,并没有什么用哈。

然后我就重启进入了centos,再次删除了system这个盘。这就是这次数据丢失的全过程了,我还期望用testdisk恢复我的数据呢。希望这篇文章能帮到和我有相似经历的同学,切忌不要再已经删除的分区上进行任何操作,除非你确定上面没有什么重要的数据,否则书局恢复软件也回天乏力,我在操作磁盘的过程中,看到root home boot 一类的Linux 安装时创建的分区后都远远避开,即使只是大小和他们相同的磁盘也绝对不进行任何操作,否则我现在就不是在这里写下我的经验,而是重装系统了。

吐槽

这里吐下槽,博客园在手机上的网页版有点问题啊,我在手机的记事本中编辑了这个博文,打开手机浏览器,进入我的博客,想粘贴这段文字,因为我使用的google输入法,没有粘贴选项,平时都是使用andriod自带的粘贴功能,可是我在编辑博文时发现无法调用andriod的粘贴功能,结果我通过邮箱,在电脑中打开邮件才将这篇博文发布上来了,希望博客园越做越好,喜欢这个清净的地方。

参考:

http://blog.hellosa.org/2010/11/29/grub-grub2-rebuild.html
http://www.mintos.org/newbie/ubuntu-restore-grub2.html
http://ying.hopto.org/wp/%E4%BD%BF%E7%94%A8grub2%E9%87%8D%E5%BB%BAmbr/
http://blog.csdn.net/sdfgh2046/article/details/5770810

转载于:https://www.cnblogs.com/little-snake/p/4592901.html

CentOS7 win7 u盘装双系统 修复系统相关推荐

  1. 双系统装完只能u盘启动_u盘装双系统开机没有系统选择界面怎么解决

    u盘装双系统开机没有系统选择界面怎么解决?现如今,使用u盘安装双系统已经是一件很常见的事情了,但是最近却有用户用u盘装win7+win8双系统的时候遇到了这样的情况,安装完win7系统后,进行win8 ...

  2. 新计算机如何用光盘安装系统,win7如何用光盘装系统_使用光盘重装win7系统步骤...

    当电脑遇到一些问题导致无法使用的时候,很多用户都喜欢重装系统,那么最简单的就是使用光盘或者U盘来安装,许多用户可能还不知道win7如何用光盘装系统,为了帮助到大家,小编给大家演示一下使用光盘重装win ...

  3. hp服务器装系统用usb启动不了怎么办,惠普电脑u盘装不了GHOST系统怎么办

    惠普电脑u盘装不了GHOST系统怎么办?GHOST系统因为只是将GHOST文件复制到电脑进行操作系统的快速安装,耗时短,受到了很多用户的喜爱,但是最近有用户跟小编反映,惠普电脑u盘装不了GHOST系统 ...

  4. Ubuntu系统修复系统拼音输入法

    Ubuntu系统修复系统拼音输入法 只需进入终端,输入ibus-daemon -drx,回车即可

  5. 【解决】U盘装系统(Win7/Win8) 装双系统

    作为一名计算机的学生,不会装系统是不是会被笑掉大牙?!! .. 我一直就不太会(不是不会,是不熟练) .. 所以今天闲着没事,把旧电脑捣鼓起来 .. 主要是为了熟悉U盘装系统和装双系统的步骤 .. 基 ...

  6. 如何使用u盘装win7 u盘装win7系统图文教程

    用U盘装系统装Win7已经不是什么新鲜事,网上也有一大堆U盘装系统教程--教程虽多,但大多良莠不齐,笔者希望用真实案例,一步一步教大家学会用户U盘装系统,懂了怎么用U盘安装Win7,一通百通,无师自通 ...

  7. 电脑引导那些事(2)--UEFI下win8.1咋改win7,咋装双系统,咋不能激活?

    前言 上篇已经说明了电脑引导两种方式,本篇详细说说我在帮别人装系统中得到的一些经验.对于现在UEFI主板的电脑装系统我们不能总是格了硬盘换成MBR分区表,然后按照传统的方式安装系统.我们要学习新的技术 ...

  8. u盘装红帽子6.5系统linux,哪位大神会用红帽子6.5版本的linux系统

    哪位大神会用红帽子6.5版本的linux系统 更新时间:2019-03-10 08:48 最新回答 linux的大体安装过程和win系统差不多,但是安装过程中多了一个 设置交换分区(与虚拟内存的作用详 ...

  9. u盘装红帽子6.5系统linux,红帽linux系统下载|红帽linux(RHEL) v6.5 beta 官方版 - 软件下载 - 绿茶软件园|33LC.com...

    红帽linux(RHEL)因其易于安装而闻名,在很大程度上减轻了用户安装程序的负担.RedHat作为Linux的发行版本,开放源代码是与其他操作系统,如Windows等相比具有的先天优势,有利于全世界 ...

最新文章

  1. 软件工程第二次作业—结对编程
  2. Cannot open the disk 'E:/vmware/Ubuntu.vmdk' or one of the snapshot disks it depends on. 解决方法
  3. [react] 怎么在JSX里使用自定义属性?
  4. php中多选提交如何获取,php中checkbox值获取,显示,多选值获取
  5. 盘点 8 种最坑的 SQL 错误用法
  6. SOLID,GRASP和面向对象设计的其他基本原理
  7. 全局变量定义的时候左侧加了static_c语言中static 用法
  8. java 实现WebService 以及不同的调用方式
  9. 模糊PID控制算法 之 C语言实现
  10. 装机必备的100个软件下载和注册码
  11. android 检测cpu温度传感器,软件是如何测量手机CPU温度的?即使手机没有温度传感器...
  12. 6-2 折半查找的实现 (10 分)
  13. 细数SuperComputer最新排名和常见Benchmark类型
  14. Lunece介绍和简单实用
  15. 大数据分析与挖掘期末复习
  16. 力天创见仓库客流管控方案
  17. 互联网晚报 | 10月20日 星期三 | 小米汽车预计2024年量产;阿里发布自研CPU芯片倚天710;《长津湖》票房破50亿元...
  18. php中Mysql常用操作类收集
  19. from vision import VisionDataset报错
  20. 定制linux版本,定制属于自己的Linux操作系统

热门文章

  1. 坐标系与右手定则(OpenInventor使用的坐标系统)
  2. 链表的基本操作(创建链表、插入结点、删除结点)
  3. httpclient发送Get请求和Post请求
  4. ambc现在什么情况_凤凰金融现在什么情况啊
  5. CA认证与节点保密通信系统的设计与实现
  6. android 检验助手,英腾检验助手APP
  7. Jmeter接口测试①——POST请求
  8. 老旧系统改造,彻底重构还是给老系统减负?
  9. MySQL根据中文汉字排序查询
  10. 学位论文Latex转Word