安全にバックアップを作成するためにこれを使用しています(?-本当に安全ですか?適切なパスワードを使用していますか?):
# ENCRYPT
ORIGDIR="DIRECTORYNAMEHERE"; tar cvf - "${ORIGDIR}/" 2>/dev/null | gzip -9 - 2>/dev/null | openssl aes-256-cbc -salt -out "${ORIGDIR}.tar.gz.aes"
# DECRYPT
openssl aes-256-cbc -d -salt -in "ENCDIRECTORYNAMEHERE" | tar -xz -f -
Q:しかし、最大圧縮率の7zを使用してこれを行うにはどうすればよいですか?
唯一のOUTPUTファイル以外の一時ファイルを作成するのはよくありません。なぜなら、100 GBのサイズのファイル/ディレクトリを180 GBに圧縮する必要がある場合FS十分な空き領域がないためです(ex 。:圧縮されたファイルは約60 GB必要です)。
特に7z
を使用する理由はありますか、それともgzip
よりも優れた圧縮が必要ですか?
xz
ユーティリティは7z
(LZMA)と同じ圧縮アルゴリズムを使用し、gzip
と同じパイプ圧縮を許可します。
tar cvf ... | xz -9 | openssl ...
これは7zのmanページでカバーされています:
-si Read data from StdIn (eg: tar cf - directory | 7z a -si directory.tar.7z)
すべてのホームスクリプトのリモートバックアップ準備ファイルをすばやく作成するには、以下を使用します。
# Scripts backup
ls ~/*.sh | cpio -ov | 7z a -si ~/Documents/SCRIPT_BACKUP_30062017.cpio.7z
# Scripts restore
7z x -so ~/Documents/SCRIPT_BACKUP_30062017.cpio.7z | cpio -iv
「ホーム」ルートをバックアップしない理由は、一部のディレクトリのみを具体的に同期して送信するためです。復元時にcpioがどのようにスキップして新しい既存のファイルをチェックするかに注意してください。これは強力です。あなたの仕事は上書きされません。
bud @