회복 후 ddrescue 이미지 마운트 (머리 위로)


18

복구 이미지를 마운트하는 데 문제가 있습니다. 이미지를 여러 가지 방법으로 마운트하려고했습니다.

quark@DS9 ~ $ sudo mount -t ext4 /media/jump1/1recover/sdb1.img /mnt
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so


quark@DS9 ~ $ sudo mount -r -o loop /media/jump1/1recover/sdb1.img recover
mount: you must specify the filesystem type

quark@DS9 ~ $ sudo mount /media/jump1/1recover/sdb1.img mnt
mount: you must specify the filesystem type

내가 만든 파일에 대한 자세한 정보조차 제공하지 않는다고 노틸러스는 160GB라고 말합니다.

quark@DS9 ~ $ file /media/jump1/1recover/sdb1.img
/media/jump1/1recover/sdb1.img: data


quark@DS9 ~ $ mmls /media/jump1/1recover/sdb1.img
        Cannot determine partition type

내가 뭘 잘못하고 있는지 또는 처음 부터이 프로세스를 잘못 시작했는지 확실하지 않습니다. 나는 지금까지 내가 한 일을 간략하게 설명했다. 나는 단서가 없다. 누군가 나를 위해 어떤 정보를 주면 감사하겠습니다.

처음부터 내가 한 일

내 노트북에는 두 개의 하드 드라이브가 있습니다.

이중 부팅 Win7 / Linux Mint 시스템 파일이 있습니다. 보조 폴더에는 / home 폴더가 포함되어 있습니다.

랩탑이 손상되었으며 / home 디스크가 손상되었습니다. LiveCD 복구를 시도했지만 실패했습니다. 디스크가 설치된 라이브 세션도로드하지 않습니다. 그래서 나는 ddrescue로 향했다.

quark@DS9 ~ $ sudo fdisk -l

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0009fc18

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048   112642047    56320000    7  HPFS/NTFS/exFAT
/dev/sda2       138033152   312580095    87273472   83  Linux
/dev/sda3       112644094   138033151    12694529    5  Extended
/dev/sda5       112644096   132173823     9764864   83  Linux
/dev/sda6       132175872   138033151     2928640   82  Linux swap / Solaris

Partition table entries are not in disk order

Disk /dev/sdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0002a8ea

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *          63   312576704   156288321   83  Linux

Disk /dev/sdc: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xed6d054b

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1              63  1953520064   976760001    7  HPFS/NTFS/exFAT
  • sda-160g 내장, 모든 시스템 파일 및 모든 컴퓨터 기능 보유
  • sdb-160g 내부, BROKEN 에는 복구하려는 약 140g의 데이터가 들어 있습니다.
  • sdc-1T 외부, 복구 이미지가 포함되어 있습니다. 이 모든 것을 할 공간이있는 장소 만.

이 사이트에서 https://apps.education.ucsb.edu/wiki/Ddrescue

이 스크립트를 사용하여 깨진 하드 드라이브의 이미지를 만들었습니다. 대상을 외부 USB 드라이브로 변경했습니다.

#!/bin/sh 

prt=sdb1
src=/dev/$prt
dst=/media/jump1/1recover/$prt.img
log=$dst.log

sudo time ddrescue --no-split $src $dst $log
sudo time ddrescue --direct --max-retries=3 $src $dst $log
sudo time ddrescue --direct --retrim --max-retries=3 $src $dst $log

장애없이 모든 것이 나왔다.

quark@DS9 ~ $ sudo bash recover1 


Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued:         0 B,  errsize:       0 B,  errors:       0
Current status
rescued:   160039 MB,  errsize:    4096 B,  current rate:    35588 B/s
   ipos:      3584 B,   errors:       1,    average rate:   22859 kB/s
   opos:      3584 B,     time from last successful read:       0 s
Finished                   
12.78user 1060.42system 1:56:41elapsed 15%CPU (0avgtext+0avgdata 4944maxresident)k
312580958inputs+0outputs (1major+601minor)pagefaults 0swaps


Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued:   160039 MB,  errsize:    4096 B,  errors:       1
Current status
rescued:   160039 MB,  errsize:    1024 B,  current rate:        0 B/s
   ipos:      1536 B,   errors:       1,    average rate:       13 B/s
   opos:      1536 B,     time from last successful read:     1.3 m
Finished                       
0.00user 0.00system 3:43.95elapsed 0%CPU (0avgtext+0avgdata 4944maxresident)k
238inputs+0outputs (3major+374minor)pagefaults 0swaps


Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued:   160039 MB,  errsize:    1024 B,  errors:       1
Current status
rescued:   160039 MB,  errsize:    1024 B,  current rate:        0 B/s
   ipos:      1536 B,   errors:       1,    average rate:        0 B/s
   opos:      1536 B,     time from last successful read:     3.7 m
Finished                       
0.00user 0.00system 3:43.56elapsed 0%CPU (0avgtext+0avgdata 4944maxresident)k
8inputs+0outputs (0major+376minor)pagefaults 0swaps

내가 서있는 곳에서 완벽하게 작동하는 것처럼 보입니다. 로그는 다음과 같습니다.

# Rescue Logfile. Created by GNU ddrescue version 1.14
# Command line: ddrescue --direct --retrim --max-retries=3 /dev/sdb1 /media/jump1/1recover/sdb1.img /media/jump1/1recover/sdb1.img.log
# current_pos  current_status
0x00000600     +
#      pos        size  status
0x00000000  0x00000400  +
0x00000400  0x00000400  -
0x00000800  0x254314FC00  +

진행 방법을 잘 모르겠습니다. 이것은 내 모든 데이터가 손실되었음을 의미합니까?

모든 입력을 감사하십시오!


5
명확하고 읽기 쉬운 방식으로 제공되는 자세한 정보를 많이 제공합니다.
Scott Severance

데비안 위키는 데이터 복구에 관한 매우 훌륭한 페이지를 가지고 있습니다 : help.ubuntu.com/community/DataRecovery
Wilf

답변:


7

나는 해결책을 찾았고 이것을 놓친 것에 대해 어리석은 느낌을 받았다. 답변 해 주셔서 감사합니다.

이미지에 오류가 있는지 확인한 다음 아무 문제없이 마운트했습니다!

sudo fsck -y /dev/sda2/backup.img

errrors를 수정 한 다음 아무런 문제가 없었습니다.

sudo mount /dev/sda2/backup.img /mnt/recoverydata


4

비슷한 상황에서 내가해야했던 일이 있습니다-누군가 가이 질문을 우연히 발견 한 경우를 대비하여.

내 이미지도 마운트되지 않아 같은 오류 (잘못된 수퍼 블록)가 발생합니다. 그러나 fsck는 다음 오류로 실패했습니다.

fsck from util-linux 2.20.1
e2fsck 1.42 (29-Nov-2011)
fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /mnt/download/rescue.img

The superblock could not be read or does not describe a correct ext2
filesystem.  If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 <device>

DataRecovery (Takkat에서 제공 한 링크, 감사합니다!)를 읽은 후 다음을 시도해 보았습니다.

apt-get install sleuthkit
mmls /path/to/image

결과는 다음과 같습니다.

DOS Partition Table
Offset Sector: 0
Units are in 512-byte sectors

     Slot    Start        End          Length       Description
00:  Meta    0000000000   0000000000   0000000001   Primary Table (#0)
01:  -----   0000000000   0000000062   0000000063   Unallocated
02:  00:00   0000000063   2930272064   2930272002   Linux (0x83)
03:  -----   2930272065   2930277167   0000005103   Unallocated

그런 다음 63에 512를 곱하여 32256을 얻고 다음과 같이 이미지를 마운트했습니다.

mount -o loop,offset=32256 /path/to/image /mnt/temp

이것이 다른 누군가에게도 도움이되기를 바랍니다.


2

Takkat의 답변 외에도 다른 가능한 접근법을 제안하고 싶습니다. 이미지가 거의 확실하게 손상된 것을 고려하면 데이터 복구 도구가 제대로 복구 할 수없는 데이터가있을 수 있습니다.

SpinRite는 이 문제를 다른 방식으로 해결합니다. 이미지를 제거하는 대신 일반 도구로 복구 할 수있는 것보다 더 많은 데이터를 얻기 위해 디스크를 연습합니다. 복구 가능한 데이터 양을 크게 늘리기 위해 사용했습니다. 운이 좋으면 적절한 백업을 수행 할 수있을 정도로 오랫동안 디스크를 정상적으로 마운트 할 수 있습니다.

그러나 SpinRite에는 큰 단점이 있습니다. 상당한 비용이 듭니다. 다른 도구가 도움이된다면 돈을 절약하십시오. 그러나 더 많은 것이 필요하면 SpinRite는 시도해 볼 가치가 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.