出自Linux Wiki
提示:此文已超过 8 年(3060 天)未更新,如发现内容过时或有误,欢迎改进:)
提示:
如果你想卸载Grub或恢复Windows引导器到MBR,皆可参照此文。
难免会遇到需要把Linux从电脑中移除的情况。主要分两种情况:
如果想卸载掉Linux,只用Windows,所谓卸载操作包括
删除Linux的引导程序(如Grub,LILO等)
重新格式化Linux所在的分区
如果只是想换用其它版本的Linux,则可选的方法有
直接安装其它版本的Linux
将另一版本Linux的Grub写至MBR
除了删除Linux引导程序外,其它操作都很简单,删除Linux引导程序的方法(如果您一开机就先进到Grub的界面,那么本文通常是适用的)。如果不幸先格式化了Linux分区,导致系统无法启动,也可以用本文的办法恢复。
有必要在说明:网上广为流传的将MBR清零的方法会导致系统无法启动,是完全错误的。更为流行的fdisk /mbr方法只在Windows 98以前的系统中有,且不适用于Windows Vista/7,不要使用。
注意:
本文的方法是经受过实验证明的,但不排除失败的可能。对MBR做错误的修改可能导致您无法引导到磁盘上任何一个驱动器,为了保证数据的绝对安全,还请备份连接到电脑的所有硬盘中的所有数据。
下面介绍不同环境下的操作方法:
Windows
Windows 7/Vista
如果你有相应的Win7/Vista安装盘,可以直接用它启动,在选择语言后的界面中点修复就可以了,修复工作会自动完成。
如果没有安装盘,可使用下面的通用方法,或在Linux中操作。一定不要尝试fdisk /mbr等古老的方法!
由国人开发的免费软件 BOOTICE(引导扇区维护工具)也可以解决此问题,使用其修复“主引导记录MBR”即可。
通用方法
MbrFix /drive 0 fixmbr /yes
对应Vista系统的命令为:
MbrFix /drive 0 fixmbr /vista /yes
对应Win7系统的命令为:
MbrFix /drive 0 fixmbr /win7 /yes
一定要选对系统,Win7/Vista的MBR和早先的版本不一样。。。要想了解这些MBR具体的差别,可以参考
Windows 2000/XP
Windows 2000或Windows XP的恢复控制台也可修复MBR(删除MBR中的Grub)。利用Windows安装光盘可以启动到恢复控制台。
使用方法是
fixmbr [device_name]
其中参数device_name表示你要把新的MBR写到哪个盘上,可以用'map'命令获取设备列表,一个例子是:
fixmbr \Device\HardDisk0
如果不指定device_name,新的MBR会写到启动设备上,即当前的primary system(请翻译)所在的磁盘。
Linux
在Linux卸载的办法是用未安装Linux引导器时MBR程序段的内容覆盖当前MBR,执行该操作需要root用户权限。
您需要下载对应相应Windows版本的文件,比如: Win 2k/XP/2003的MBR
并在这个下载文件mbr.hex所在目录下执行:
备份
dd if=/dev/硬盘名 of=mbr_bak.hex count=1
写入MBR
dd if=mbr.hex of=/dev/硬盘名 bs=446 count=1
请将“硬盘名”修改为要卸载引导器的硬盘,如sda、hda、hdb等。注意第二个语句的bs=446千万不能省,以保证分区表不受影响。
参考资料
本文对您有帮助?分享给更多朋友!
反馈与讨论
发现文档不全面、有错误却没时间编辑文档?想分享自己的经验或见解?欢迎在此留言、讨论。