cron 脚本中的 GPG

GPG in a cron script

我正在尝试对称地(使用 gpg)加密来自 cron 作业的文件。我的脚本中执行此操作的行是:

c/usr/bin/gpg --no-tty -vv --exit-on-status-write-error --batch --passphrase-file /home/backup/full/pass --cipher-algo AES256 --symmetric  fullbackup.tar.bz2 > error.log 2>&1

当我从提示符而不是 crontab 执行脚本时它运行良好。

我尝试使用或不使用 --no-tty--batch--quiet--passphrase-fd 0cat passfile--passphrase-file /gpg/mypass 等选项在其他主题 (here) 上发现的技巧。什么都不管用。该脚本是 运行 来自 crontab 的 root。

添加带有 2>&1 >error.log 的日志文件没有帮助,因为文件(70 字节)填充了 运行dom 二进制字符。

我正在使用 gpg 1.4.12 的 debian。

我还能尝试什么?

这是脚本:

#!/bin/bash

#creating the tar
tar -cpjf /home/backup/full/fullbackup.tar.bz2 --directory=/to_backup
#enc it
/usr/bin/gpg --no-tty -vv --exit-on-status-write-error --batch --passphrase-file /home/backup/full/pass --cipher-algo AES256 --symmetric  fullbackup.tar.bz2 > error.log 2>&1

#[...] ftp upload

正如 Jens Erat 所指出的,gpg 需要文件的完整路径才能加密。