GPG non funziona in crontab

Ho il seguente script:

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

Gli script funzionano perfettamente se eseguiti manualmente, ma semplicemente smettono di lavorare quando la row gpg viene eseguita quando viene eseguita come crontab.

GPG mostra:

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

Sono grato per qualsiasi suggerimento!

Soluzione : aggiungere --no-tty a GPG

  • Firme e crittografia GPG / PGP - una domanda accademica sulla sicurezza
  • Perché apt-get update mi dice di eseguire l'aggiornamento apt-get?
  • Validazione dell'autenticità della firma chiave GPG
  • Crittografia GPG: Sto utilizzando le chiavi giuste?
  • Come disabilitare i controlli GPG per canale in Spacewalk?
  • Come installare chiavi gpg da dietro un firewall?
  • sostituire o rimuovere la firma GPG su RPM
  • È ansible utilizzare una chiave pubblica gpg per crittografare un messaggio senza importre la chiave?
  • 3 Solutions collect form web for “GPG non funziona in crontab”

    Aggiungere -vv al command gpg per vedere più output. Potrebbe avere a che fare con un ~/.gnupg mancante però.

     /usr/bin/gpg --no-tty --passphrase-file /home/vouuuuuuuuu/settings/passfile.txt --decrypt-files /home/juhuuu/dirname/*.gpg; 
    • funziona bene ora grazie a --no-tty
    • prima in cron job log gpg: cannot open / dev / tty ': nessun tipo di dispositivo o indirizzo `
    • quindi non è stato ansible eseguire prima, ora va bene!

    Per risolvere questo problema aggiungi semplicemente l'opzione "–no-tty" alla row di command gpg. la risposta è stata prelevata da una pagina google memorizzata

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.