Como verificar arquivos de configuração modificados em um sistema Debian?

54

Como encontrar todos os arquivos de configuração gerenciados pelo Debian que foram alterados do padrão?

    
por malclocke 02.12.2009 / 23:26

7 respostas

70

Para encontrar todos os arquivos de configuração gerenciados pelo Debian que foram alterados a partir do padrão, você pode usar um comando como este.

dpkg-query -W -f='${Conffiles}\n' '*' | awk 'OFS="  "{print $2,$1}' | md5sum -c 2>/dev/null | awk -F': ' '$2 !~ /OK/{print $1}'

Editar (funciona com sistemas localizados):

dpkg-query -W -f='${Conffiles}\n' '*' | awk 'OFS="  "{print $2,$1}' | LANG=C md5sum -c 2>/dev/null | awk -F': ' '$2 !~ /OK/{print $1}' | sort | less

Editar (funciona com pacotes com OK no nome do arquivo):

dpkg-query -W -f='${Conffiles}\n' '*' | awk 'OFS="  "{print $2,$1}' | LANG=C md5sum -c 2>/dev/null | awk -F': ' '$2 !~ /OK$/{print $1}' | sort | less
    
por 02.12.2009 / 23:27
36

de man debsums :

  debsums -ce
          List changed configuration files.
    
por 21.07.2013 / 12:50
9

Desculpe necro, mas enquanto a resposta do @ naught101 estava correta para arquivos modificados , não ajudou em arquivos adicionados . @ A solução do Graeme é legal, mas depende do etckeeper; Eu não quero modificar o sistema de arquivos.

find /etc -type f | grep -vFf <(debsums -e | sed 's/[[:space:]]*OK$//')

Localizar arquivos em / etc / que debsums não não relatam como válido. Isso significa arquivos não rastreados ou arquivos que não são "OK" (hashes não correspondem).

    
por 11.01.2015 / 23:33
8

Eu geralmente gosto de configurar o etckeeper no sistema praticamente imediatamente. Com algo como o etckeeper eu posso encontrar não apenas quando o arquivo é diferente, mas eu realmente posso ter uma diferença de como ele é diferente.

Veja:

por 02.12.2009 / 23:49
5

Ou debsums -e | grep FAILED que também mostrará todos os conffiles ausentes

(do pacote debsums)

    
por 08.04.2013 / 17:45
1

Isso se afasta um pouco da pergunta original, pois também fornecerá arquivos de configuração ADDED, em vez de apenas aqueles modificados. Embora os arquivos não incluídos em qualquer pacote deb também sejam capturados. Ambos os comportamentos podem ser desejáveis.

Depende de ter usado o etckeeper com o git vcs de forma ideal desde o início, embora também deva funcionar se você especificamente adicionar e confirmar arquivos previamente alterados após o primeiro commit. Note que uma pegadinha aqui é que o Ubuntu configura o etckeeper para usar o Bazaar por padrão (patrocinador canônico Bazaar), ao invés do padrão do git definido pelos desenvolvedores do etckeeper.

A idéia é obter uma lista de todos os commits que não são feitos automaticamente após o apt. Em seguida, liste os arquivos alterados em todos, exceto no primeiro commit:

filter_sed="/committing changes in \/etc after apt run\$/d"

etckeeper vcs log --oneline |
  sed "$filter_sed; \$d; s/ .*//" |
  xargs etckeeper vcs show --name-only --format=format: |
  sort |
  uniq |
  sed "/^\$/d"

A cadeia de filtros também pode ser estendida para abranger outras confirmações se elas forem nomeadas de forma consistente. Pode ser bom para instalações diretamente de um arquivo deb ou do código-fonte.

Um arquivo notável que esta escolha para mim é o meu xorg.conf - você atualmente tem que adicionar isso ao / etc / X11 se precisar. Além disso, minhas alterações de default/grub são selecionadas, parece que isso é copiado de / usr / share por um script de pós-instalação em vez de ser listado como parte de um pacote. Se uma alteração foi feita em um arquivo como este, os métodos relacionados ao dpkg não irão revelá-lo.

    
por 26.09.2013 / 15:11
0

Isso pode ser um exagero, mas já que alguém mencionou o etckeeper e enquanto eu estava investigando, deparei com essa outra gem que pode ser mais útil se você estiver tentando descobrir coisas "depois do fato".

link

Blueprint is a simple configuration management tool that reverse-engineers servers. It figures out what you’ve done manually, stores it locally in a Git repository, generates code that’s able to recreate your efforts, and helps you deploy those changes to production.

    
por 28.06.2018 / 17:37