Назад | Перейти на главную страницу

GPG не работает в crontab

У меня есть такой сценарий:

#!/bin/sh -e
PWD="supersecretpassword"
file="/backup/2do/example.txt"
echo before
echo $PWD | gpg --passphrase-fd 0 -c $file
echo after

Скрипты работают отлично, если запускаются вручную, но просто перестают работать, когда строка gpg выполняется, когда выполняется как crontab.

GPG показывает:

gpg: cannot open `/dev/tty': No such device or address

Благодарю за любые предложения!

Решение: Добавить --no-tty в GPG

/usr/bin/gpg --no-tty --passphrase-file /home/vouuuuuuuuu/settings/passfile.txt --decrypt-files /home/juhuuu/dirname/*.gpg;
  • теперь работает нормально благодаря --no-tty
  • before в журнале заданий cron gpg: cannot open/ dev / tty ': нет такого устройства или адреса`
  • поэтому он не мог выполняться раньше, теперь все в порядке!

Добавить -vv к gpg команда, чтобы увидеть больше результатов. Возможно, это связано с отсутствием ~/.gnupg хотя.

Чтобы решить эту проблему, просто добавьте параметр «--no-tty» в командную строку gpg. ответ был взят из кешированного Google страница