双系统引导修复.txt我退化了,到现在我还不会游泳,要知道在我出生之前,我绝对是游的最快的那个问题一:原系统xp,在C盘。ghost安装win7到D盘。显然,D盘的win7没有引导,需要手动修复。
修复方法【内为注释】:
1. 进入C盘xp,运行cmd进入xp命令行模式。输入
d:
cd d:\\windows\\system32
bcdboot d:\\windows /l zh-cn /s c:
运行上述命令后,在C盘根目录生成了\\boot文件夹和bootmgr文件。
【D盘下已经具备了一个完整的win7,唯一欠缺的是系统盘内的引导,因此首先要在C盘重建win7的引导环境。通过Windows7内置的bcdboot命令可以轻易做到这一点。这个命令不能修改引导记录,我用VHD验证过】
2. 去win7安装光盘,找到bootsect.exe文件(找不到就网上下载一个,注意要win7的),复制到C:\\boot\\文件夹。然后进入命令行:
cd c:\\boot
bootsect /nt60 c:
bootsect /nt60 c: /mbr
这个命令执行完毕后,在完成所有后续步骤之前,一定不能重启XP,否则XP将无法启动!
【bootsect —— 用来写win7需要的引导信息到引导记录,第一个bootsect命令把引导信息写入C盘分区引导记录,第二个bootsect命令把引导信息写入硬盘主引导记录。由于主引导记录和分区引导记录都被修改为支持bootmgr,因此XP的引导器ntldr将不能被引导,后续步骤中我们会修复它】
3. 继续在xp的命令行模式,输入
d:
cd d:\\Windows\\system32
bcdedit /create {ntldr} /d \"Windows XP\"
bcdedit /set {ntldr} device boot
bcdedit /set {ntldr} path \\ntldr
bcdedit /displayorder {ntldr} /addlast
bcdedit /timeout 10
【这一步,我们用bcdedit命令来给XP在bcd中重建引导项。这样通过bootmgr加载bcd中XP的引导项,进而把启动控制权交给XP的引导管理器ntldr,实现XP的启动】
至此,双系统引导修复完成。
上述命令中,每个命令都必须成功。有可能,bcdedit命令会返回失败信息。此时步骤3中的命令改为:
bcdedit /store c:\\boot\\bcd /create {ntldr} /d \"Windows XP\"
bcdedit /store c:\\boot\\bcd /set {ntldr} device boot
bcdedit /store c:\\boot\\bcd /set {ntldr} path \\ntldr
bcdedit /store c:\\boot\\bcd /displayorder {ntldr} /addlast
bcdedit /store c:\\boot\\bcd /timeout 10
——————————————————————————————————————————————————————————————————————————————————————————————
问题二:如果C盘已装WIN7,如何在D盘装XP并修复引导?
修复方法:
1. 如果XP是正常安装到D盘:
安装成功后,win7引导被XP的引导覆盖。因此需要在XP下手动修复win7的引导。方法同问题一。命令如下(不再注释,请自行理解)
bootsect /nt60 c:
bootsect /nt60 c: /mbr
cd C:\\Windows\\system32
bcdedit /create {ntldr} /d \"Windows XP\"
bcdedit /set {ntldr} device boot
bcdedit /set {ntldr} path \\ntldr
bcdedit /displayorder {ntldr} /addlast
bcdedit /timeout 10
2. 如果XP是通过ghost安装到D盘:
这种情况下D盘的XP缺乏引导,需要在win7下手动恢复XP的引导。方法如下:
2.1 把D盘根目录下的ntldr,ntdetect.com,boot.ini三个文件复制到C
盘根目录
2.2 修改boot.ini的内容,为 D盘的xp设置正确的引导路径。(原路径是C盘)
2.3 以管理员身份运行cmd,输入如下命令
bcdedit /create {ntldr} /d \"Windows XP\"
bcdedit /set {ntldr} device boot
bcdedit /set {ntldr} path \\ntldr
bcdedit /displayorder {ntldr} /addlast
bcdedit /timeout 10
(已经试过可行)本机已经有xp,在其他盘ghost 个win7,重启后它只会从xp 启动,win7没有引导需要手动修复。我们可以借用这个工具bootsect.exe ,win7 Vista都自带的,可以从win7盘里吧拷贝出来。来修复引导。cmd 输入 X:\\bootsect.exe /nt60 all /force “X”指它所在盘符路径。(nt52·nt60注意这两个解释)具体使用可以看下文::
用这个命令 X:\\boot\\bootsect.exe /nt52 all /force 重启后,Windows 7系统的启动选项不见了。假若安装win7的盘没有格式化,想要再改回双启动菜单 这时候用网上搜集的一些修复工具没有什么效果,会提示失败,我们可以 X:\\boot\\bootsect.exe /nt60 all /force (nt52 改为 nt60),重启就会发现win7启动选择画面 又回来了。下边是微软
bootsect的解释vista win7通用。
Bootsect 命令行选项应用到: Windows Vista
Bootsect.exe 更新硬盘分区的主启动代码以在 BOOTMGR 和 NTLDR 之间切换。可以使用此工具还原计算机上的启动扇区。此工具会替换 FixFAT 和 FixNTFS。
Bootsect 命令
Bootsect 使用下列约定:
bootsect.exe {/help | /nt52 | /nt60} {SYS | ALL | 例如,若要将与 NTLDR 兼容的主启动代码应用到标记为 E 的卷,请使用以下命令: bootsect.exe /nt52 E: /help 显示这些用法说明。 /nt52 将与 NTLDR 兼容的主启动代码应用到 SYS、ALL 或 /nt60 将与 BOOTMGR 兼容的主启动代码应用到 SYS、ALL 或 SYS 更新用于启动 Windows 的系统分区上的主启动代码。 ALL 更新所有分区上的主启动代码。ALL 不必更新每个卷的启动代码。相反,该选项将更新可用作 Windows 启动卷(不包括没有与基础磁盘分区连接的动态卷)的卷上的启动代码。存在此限制是因为启动代码必须位于磁盘分区的起始处。 复制代码 /force 在启动代码更新期间强制卸除卷。必须谨慎使用该选项。 如果 Bootsect.exe 无法获得独占的卷访问权限,则文件系统可能在下一次重新启动前覆盖启动代码。Bootsect.exe 始终会在每次更新前尝试锁定和卸除卷。当指定 /force 时,如果初始的锁定尝试失败,将尝试强制卸除。例如,如果目标卷上的文件当前已被其他 程序打开,则锁定可能会失败。 如果锁定成功,强制卸除将启用独占卷访问权限和可靠的启动代码更新,即使初始锁定失败。同时,强制卸除将使指向目标卷上文件的所有打开的句柄无效。这可以导致来自打开这些文件的程序的意外行为。因此,请谨慎使用该选项。 文章来源于网络, 在同一台电脑使用双系统还是有诸多不便的,很多软件并不是绿色的,所以在两个系统之间切换的时候就得重装才能用。鉴于本人很难得用的是正版xp,于是我决定卸载win7测试版,老老实实用XP。 1. 插入刻好的 Windows 7 安装光盘(或者用虚拟光驱加载Windows 7镜像)。 2. 依次点击“开始”-“运行”,弹出命令行窗口。 3. 在命令行窗口中输入 X:\\boot\\bootsect.exe /nt52 all /force ,然后按 Enter。(注:X:\\代表你的光驱盘符,或者虚拟光驱盘符。例如,如果 DVD 驱动器号是 F,则键入 F:\\boot\\bootsect.exe /nt52 ALL /force。) 4. 弹出 Windows 7 安装光盘(或者在虚拟光驱中卸载ISO镜像文件)。 5. 重新启动计算机。 计算机将使用已安装的以前版本的 Windows 启动。Windows 7系统的启动项不见了,Early Version windows也不见了,只剩下Windows xp的启动项了,基本成功。 6. 手动删除 Windows 7 文件和文件夹,如程序文件、用户和 Windows 文件夹。或者没有其它重要文件的话,可以直接格式化Windows 7所在分区,省时省事。 因篇幅问题不能全部显示,请点此查看更多更全内容