|
MBR 是硬盘的主引导扇区 (Master Boot Record),它是硬盘的第一个扇区,大小为 512 字节。MBR 还维护着磁盘分区表(DPT, Disk Partition Table),如果 MBR 被破坏,那么系统将无法启动。关于 MBR 更多介绍:http://www.groad.net/bbs/read.php?tid-389.html
可能会由于多种原因导致 MBR 损坏,重装系统虽然可以解决,但是却极为耗费时间。事实上,如果对 MBR 做过备份,那么只要对 MBR 进行还原便可以救回无法启动的系统。
备份 MBR
在 linux 里,可用 dd 命令来备份 MBR,这里你需要有 root 权限。需要注意的是,dd 是一个很危险的命令,任何错误都可能造成硬盘的破坏! 检查一下当前使用磁盘:[root@localhost dev]# ls /dev/hd*/dev/hda /dev/hda1 /dev/hda2 /dev/hdc 我的磁盘是 IDE 的,所以显示 hd*,现在 SATA 硬盘则会显示为 sd*。使用下面命令进行备份:[root@localhost dev]# dd if=/dev/hda of=/home/groad/mbr.img bs=512 count=1
1+0 records in1+0 records out512 bytes (512 B) copied, 0.052964 seconds, 9.7 kB/s 在上面命令中,
if 选项其后接要备份的磁盘设备文件名,这里是 /dev/hda,也有可能是 /dev/sda 等等,根据磁盘具体情况而定
of 选项表示要备份到哪个文件中,这里是 mbr.img
bs 表示要一次读取(也可以是写入)多少字节数,这里是 512 字节,因为 MBR 是 512 字节
count 表示要复制多少个块(block)
注意,要小心 if 和 of 选项的意思,千万不要尝试 dd of=/dev/hda if=/home/groad/mbr.img bs=512 count=1 !
恢复MBR
如果由于 MBR 的破坏而导致系统无法启动,那么我们可以使用一个 linux 的 live CD (live CD 里包含操作系统,直接从 CDROM 里便可体验 linux)启动计算机。现在假设已经从 live CD 启动了计算机,又假如 /home 目录对应的是 /dev/hda2,那么可以如下操作:mkdir tmp #在当前路径下创建一个文件夹,用于 mount /home 目录
mount /dev/hda2 tmp #挂载 home 目录
cd ./home/groad
dd of=/dev/hda if=mbr.img bs=512 count=1 #恢复 MBR 最后,弹出 live CD,重新从硬盘启动系统。
dd 命令详细参数:http://www.groad.net/bbs/read.php?tid-2499.html |
|