Estou ciente das implicações de segurança e entendo por que o uso de apt-key foi descontinuado . Para meu caso de uso, não me importo.
Eu quero correr:
$ apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CC116F55AA7F2382
sem ver nenhum aviso. No entanto, vejo:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CC116F55AA7F2382
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
Executing: /tmp/apt-key-gpghome.KVaQ390iTM/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CC116F55AA7F2382 /dev/null
gpg: "/dev/null" not a key ID: skipping
gpg: key CC116F55AA7F2382: "Icinga GmbH (Build server) <[email protected]>" not changed
gpg: Total number processed: 1
gpg: unchanged: 1
Como forçar nenhuma saída para stdout e avisos? Eu só quero ver a saída de um erro real acontecendo. (Estou ciente de que o script está sendo executado em um sistema que já conhece a chave, pois eu já o executei antes.)
Tentei:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CC116F55AA7F2382 > /dev/null
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CC116F55AA7F2382 2>&1 > /dev/null
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CC116F55AA7F2382 2>&1 /dev/null
Desde que você entenda a implicação do uso de recursos obsoletos.
Analisando o código-fonte do apt , parece que você pode usar a
APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE
variável de ambiente para desabilitar avisos atribuindo a ela qualquer valor.Se você também quiser remover a mensagem informativa, você pode passar o
-q
sinalizador para ocultar as linhas que começam comgpg:
.Para silenciá-lo completamente, redirecione a saída para
/dev/null
Os erros continuarão aparecendo conforme você solicitou (um caractere foi removido da chave do comando):