Win7 启动修复
先让我们看一下windows7的启动过程的常识:电脑加电后,首先是启动BIOS程序,BIOS自检完毕后,找到硬盘上的主引导记录MBR,MBR读取DPT(分区表),从中找出活动的主分区,然后读取活动主分区的PBR(分区引导记录,也叫dbr),PBR再搜寻分区内的启动管理器文件BOOTMGR,在BOOTMGR被找到后,控制权就交给了BOOTMGR。BOOTMGR读取\boot\bcd文件(BCD=BootConfigurationData,也就是“启动配置数据”,简单地说,Windwows7下的bcd文件就相当于xp下的boot.ini文件)。在我们启动Windows7后,BOOTMGR就会去启动盘寻找WINDOWS\system32\winload.exe,然后通过winload.exe加载windows7内核,从而启动整个windows7系统。
可以把这个过程简单地概括为:
BIOS->MBR->DPT->pbr->Bootmgr->bcd->Winload.exe->内核加载->整个windows7系统。
MBR->DPT->pbr->Bootmgr->bcd这一段可能出现的故障的解决。
mbr出现问题,主要是mbr代码被改写,因为被改写的代码不同,所以出错信息也各不相同。比如我们装了Windows7系统,分区格式化后,既进不了windows7,开机的时候会出现如图的错误提示:
解决的办法就是重写mbr。对于重写。对于重写mbr,我们所熟知的是在dos下用fdisk/mbr命令进行重写。Fdisk/mbr重写的mbr与xp是兼容的,但与Windows7已经不那么兼容了。实践表明:用fdisk/mbr命令重写windows7的mbr后,需要重建bcd,否则不能正常启动windows7。这里面的原因是fdisk/mbr命令改写了mbr中的硬盘签名。一般分区工具都是可以重写mbr的,比如diskgenius,它所重写的mbr与windows7是兼容的。也可以用bootrec/fixmbr命令重写。要运行ootrec.exe工具,必须启动WindowsRE。为此,请按照下列步骤操作:
插入windows7安装光盘,从启动电脑完成后,从启动电脑在完成后按下shift+f10键,调出cmd命令提示符。在cmd命令提示符中输入:
bootrec/fixmbr
回车。这样也就重写了mbr。
pbr出现问题,主要是pbr代码被改写,因为硬盘件不同所以出错信息代码被改写。比如WINDOWS7系统的活动分区,却被写入了适合于XP的pbr,这样,这样开机的时候就会出现ntldrismissing
简单的解决办法就是用bootrec/fixboot命令重写pbr:
插入windows7安装光盘,从启动完成后按下shift+f10键,调出cmd命令提示符。在中输入:
bootrec/fixboot
回车。这样也就重建了活动分区的pbr。
这里面还有一个常用的命令也要提下,这就是bootsect:
插入windows7安装光盘,从启动在完成后按下shift+f10键,调出cmd命令提示符。在cmd命令提示符中输入:
bootsect/nt60sys/mbr
回车。这个命令会改写活动分区的pbr,并同时会改写mbr,使得mbr和pbr适合于windows7和vista。
bootsect.exe程序位于windows7安装光盘的boot目录下,可以把这个文件提取出来,而bootrec.exe命令的使用就没这么方便了。所以BOOTSECT命令被应用得更为广泛一些。
Win7 启动修复的更多相关文章
- Win7启动修复MBR(Win7+Linux删除Linux后进入grub rescue的情况)
事因:我的笔记本原先同时安装了Win7+Linux,昨天发现硬盘实在不够用(才60G,虽然还有个500G的移动硬盘),就想把里面的Ubuntu格了.都是用虚拟机做测试的多.后来就格了Ubuntu所在的 ...
- Win7启动修复(Ubuntu删除后进入grub rescue的情况)
起因:装了win7,然后在另一个分区里装了Ubuntu.后来格掉了Ubuntu所在的分区.系统启动后出现命令窗口:grub rescue:_ 正确的解决方式: 1.光驱插入win7安装盘或者用USB启 ...
- win7启动出现蓝屏STOP: 0X0000007B
解决方法:开机进BIOS,更改Interface Combination,即硬盘的接口种类,由默认的RAID改成了AHCI,保存,重启,一切正常. 事件过程: 今天开机进入win7,在start wi ...
- WIN7+Ubuntu双系统,win7启动不了
在网上搜索了下,大多说的是因为重装引起的坏道, 我经过半天的搜索才找到了问题所在,首先看看下面连接的二楼大神给出的解决方案: https://forum.ubuntu.org.cn/viewtopic ...
- CentOS 7 添加win7启动项——修改默认启动项
CentOS 7使用grub2引导启动,在win7之后装完CentOS再启动会丢失win7启动项. 首先,添加win7启动项,步骤如下: 1.使用root登陆系统 2.用文本编辑器打开 /boot/g ...
- 用U盘与移动硬盘制作WIN7启动盘(亲自实践)
昨晚帮一个娃娃用移动硬盘里面的一个分区帮他制作成一个win7系统盘,为了以后万一换系统的时候方便.我自己有一个U盘坐的启动盘,移动硬盘没有倒腾过,看网上N多都是相互抄,制作都是WINPE系统的,相当蛋 ...
- win7启动apache-activemq报错及解决办法
win7启动apache-activemq报错,如下: jvm 1 |jvm 1 | Java Runtime: Oracle Corporation 1.8.0_74 C:\Program File ...
- linux内核启动修复
linux内核启动修复 首先看一下linux内核重要文件grub.conf 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 # gru ...
- [转载]-win7启动本地MongoDB的四种方式
2016年04月07日 09:52:34 cherry__cheng 阅读数:19451 标签: win7启动本地MongoDB的四种方式快速启动本地mongodb 更多 个人分类: mongodb& ...
随机推荐
- 自学Linux Shell11.5-执行数字运算
点击返回 自学Linux命令行与Shell脚本之路 11.5-执行数字运算 1. Shell基本运算符 Shell 和其他编程语言一样,支持多种运算符,包括: 算数运算符 关系运算符 布尔运算符 字符 ...
- 【AGC005F】Many Easy Problems
Description 题目链接 对于每个\(k\),统计任选\(k\)个点作为关键点的"最小生成树"的大小之和 Solution 正向想法是枚举或者计算大小为\(x\).叶子数目 ...
- Python--Django学习笔记1
Django:The Web framework for perfectionists with deadlines Django是一个Python语言开发的高级Web框架,采用MVC架构,通过配置可 ...
- Linux中禁用命令历史记录
关闭history记录功能 set +o history 打开history记录功能 set -o history 清空记录 history -c 记录被清空,重新登录后恢复. rm -f $HOME ...
- A1052. Linked List Sorting
A linked list consists of a series of structures, which are not necessarily adjacent in memory. We a ...
- javascript面向对象精要第一章原始类型和引用类型整理精要
- 下拉列表JComboBox,列表框JList
1.下拉列表JComboBox public class Demo extends JFrame { public Demo() { setBounds(100, 100, 200, 100); se ...
- 原生ajax写法
ajax1.0,ie9及以下,ie10+支持ajax2.0 ajax2.0比ajax1.0: 1.多了FormData对象,xhr.send(formData) //不能用GET 2.文件上传,文件 ...
- EXISTS 与 NOT EXISTS 的用法及返回结果
(1)SELECT * FROM `datatower-all`.TMP_DWD_POI t1 WHERE EXISTS ( SELECT 1 FROM `datatower-all`.DWD_POI ...
- postgresql时间处理
时间取到截取 例:select date_trunc('second', "reportTime") from travel_message limit 10; 结果: 他人博客: ...