dd 명령을 사용하여 '깨진' 디스크 복사

dd 명령을 사용하여 '깨진' 디스크 복사

백업용으로 사용되는 외장 Seagate 하드디스크가 있습니다. 이제 디스크에 들어갈 수 없습니다(아직 dd 명령을 사용하지 않았습니다!). Windows 컴퓨터에 연결했을 때 디스크에 액세스하려면 디스크를 포맷해야 한다는 메시지가 나타납니다. 우분투 12.04를 실행하는 Linux에서는 마운트할 수 없지만 hwinfo --disk터미널에서 사용하면 찾을 수 있습니다. 친구가 Linux의 dd 명령에 대해 이야기해 주었고 나는 그것이 위험하다는 것을 알고 있습니다(입력을 출력으로 설정하고 입력 데이터가 손실될 때 출력을 출력하는 경우). "dd if=/dev/sdc of=/dev/sdb"를 시도했는데 "액세스가 거부되었습니다"라는 메시지가 표시되었으므로 적어도 덮어쓴 것은 아무것도 없는 것 같습니다. sdc는 ubuntu에 설치된 hwinfo 및 diskhandling Manager에 따르면 Seagate 디스크이고, sdb는 동일한 용량의 내부 디스크이고 비어 있을 뿐입니다. 내 데이터를 복원하려면 어떻게 해야 하는지에 대한 아이디어가 있습니까(dd가 가능한 경우)? 아니면 디스크가 너무 손상되어 복구할 수 없나요?

답변1

원시 하드 디스크를 읽거나 쓰려면 루트 권한이 필요합니다. 그래서 당신은 실행해야합니다

sudo dd if=/dev/sdc of=/dev/sdb

즉, dd모든 파티션이 포함된 디스크의 원시 복사본을 비트 단위로 생성합니다. 아무것도 복구되지 않습니다. 그러나 위 명령을 사용하여 손상된 디스크의 데이터를 정상적인 디스크로 복사한 다음 데이터 복사본을 복구해 보는 것이 좋습니다. 이렇게 하면 문제가 발생하여 구조 시도로 인해 더 많은 피해가 발생하더라도 여전히 잘못된 데이터의 원본을 보유하고 새로운 복사본을 만들 수 있습니다.

그런 식으로 불량 디스크를 복제한 후에는 플러그를 뽑으십시오. 그런 다음 복사본에 대한 실제 복구를 시작할 수 있습니다. 한 가지 도구는 fsck다음과 같은 방법으로 실행할 수 있는 도구입니다(다시 말해, 루트 사용자여야 함).

sudo fsck /dev/sdb1

/dev/sdb1디스크의 첫 번째 파티션이 됩니다. 파티션이 두 개 이상인 경우 에도 동일한 작업을 반복 /dev/sdb2합니다 /dev/sdb3.

이것이 데이터를 복구한다는 보장은 없습니다. 하지만 그렇지 않은 경우에는 손상 종류와 추가 조사 위치에 대한 힌트를 제공합니다.

관련 정보