誤ってフォルダ名.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.gzfoldername.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各バイトオフセットを試してエントリを識別することを確認できます。その後、成功したオフセットを使用してデータを構成ファイルに分割できます。ただし、ファイル名やその他のメタデータは元のデータと一緒に保存されていないため、不明です。

幸運を祈る

おすすめ記事