卸载Linux引导程序

出自Linux Wiki

在2007年7月3日 (二) 06:55由Chenxing (讨论 | 贡献)所做的修订版本
(差异) ←上一修订 | 最新修订 (差异) | 下一修订→ (差异)

本文介绍卸载Linux时卸载Linux引导程序的方法,且只讨论卸载装在MBR中的引导程序(如果您一开机就先进到Grub的界面,那么本文通常是适用的)。如果您已经删除了Linux分区,导致系统无法启动,也可以用本文的办法恢复。

有必要在说明:网上广为流传的将MBR清零的方法会导致系统无法启动,是错误的。

本文的方法在我所做的试验中均可行,但不排除您使用的一些特殊软件导致本文不再适用的可能。对MBR做错误的修改可能导致您无法磁盘上任何一个驱动器,为了保证数据的绝对安全,请备份连接到电脑的所有硬盘中的所有数据。

下面介绍不同环境下的修复方法:

目录

使用老版Windows或其安装光盘处理

此方法使用dos的fdisk工具,由于使用软件版本的很老,可能导致意料之外的问题,不推荐此种方法。 如果您能启动Microsoft MS-DOS 6.22 Standard Edition、Microsoft Windows 95、Microsoft Windows 98 Standard Edition、Microsoft Windows Millennium Edition中的任意一个操作系统,或有上述Windows版本的安装光盘,可以考虑使用此种办法修复。

Note.gif
注意:
如果您使用的是上述系统的U盘启动盘,则方法不适用。

其它不适用的情况

  • 您有两块或更多硬盘,fdisk只使用 BIOS 调用重写系统驱动器(DISK-0),如果不确定它的行为,请勿使用此方法。
  • 磁盘是使用 Storage Dimensions SpeedStor 实用工具并选择 /bootall 选项进行分区的。(如果你不知道这是什么,不必理会此条)

方法: 方法很简单,启动电脑或利用安装CD进入DOS命令行状态,执行

fdisk /mbr

完成操作。

使用Windows恢复控制台处理(未测试)

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用户权限。

您需要下载这个备份好的文件: 点击下载

并在这个下载文件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千万不能省,以保证分区表不受影响。

参考资料

个人工具
简体繁体转换