人们在使用电脑时,有时由于异常操作,有时由于病毒侵袭,会导致某个分区消失或硬盘无法启动。究其原因,就是硬盘分区表受损。硬盘分区表可以说是支持硬盘正常工作的骨架。
最近学习磁盘分区表的备份与修复,特来分享硬盘引导修复,以作备忘。
第一种 利用其他主机进行备份修复
1.将硬盘sda的配置导出为文件sda_mbr.dd
[root@bbb ~]# dd if=/dev/sda of=/sda/sda_mbr.dd bs=512 count=1
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.000196248 s, 2.6 MB/s
2.将配置文件备份到其他机器 上(本次测试使用10.0.2.12)
[root@bbb ~]# scp /sda/sda_mbr.dd 10.0.2.12:/lianxi
root@10.0.2.12‘s password:
sda_mbr.dd 100% 512 0.5KB/s 00:00
3.将硬盘sda配置进行注销
[root@bbb ~]# dd if=/dev/zero of=/dev/sda bs=512 count=1
1+0 records in
1+0 records out
213 bytes (213 B) copied, 0.0126084 s, 16.9 kB/s
4.再次查看sda 发现无法查看文件分区
[root@bbb ~]# fdisk -l /dev/sda
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
5.开机无法启动进入系统 安装界面 选第三个选项 营救系统
6.按enter键下一步直到出现界面 选择yes设置上网(因为我们要连接10.0.2.12)
7.跟随默认设置一直点yes,ok,这几步主要是设置网卡,ip之类的,我们使用默认即可.
选择continue进入
8.选择shell ok 下面会出现命令行
我们将放在10.0.2.12内的sda配置文件复制到当前 然后导入道/etc/sda 进行reboot
即可完成营救系统
第二种
利用本机其他硬盘进行营救系统(本机的第二块磁盘为sdb)
1. 为本机的第二块硬盘分区
[root@bbb ~]# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It‘s strongly recommended to
switch off the mode (command ‘c‘) and change display units to
sectors (command ‘u‘).
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-5221, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-5221, default 5221): +5G
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
格式化硬盘sdb的第一个分区
[root@bbb ~]# mkfs.ext4 /dev/sdb1
创建一个目录/sdb,将sdb1挂载到/sdb
[root@bbb ~]# mkdir /sdb
[root@bbb ~]# mount /dev/sdb1 /sdb
[root@bbb ~]# dd if=/dev/sda of=/sdb/sda_mbr.dd bs=512 count=1
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.000472493 s, 1.1 MB/s
3.将硬盘sda配置进行注销
[root@bbb ~]# dd if=/dev/zero of=/dev/sda bs=512 count=1
1+0 records in
1+0 records out
213 bytes (213 B) copied, 0.0126084 s, 16.9 kB/s
4.再次查看sda 发现无法查看文件分区
[root@bbb ~]# fdisk -l /dev/sda
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
然后重启进入营救模式选择no
选择continue
进入shell模式
dd if=/sdb/sda_mbr.dd of=/dev/sda bs=512 count=1
reboot重新引导修复赢主机
第一次写博客有很多不足 望海涵
qq:1529940294
指导老师:一品刀客qq:695811769
本文出自 “linux从零单排” 博客,请务必保留此出处http://1529940294.blog.51cto.com/8834903/1399150
原文:http://1529940294.blog.51cto.com/8834903/1399150