De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Fabrício Ceolin
Data de Publicação: 02 de Maio de 2009
Caso venhamos criar um procedimento de instalação, certamente esbarramos no problema da geração de uma lista de pacotes instalados. Sabemos que essas listas podem ser gigantestas, portanto desenvolvi um pequeno script que resolve este problema.
Neste artigo vamos explorar um sistema baseados em Debian, porém existem comandos equivalentes para sistemas baseados em RedHat para obtenção das listas.
O algoritmo é muito simples.
Gera-se uma lista de pacotes intalados:
dpkg --get-selections | awk '{ print $1 }' > pacotes
Gera-se uma lista de dependências destes pacotes, tirando os pacotes repetidos, linhas vazias e pacotes virtuais.
for name in $(cat pacotes) do apt-cache depends $name | awk '{ print $2 }' >> depends done cat depends | sort -u | sed -e 's/^<.*//' | grep -v '^$' > depends.sort
Subtrai-se os dois conjuntos, o dos pacotes, com os dependentes:
comm -23 <(sort pacotes) <(sort depends.sort) > pacotes.mestre
Temos a lista mínima de pacotes.
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários