服务器救援模式下无法识别磁盘分区的数据恢复求助
服务器救援模式下无法识别磁盘分区的数据恢复求助
我有一台带两块硬盘的服务器,现在处于救援模式——因为其中一块硬盘故障更换了,之后找了数据恢复服务,对方说数据已恢复但没法打开终端挂载文件系统,于是我通过SSH连接尝试挂载,但遇到了一堆问题。
我在救援模式下没法用fdisk命令,于是先试了lsblk,结果如下:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 190.9M 1 loop sda 8:0 0 232.9G 0 disk sdb 8:16 0 232.9G 0 disk
接着用parted -l查看分区,得到的错误是:
Error: /dev/sda: unrecognised disk label Model: ATA Hitachi HDT72502 (scsi) Disk /dev/sda: 250GB Sector size (logical/physical): 512B/512B Partition Table: unknown Disk Flags: Error: /dev/sdb: unrecognised disk label Model: ATA Hitachi HDT72502 (scsi) Disk /dev/sdb: 250GB Sector size (logical/physical): 512B/512B Partition Table: unknown Disk Flags:
再试sgdisk -l /dev/sda,输出如下:
GPT fdisk (gdisk) version 1.0.6 Warning: Partition table header claims that the size of partition table entries is 257317316 bytes, but this program supports only 128-byte entries. Adjusting accordingly, but partition table may be garbage. Warning: Partition table header claims that the size of partition table entries is 164259508 bytes, but this program supports only 128-byte entries. Adjusting accordingly, but partition table may be garbage. Partition table scan: MBR: not present BSD: not present APM: not present GPT: not present Creating new GPT entries in memory. Disk /dev/sda: 488397168 sectors, 232.9 GiB Model: Hitachi HDT72502 Sector size (logical/physical): 512/512 bytes Disk identifier (GUID): 6252014C-6128-5CBC-64B3-43B93D2746D4 Partition table holds up to 128 entries Main partition table begins at sector 2 and ends at sector 33 First usable sector is 34, last usable sector is 488397134 Partitions will be aligned on 2048-sector boundaries Total free space is 488397101 sectors (232.9 GiB) Number Start (sector) End (sector) Size Code Name
对/dev/sdb执行同样命令sgdisk -l /dev/sdb,结果是:
GPT fdisk (gdisk) version 1.0.6 Warning: Partition table header claims that the size of partition table entries is 0 bytes, but this program supports only 128-byte entries. Adjusting accordingly, but partition table may be garbage. Warning: Partition table header claims that the size of partition table entries is 0 bytes, but this program supports only 128-byte entries. Adjusting accordingly, but partition table may be garbage. Partition table scan: MBR: not present BSD: not present APM: not present GPT: not present Creating new GPT entries in memory. Disk /dev/sdb: 488397168 sectors, 232.9 GiB Model: Hitachi HDT72502 Sector size (logical/physical): 512/512 bytes Disk identifier (GUID): CBA264B1-5BCC-54F3-BF89-23B5C2B3733B Partition table holds up to 128 entries Main partition table begins at sector 2 and ends at sector 33 First usable sector is 34, last usable sector is 488397134 Partitions will be aligned on 2048-sector boundaries Total free space is 488397101 sectors (232.9 GiB) Number Start (sector) End (sector) Size Code Name
之后用dd if=/dev/sda|hexdump -C检查,发现/dev/sda确实有数据,但/dev/sdb是空的:
dd if=/dev/sdb|hexdump -C 00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| *
尝试用mdadm --query /dev/sda检查RAID信息,得到:
/dev/sda: is not an md array
另外,我只能通过远程SSH连接,且可用命令只有这些:
agetty devlink e2undo fsck.reiserfs ip lvconvert lvscan mkfs.msdos pvchange route sysctl vgextend badblocks dhcpcd ethtool fsck.vfat ipmaddr lvcreate mdadm mkfs.reiserfs pvck rtacct tc vgimport blkdeactivate dmeventd fatlabel fsck.xfs iptunnel lvdisplay mdmon mkfs.vfat pvcreate rtmon telinit vgimportclone blkdiscard dmraid findfs fsfreeze isosize lvextend mii-tool mkfs.xfs pvdisplay runlevel tipc vgmerge blkid dmraid-activate fixparts fstab-decode jfs_debugfs lvm mkdosfs mkhomedir_helper pvmove runuser tune2fs vgmknodes blkzone dmsetup fsadm fstrim jfs_fsck lvmconfig mke2fs mkreiserfs pvremove setcap tunefs.reiserfs vgreduce blockdev dmstats fsck gdisk jfs_fscklog lvmdiskscan mkfs mkswap pvresize sgdisk unix_chkpwd vgremove bridge dosfsck fsck.btrfs getcap jfs_logdump lvmdump mkfs.bfs nameif pvs shadowconfig unix_update vgrename capsh dosfslabel fsck.cramfs getpcaps jfs_mkfs lvmpolld mkfs.btrfs parted pvscan shutdown vgcfgbackup vgs cgdisk dumpe2fs fsck.ext2 getty jfs_tune lvmsadc mkfs.cramfs partprobe rarp slattach vgcfgrestore vgscan chcpu e2fsck fsck.ext3 halt killall5 lvmsar mkfs.ext2 pivot_root raw start-stop-daemon vgchange vgsplit coldreboot e2image fsck.ext4 hdparm kpartx lvreduce mkfs.ext3 plipconfig reboot sulogin vgck wipefs ctrlaltdel e2label fsck.fat hwclock ldconfig lvremove mkfs.ext4 pm-hibernate reiserfsck swaplabel vgconvert xfs_repair debugfs e2mmpstatus fsck.jfs ifconfig logsave lvrename mkfs.fat pm-suspend reiserfstune swapoff vgcreate zramctl debugfs.reiserfs e2scrub fsck.minix init losetup lvresize mkfs.jfs pm-suspend-hybrid resize2fs swapon vgdisplay debugreiserfs e2scrub_all fsck.msdos installkernel lvchange lvs mkfs.minix poweroff resize_reiserfs switch_root vgexport
我该怎么恢复分区呢?我觉得可能没希望了,但还是想试试,因为数据恢复服务说数据还能救。
任何建议都非常感谢,提前谢谢大家!
备注:内容来源于stack exchange,提问作者EDP
相关产品推荐
相关产品推荐

