백업을 만들었어요
# tar -cvpzf /run/media/user/XYZ/backup.tar.gz --exclude=/run/media/user/root/mnt /run/media/user/root/
이제 백업이 필요하며 tar.gz 아카이브를 추출하려고 할 때 실수로 백업 파일을 삭제했습니다.
#tar -xvpzf /run/media/user/XYZ/backup.tar.gz -C /run/media/user/otherDevice/
gzip: stdin: unexpected end of file
tar: Child returned status 1
tar: Error is not recoverable: exiting now
거의 즉시 오류가 발생하므로 일부 비트만 덮어쓴 것 같습니다. 여전히 파일을 볼 수 있지만 크기는 0바이트입니다. 파티션 유형은 NTFS입니다. 현재 상황과 파일 복구 방법을 설명해 줄 수 있는 사람이 있나요?
답변1
ntfsundelete
패키지에 도구가 있습니다 ntfsprogs
:https://manpages.ubuntu.com/manpages/trusty/man8/ntfsprogs.8.html
NTFS 저장소가 있으므로 Windows 기반 도구를 사용해 볼 수도 있습니다(그 중 일부는 가용성 수준이 다양함).
그러나 대부분의 경우 아카이브를 복원할 필요가 없습니다. 첫째, 현재 표시되는 아카이브의 바이트 길이가 0인 경우 파일이 존재하며 삭제되지 않습니다.
둘째, tar
추출 중에 아카이브 파일이 수정되지 않습니다. 길이가 0인 아카이브 파일은 일반적으로 백업을 생성할 때 어떤 이유로 인해 실패했음을 의미합니다. 그리고 당신은 요점을 놓치고 있습니다.
지금 할 수 있는 것/해야 할 것 - 원본 파일에서 다시 백업을 만들어 보십시오. 그리고 괜찮은지 확인해 보세요. tar -t
이것에 도움이 될 것입니다.