--encrypt-key
我正在尝试通过 cron 脚本和 GNUPG 密钥 ID(来自)运行 Duplicity 备份gpg --list-secret-keys
。
它失败了,/root/backup.sh: 5: --encrypt-key: not found
但如果我以 root 身份手动运行该行,那么它就可以正常工作。
有任何想法吗?
备份.sh:
test -x $(which duplicity) || exit 0
. /root/.passphrase
export PASSPHRASE
$(which duplicity) --encrypt-key SOMEKEYID /mnt/nas01 b2://SOMEBACKBLAZETHING@nas01
.passphrase 只是一个包含 GPG 密钥密码的文本文件。
答案1
你的脚本有错误。
看起来which
找不到duplicity
返回空并且你的shell尝试运行--encrypt-key
显然不起作用的程序。
因此首先删除$(which ...)
,这样它就会抱怨此后找不到duplicity
。
一些 cron 实现没有设置默认的PATH
环境变量。这可能是找不到 duplicity 的原因。通过将其添加到 crontab 顶部或提供二进制文件的完整绝对路径来解决这个问题。
..ede/duply.net