Como eu removo um usuário do arquivo dpkg-statoverride?

4

Tentei instalar um pacote depois de excluir alguns servidores que eu não precisava mais e remover os usuários e grupos do pacote de software excluído. Fui buscar e instalar um novo pacote e recebi o seguinte erro.

user@localhost~$ sudo apt-get install any-package

... package installation output omitted for brevity ...

dpkg: unrecoverable fatal error, aborting:
syntax error: unknown user 'puppet' in statoverride file
E: Sub-process /usr/bin/dpkg returned an error code (2)

Então / usr / bin / dpkg-statoverride tem uma opção para remover um caminho, mas o binário lança o mesmo erro quando tento executá-lo ao lado de todo o contexto do apt-get install.

Então eu acabei de adicionar o fantoche de usuário, e eu posso baixar os pacotes novamente, mas estou tentando remover qualquer elemento estranho do meu sistema de desenvolvimento, então, no que me diz respeito, isso não é uma solução porque funciona.

Até onde eu sei, o comando estatua diz ao gerenciador de pacotes para instalar certas coisas em um certo caminho, e mexe com o sinalizador setuid, então potencialmente, ele pode estar abrindo um monte de falhas de segurança instalando programas co- propriedade de um usuário e grupo não utilizados. Existe uma razão pela qual o dpkg-statoverride não é atualizado com o resto do sistema quando um usuário é removido? E existe uma maneira de contornar isso para que eu não precise: adduser - > instalar - > deluser: toda vez que eu quero instalar um pacote?

    
por blanket_cat 02.08.2014 / 23:37

1 resposta

8

Você pode tentar isso:

sudo sed -i '/puppet/d' /var/lib/dpkg/statoverride

Deve remover o usuário do statoverride e permitir que você instale novamente

    
por ElefantPhace 03.08.2014 / 00:08