Re-setting perms no RPM parece não funcionar

2

Estou usando o RPM para verificação de arquivos. O que eu faço é correr

rpm -Va

para obter uma lista de arquivos que foram alterados. Então eu corro

rpm -qf 

para obter o nome do pacote ao qual o arquivo pertence. Finalmente eu corro

rpm --setperms <pkgname>

Isso é executado sem erro, mas não parece fazer o seu trabalho, como quando eu faço o kickoff de uma nova verificação, ele retorna a mesma lista de arquivos. Quaisquer razões / advertências sobre por que isso nem sempre funciona como planejado?

    
por user53029 05.10.2015 / 16:57

1 resposta

3

Sem detalhes sobre o que está falhando, quem sabe, pois algumas das verificações sempre falharão e nunca poderão ser corrigidas, se, por exemplo, /etc/aliases tiver sido modificado para apontar root mail em outro lugar:

% rpm -qf /etc/aliases
setup-2.8.14-20.el6_4.1.noarch
% rpm -V setup
S.5....T.  c /etc/aliases
% 

Nesse caso, o tamanho do arquivo é diferente (o que --setperms não faria nada para corrigir), o resumo é diferente (novamente, --setperms não está relacionado) e o mtime é diferente, o que ainda --setperms não fará qualquer coisa para.

No entanto, as permissões certamente podem ser quebradas e corrigidas com --setperms .

% sudo chmod 7001 /etc/aliases
% ls -l /etc/aliases
---S--S--t. 1 root root 1542 Aug  1  2014 /etc/aliases
% rpm -V setup
SM?....T.  c /etc/aliases
% sudo rpm --setperms setup
% rpm -V setup             
S.5....T.  c /etc/aliases
% ls -l /etc/aliases       
-rw-r--r--. 1 root root 1542 Aug  1  2014 /etc/aliases
% 

Observe a segunda coluna para "modo" e como a verificação de resumo falhou, considerando que as permissões foram aprovadas.

(Um wrapper em torno de rpm -V pode ser útil, para verbosify esta saída bastante enigmática ...)

    
por 05.10.2015 / 18:23