Como saber de forma rápida e prática se perdeu alguma lib importante
Postado por gondim | Categoria Dicas, FreeBSD | Dia 22-04-2012
Tags:bsdadminscripts, lib
8
Uma das coisas que mais acontecem quando atualizamos determinados pacotes ou até mesmo o sistema FreeBSD é alguma lib que já existia ser atualizada e os programas que já haviam sido instalados e compilados com aquela lib antiga, darem pau.
Normalmente isso ocorre com alguma lib muito utilizada como foi o caso recentemente do pacote pcre-8.30_1 que vem a libpcre que contém funções de expressões regulares e que são utilizadas por aplicações importantes como: Postfix e PHP
Nesse caso todos os pacotes que estavam usando a libpcre após a atualização, quebraram e você não percebeu. Vai perceber quando os serviços caírem e não levantarem mais. Por isso é sempre bom fazer uma checagem após as atualizações e existe um pacote muito importante que pode lhe ajudar nessa tarefa de checar todos os pacotes instalados no sistema e lhe dizer quem precisa ser recompilado.
O nome do “santo” aqui é o bsdadminscripts que possui algumas ferramentas e a que vamos usar é a pkg_libchk. Mãos à obra:
# cd /usr/ports/sysutils/bsdadminscripts
# make install clean distclean
Após a instalação o comando à seguir vai ler todos os pacotes instalados e se tiver algum quebrado será mostrado:
# pkg_libchk -q -r
Com a lista de pacotes quebrados você já saberá o que precisa ser recompilado. Como eu utilizo o portmaster para gerenciar meus pacotes, o trabalho fica bem mais tranquilo. Mas cada um usa o que achar melhor, o importante é saber o que consertar.
É isso aí pessoal.
Show de bola Gondim.
Valeu pela dica meu amigo.
Forte abraço,
Ricardo Tweeg
Essa dica já me salvou né professor?
E agora é que li isso !!
E como salva esse pkg_libchk. Antes de descobrí-lo passei uns apertos com uns programas quebrados rsrsrsr
[…] É sempre bom checar se após apagarmos alguma lib antiga se algum pacote ficou quebrado e podemos fazer isso usando o pkg_libchk. Você pode ver mais sobre ele neste post. […]
[…] e o bind, cuidado para não esquecer de recompilá-los senão pode parar um correio ou um DNS. Aqui você vai encontrar um post meu sobre uma ferramenta que ajudará à descobrir pacotes quebrados no […]
Boa noite Gondim,
Obrigado pela dica.
Uma pergunta:
Digamos que tenha uma lib quebrada.
Tem algum comando do novo gerenciado de pacotes “pkg” que mostra quais pacotes possuem aquela lib quebrada para que instalando o determinado pacote eu passe a ter a lib em bom estado?
Obrigado,
RM
Boa noite Ricardo,
Tem sim. Ainda não consegui comparar mas você poderia usar somente para checar dependências e libs:
# pkg check -Bd -nv -a
[]´s
Gondim