실수로 폴더 이름.tar.gz 대신 폴더 이름.gz로 저장한 파일 폴더의 압축을 푸는 방법

실수로 폴더 이름.tar.gz 대신 폴더 이름.gz로 저장한 파일 폴더의 압축을 푸는 방법

내가 어떻게 했는지 모르겠어요. 전용 서버를 지우고 재부팅해야 했기 때문에 먼저 모든 것을 원격 VPS에 백업했습니다. 그 과정에서 tar를 사용하는 대신 다른 폴더로 가득 찬 폴더를 폴더 이름.gz에 압축했기 때문에 지금 압축을 풀면 압축이 풀립니다. 파일로 가득 찬 폴더가 아닌 단일 파일로. 폴더 이름.tar.gz로 이름을 바꾸려고 시도했지만 추출하면 다음과 같은 결과가 나타납니다.

tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors

이것을 사용하면 file foldername.gz다음이 제공됩니다.

foldername.gz: gzip compressed data, was "2a863233-fac4-4611-8bbd-76416e58e5d4.dat", last modified: Thu Dec 9 10:36:04 2021, from Unix, original size modulo 2^32 2629632

편집하면 다음이 제공됩니다 file -z foldername.gz. foldername.gz: gzip compressed data, from FAT filesystem (MS-DOS, OS/2, NT) (gzip compressed data, was "2a863233-fac4-4611-8bbd-76416e58e5d4.dat", last modified: Thu Dec 9 10:36:04 2021, from Unix)

답변1

불행히도 파일의 아카이브(압축 또는 기타)가 없는 것 같습니다.

그래서 당신은 무엇을 가지고 있습니까? 폴더에 있는 모든 파일이 각각 개별적으로 압축되어 연결되어 있는 것 같습니다.

gzip -c * > all_files.gz    # DO NOT DO THIS

압축을 풀면 다음과 같이 동일하게 수행됩니다.

cat * > all_files           # OR THIS

파일 사이에 보관 표시가 없으므로 별로 도움이 되지 않습니다. 텍스트 파일의 경우 생성된 파일을 다시 확인하여 all_files해당 부분을 파일로 삭제할 수 있습니다. 그러나 각 파일에 대해 파일 이름이나 기타 메타데이터가 기록되지 않으므로 번거로울 수 있습니다. 특히 멀티 기가바이트 파일에 대해 이야기할 때 더욱 그렇습니다.

돌이켜보면, 여러분이 해야 할 일은 파일 모음을 보관하고, 압축하고, 결과를 tarball에 쓰는 다음과 같은 것이었습니다:

tar czf all_files.tgz *

현재 상황에서는 파일을 복구할 수 있는 쉬운 솔루션이 없거나 전혀 솔루션이 없을 수도 있습니다.

삭제 취소 도구를 사용하는 것이 좋습니다(벤 워커,테스트 디스크,사진술등) 도움이 될 수 있는 옵션이 있는지 확인하세요. 그렇지 않으면 file각 바이트 오프셋을 시도하여 항목을 식별하는지 확인할 수 있습니다. 그런 다음 성공적인 오프셋을 사용하여 데이터를 구성 파일로 분할할 수 있습니다. 하지만 파일 이름이나 기타 메타데이터는 원본 데이터와 함께 저장되지 않았기 때문에 알 수 없습니다.

행운을 빌어요

관련 정보