gpg

gpg usa i file temporanei invece delle pipe

Ho il mio /root montato in sola lettura. Ho uno script che invia un'e-mail crittografata usando gpg ; qualcosa come il seguente:

echo "hello" | gpg --no-verbose -e -a -r martin.com | mail martin.com

Ma ricevo un errore:

gpg: failed to create temporary file `/root/.gnupg/.#dkflsfj': File system di sola lettura

Come posso dire a gpg di non utilizzare file temporanei? Ho trovato un'opzione use-temp-files nella pagina man :

use-temp-files

    Sulla maggior parte delle piattaforme simili a Unix, GnuPG comunica con il programma di supporto del server delle chiavi tramite pipe, che è il metodo più efficiente. Questa opzione obbliga GnuPG a usare file temporanei per comunicare. Su alcune piattaforme (come Win32 e RISC OS), questa opzione è sempre abilitata.

Non ho questa opzione abilitata nella mia configurazione. Apparentemente, è impostato di default. C'è un modo per "negare" questa opzione? L'opzione no-use-temp-files non sembra avere alcun effetto:

echo "asdf" | gpg --keyserver-options no-use-temp-files -e -a -r martin.com

Ricevo ancora lo stesso errore: gpg: failed to create temporary file `/root/.gnupg/.#jkfjg': Read-only file system e se dico --no-use-temp-files , ottengo un errore : gpg: Invalid option "--no-use-temp-files" .

C'è un altro modo per risolvere questo problema?

Ho risolto il problema utilizzando l'opzione --lock-never , che impedisce a gpg di tentare di bloccare il file.




L'opzione può essere disattivata aggiungendo il prefisso "no-".

--keyserver-options name=value1

È una stringa delimitata da spazi o da virgole che fornisce opzioni per il keyserver.Le opzioni possono essere precedute da un `no-' per dare il significato opposto.