我正在尝试编写一个使用GNU parallel、xz和GnuPG进行压缩/加密备份归档的并行脚本。脚本的核心部分如下:
没有 GnuPG 加密时,它运行得很好(解压和解包都可以),但添加并行加密后,无法解密,出现以下错误:
因为未压缩的大小与gnu parallel的块大小(约125M)相同,所以我认为这与GnuPG对部分块加密的支持有关。我该如何解决这个问题?
tar --create --format=posix --preserve-permissions --same-owner --directory $BASE/$name --to-stdout . \
| parallel --pipe --recend '' --keep-order --block-size 128M "xz -9 --check=sha256 | gpg --encrypt --recipient $RECIPIENT" \
| pv > $TARGET/$FILENAME
没有 GnuPG 加密时,它运行得很好(解压和解包都可以),但添加并行加密后,无法解密,出现以下错误:
[don't know]: invalid packet (ctb=0a)
gpg: WARNING: encrypted message has been manipulated!
gpg: decrypt_message failed: Unexpected error
: Truncated tar archive
tar: Error exit delayed from previous errors.
因为未压缩的大小与gnu parallel的块大小(约125M)相同,所以我认为这与GnuPG对部分块加密的支持有关。我该如何解决这个问题?
知情,供参考
另一个与随机数生成有关的并行gpg加密问题
https://unix.stackexchange.com/questions/105059/parallel-pausing-and-resuming