1. ホーム
  2. linux

[解決済み] gzip: stdin: not in gzip format tar: 子プロセスがステータス 1 を返しました。エラーは回復不可能:現在終了中

2022-01-28 02:27:45

質問

私はtar.gzを作成し、暗号化し、ドライブに送信するbashスクリプトを持っています。 しかし、私はその後、.tar.gzを開くことができません。 以下は私のプロセスです...

暗号化するBashスクリプト。

#!/bin/sh

# tar the automysqlbackup directory
tar -zcf "red-backup-$(date '+%Y-%m-%d').tar.gz" /var/lib/automysqlbackup/

# encrypt the tar
openssl aes-256-cbc -a -salt -in "red-backup-$(date '+%Y-%m-%d').tar.gz" -out "red-backup-$(date '+%Y-%m-%d').tar.gz.enc" -pass 'pass:MySecretPWD'

# remove the original tar
rm -rf "red-backup-$(date '+%Y-%m-%d').tar.gz"

# upload to google drive
gdrive upload --file "red-backup-$(date '+%Y-%m-%d').tar.gz.enc" -p "jofhriout849uioejfoiu09"

をダウンロードし、そのファイルを

sudo openssl aes-256-cbc -e -in red-backup-2016-09-22.tar.gz.enc -out red-backup-2016-09-22.tar.gz

そして、ファイルのパスフレーズを2回入力すると、次のようなファイルが作成されます。

red-backup-2016-09-22.tar.gz

次に

sudo tar -zxvf red-backup-2016-09-22.tar.gz

を取得し

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

また、ファイル名を.tarに変更し、さらに、次のことを試してみました。

sudo tar xvf red-backup-2016-09-22.tar.gz

そして

sudo tar xvf red-backup-2016-09-22.tar

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

どこで間違っているのか、何か思い当たることはありませんか?

解決方法は?

gzipのバージョンが合わないためと思われます。

まず、これらの点を確認してください。

<ブロッククオート

どのgzip

/usr/bin/gzip または /bin/gzip

bin/gzip か /usr/bin/gzip のどちらかであるべきです。もし、gzip が他の gzip アプリケーションを指している場合は、PATH 環境変数からそのパスを削除して試してみてください。

次は

gzip -V

gzip 1.3.5 (2002-09-30)

これらのチェックポイントを押さえれば、問題を解決することができます。