Eu resolvi o problema usando --lock-never
option, o que impede que gpg
tente bloquear o arquivo.
Eu tenho meu /root
montado como read-only
. Eu tenho um script que envia um email criptografado usando gpg
. algo como o seguinte:
echo "hello" | gpg --no-verbose -e -a -r [email protected] | mail [email protected]
Mas recebo um erro:
gpg: failed to create temporary file '/root/.gnupg/.#dkflsfj: Read-only file system
Como posso dizer a gpg
para não usar arquivos temporários? Eu encontrei uma opção use-temp-files
em man gpg
use-temp-files
On most Unix-like platforms, GnuPG communicates with the keyserver helper program
via pipes, which is the most efficient method. This option forces GnuPG to use
temporary files to communicate. On some platforms (such as Win32 and RISC OS),
this option is always enabled.
Eu não tenho essa opção ativada na minha configuração. Aparentemente, é definido por padrão. Existe alguma maneira que eu poderia "negar" essa opção? Ou alguma outra maneira de corrigir esse problema?
UPDATE : a opção no-use-temp-files
parece não ter nenhum efeito:
echo "asdf" | gpg --keyserver-options no-use-temp-files -e -a -r [email protected]
Eu ainda recebo o mesmo erro: gpg: failed to create temporary file
/ root / .gnupg /.# jkfjg ': sistema de arquivos somente leitura'
A opção pode ser desativada adicionando o prefixo "no -"
--keyserver-options name=value1
This is a space or comma delimited string that gives options for the keyserver. Options can be prefixed with a 'no-' to give the opposite meaning.