[FUG-BR] Perl... sempre ele...

Renato Botelho rbgarga em gmail.com
Quinta Junho 13 16:36:55 BRT 2013


On 06/13/2013 04:34 PM, Edinilson - ATINET wrote:
> ----- Original Message ----- 
> From: "Renato Botelho" <rbgarga at gmail.com>
> To: ""Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)"" 
> <freebsd at fug.com.br>
> Sent: Thursday, June 13, 2013 4:18 PM
> Subject: Re: [FUG-BR] Perl... sempre ele...
> 
> 
> On 06/13/2013 03:59 PM, Edinilson - ATINET wrote:
>> ----- Original Message ----- 
>> From: "Marcelo Gondim" <gondim at bsdinfo.com.br>
>> To: ""Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)""
>> <freebsd at fug.com.br>
>> Sent: Thursday, June 13, 2013 11:36 AM
>> Subject: Re: [FUG-BR] Perl... sempre ele...
>>
>>
>> Em 13/06/13 09:54, Edinilson - ATINET escreveu:
>>> Caros amigos, gostaria de relatar um problema que tive aqui e saber se
>>> isto
>>> só ocorre comigo...
>>>
>>> Utilizo o FreeBSD desde a versao 3.xx. Não sou um super especialista em
>>> FreeBSD como muitos aqui da lista, mas tambem não sou um iniciante.
>>> Desde que comecei a utiliza-lo que tenho um certo problema com o Perl.
>>> Sempre que atualizo algum software que depende do Perl, é uma novela (se
>>> pesquisarem no historico da lista encontrarão varios casos que relato
>>> problemas).
>>> O erro que normalmente ocorre são com os modulos (os .pm) que não sao
>>> encontrados ou entao com algum arquivo .so que não é encontrado (mesmo
>>> fazendo todos os procedimentos sempre descritos no /usr/ports/UPDATING ou
>>> entao em sites da internet).
>>>
>>> Numa determinada versão do Perl (que não me lembro agora qual), uma boa
>>> alma
>>> resolveu fazer o script perl-after-upgrade que facilitou bastante as
>>> coisas,
>>> e praticamente resolveu estes problemas de atualizações do Perl.
>>>
>>> Pois bem, ontem resolvi atualizar o pacote do Quagga (coisa que faço
>>> constantemente sem maiores problemas) e tive uma surpresa. Como utilizei 
>>> o
>>> portmaster, veio de "presente" uma atualização do Perl (no meu caso seria
>>> da
>>> 5.14.2 para a 5.14.4).
>>> Quando vi que envolvia o Perl, já fui ler o /usr/ports/UPDATING pois 
>>> sabia
>>> que tinha surpresas e, LOGO NO INICIO (data 12/06/2013), já tinha um 
>>> aviso
>>> dizendo que o script perl-after-upgrade foi removido, e era para usar o
>>> portmaster -r perl no lugar.
>>>
>>> A atualização do Quagga foi tranquila *MAS*, a do Perl, COMO SEMPRE, me
>>> deu
>>> uma dor-de-cabeça ENORME.
>>> Logo que terminou, já parou o apache, mrtg, smokeping e tudo o mais que
>>> dependia do Perl com erro de includes não encontrados. Neste ponto, o
>>> Quagga
>>> continuava funcionando.
>>> POREM, no que fui restartar o Quagga só para ter certeza que ele tambem
>>> estava funcionando 100% (visto que ele utiliza Perl para algumas coisas,
>>> vtysh por exemplo), veio a GRANDE surpresa: comecou a dar erro de
>>> libperl.so
>>> não encontrado.
>>> Como é um servidor que roda BGP, nem preciso dizer a correria que foi
>>> visto
>>> que o Quagga não startava e não subia a sessão BGP.
>>>
>>> Resumindo: voces costumam ter estas dores-de-cabeça quando envolve
>>> atualizar
>>> algo que mexa com o bendito PERL no FreeBSD?
>>>
>>> Obrigado
>>>
>>> Edinilson
>>> ------------------------------------------
>>> ATINET
>>> Tel Voz: (0xx11) 4412-0876
>>> http://www.atinet.com.br
>>>
>>> -------------------------
>>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>>
>>> Edinilson,
>>> Dá uma olhada aqui nesse meu artigo [1].
>>> [1]
>>> http://www.bsdinfo.com.br/2012/04/22/como-saber-de-forma-rapida-e-pratica-se-perdeu-alguma-lib-importante/
>>
>> Caro Marcelo, cheguei a fazer isto na hora e tudo que apareceu "quebrado"
>> (na hora só apareceu uma coisa do Apache22), eu ajustei. POREM, o grande
>> problema do Perl, como disse no email para o Renato, é que algumas coisas
>> parece que só voltam ao normal re-instalando pelo console do cpan.
> 
>> Hmm, se vc usar CPAN misturado com ports vai ter problemas.
> 
> Caro Renato, mas não conheço outra saida, para alguns casos pelo menos.
> Veja 2 exemplos:
> -TODAS as vezes que o Perl é atualizado, tenho erro no SNMP_Util.pm. Como já 
> estou acostumado com isto, faço sempre:
> cd /usr/ports/net-mgt/p5-Net-SNMP-Util
> make install FORCE_PKG_REGISTER=1
> e, depois:
> cd /usr/ports/net-mgt/p5-Net-SNMP_Session
> make install FORCE_PKG_REGISTER=1
> 
> POREM, este método não resolve todas as dependencias do Perl. Por exemplo, o 
> smokeping depende de alguns modulos:
> http://oss.oetiker.ch/smokeping/doc/smokeping_install.en.html
> 
> tal como o Config::Grammar que só fazendo pelo cpan.
> 
> Bem, mas vamos convivendo com isto... fazer o que...

Olha, eu mantenho servidores com perl há muitos anos, já tive algumas
issues em momentos de atualização, mas tudo foi sempre resolvido com
portupgrade / portmaster. O portmaster -r perl recompila o perl e todo
mundo que depende dele, portanto, não deveria sobrar nenhum binário
linkado errado. Se isso acontece é pq tem um bug em algum port
específico ou pq tem algum problema na sua instalação.

-- 
Renato Botelho


Mais detalhes sobre a lista de discussão freebsd