Como remover uma chave importada durante a desinstalação do rpm

1

Estou criando um pacote RPM (vamos chamá-lo de Foo) que contém uma chave gpg que será usada para assinar outros RPMs. Durante o script postinstall para Foo, executo 'rpm --import [keyfile]' para importar a chave para o sistema RPM. Isso funciona bem.

Em um esforço para limpar depois de mim, eu gostaria de desfazer essa importação quando o Foo é desinstalado. Eu vejo de outros fóruns que uma maneira de desfazer a importação é fazer "rpm -e gpg-pubkey- [keyid]". No entanto, quando tento fazer isso no script postuninstall do Foo, a desinstalação do RPM trava porque o comando rpm para remover a chave não pode capturar o bloqueio de transação (já que ele já está em uso para remover o Foo).

Então ... existe uma maneira de eu remover a chave gpg quando o pacote Foo RPM original for removido?

    
por Steven 11.06.2013 / 12:04

1 resposta

0

Sim, o bloqueio de transação impedirá o rpm -e.

Você pode renomear o bloqueio (em / var / lib / rpm) em% preun e, em seguida, apague o gpg-pubkey e renomeie o bloqueio no lugar. Renomear tem a vantagem de ser um KISS e expediente hackear e "trabalhar".

    
por 23.09.2014 / 20:04

Tags