Estamos usando o Sonatype Nexus Repository Manager
para hospedar apt
repositórios. A GPG
chave de um deles expirou recentemente e precisava ser atualizada. O que eu pensei que seria suficiente era gerar novos pares de chaves (conforme descrito nos documentos oficiais do site), colar a nova chave privada através da interface do usuário do Nexus e a nova senha e, em seguida, apt-key add
a nova chave pública no sistema cliente e tudo estaria pronto. O que acontece em vez disso é que apt update
ainda diz NO_PUBKEY <old_id>
. Não tenho ideia de onde apt
tira a informação agora, que perde a chave antiga e não "sincroniza" a nova chave. Eu também tentei excluir o conteúdo do /var/lib/apt/lists/
diretório antes de chamar o apt update
. o que estou perdendo?
EDIT: Tudo é executado no docker limpo, onde apenas uma nova chave é adicionada apt-key add public.gpg.key
e um novo repositório para /etc/apt/sources.list
,echo "deb <repo_url> bionic main" >> /etc/apt/sources.list
Eu consegui resolver o problema. O repositório nexus apt cria duas pastas. Um é chamado
metadata
e um é chamadopackages
. Nametadata
pasta os arquivosRelease
,InRelease
eRelease.gpg
são criados. Eles não são gerados automaticamente quando a chave é alterada na interface do usuário. Para forçar a regeneração desses arquivos, a pasta deve ser excluída e um pacote deve ser carregado. Isso acionará a regeneração da pasta de metadados com todos os arquivos apropriados. Após esta operação, as teclas estão funcionando.