Post em Destaque

Quando serviços ficam caindo… o que fazer até a solução chegar?

Serviços rodando não deveriam cair simplesmente do nada. Muitos deles informam a causa em seus logs ou tentam pelo menos dar uma dica do problema. Pode estar relacionado muitas das vezes com problemas de memória como os segfaults (signal 11) mas as vezes os segfaults podem indicar um bug na aplicação...

Leia mais...

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:,

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.

Share Button

Comments (8)

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

Write a comment

*