Solução do erro No module named cElementTree Error no Cent’OS

E ai pessoal, beleza?

Esta sema enfrentei um terrível problema, após executar atualizar o sistema (Cent’OS 5.4), fui instalar um pacote qualquer pelo yum e dei de cara com a mensagem:

There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

   No module named cElementTree

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
2.4.3 (#1, Sep  3 2009, 15:37:12)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-46)]

If you cannot solve this problem yourself, please go to
the yum faq at:

http://wiki.linux.duke.edu/YumFaq

Antes de pensar em uma possível solução, vamos mapear os últimos eventos relacionados com pacotes no sistema:

  1. Adicionei os repositórios “remi, epel e rpm-forge”
  2. Atualizei o sistema
  3. o YUM pára de funcionar

Até o ponto 2, tudo foi feito a partir do yum, isto significa dizer que o erro está relacionado com o evento mais próximo ao erro.

Para saber o que pode ter acontecido, vamos aos logs do yum e tentar encontrar o que ocorreu na última vez que o mesmo foi executado com sucesso que poderia causar o dito cujo erro:  “No module named cElementTree“:

<BASH> code | Pure Source
  1. cat /var/log/yum

Pode parecer coincidencia mas no final do arquivo, ou melhor, na última linha, veja o que encontrei:  “Apr 05 22:59:28 Updated: python-elementtree-1.2.6-7.fc3.rf.i386“, nada mais nada menos dizendo que dita cuja “elementtree” foi atualizada.

Se isto parece está relacionado com o nosso problema, que tal fazer um downgrade da mesma?

Fazendo o downgrade do pacote python-elementtree

Crie um arquivo chamado “erro-yum-elementtree.sh” em um diretório qualquer.

<BASH> code | Pure Source
  1. vim ~/erro-yum-elementtree.sh

Coloque o código abaixo no arquivo:

<BASH> code | Pure Source
  1. #!/bin/sh
  2. #-----------------------------------------------------------------------------#
  3. # Description: Resolvendo o erro "No module named cElementTree" do YUM #
  4. # #
  5. # Este script volta a versão do pacote python-elementtree para a #
  6. # versão oficial do CentOS 5.4 e bloqueia a atualização do mesmo #
  7. # pelo YUM. #
  8. # #
  9. # Author: Moisés P. Sena #
  10. # Author Link: http://www.moisespsena.com #
  11. # Link: http://linux.moisespsena.com #
  12. # Font: http://linux.moisespsena.com/ #
  13. # solucao-do-erro-no-module-named-celementtree-centos #
  14. #-----------------------------------------------------------------------------#
  15.  
  16. # identificar se a arquitetura do sistema
  17. arch=$(arch | grep x86_64)
  18. arch=${arch:-i386}
  19.  
  20. # fazer o downgrade do pacote
  21. rpm -Uvh --oldpackage "http://mirror.centos.org/centos-5/5.4/os/$arch/CentOS/python-elementtree-1.2.6-5.$arch.rpm"
  22.  
  23. # bloquear a atualização do pacote python-elementtree
  24. yumexclude=$(cat /etc/yum.conf | grep "^exclude=")
  25.  
  26. if [ "$yumexclude" = '' ];
  27. then
  28. echo "
  29. exclude=python-elementtre*
  30. " >> /etc/yum.conf
  31. else
  32. sed -e 's/^exclude=/exclude=python-elementtre\* /g' /etc/yum.conf > /tmp/yum.conf
  33. mv -f /tmp/yum.conf /etc/yum.conf
  34. fi

Salve o arquivo e feche o editor: pressione ESC, digite “:wq”.

Considerando que você está logado com permissões de root, execute o arquivo

<BASH> code | Pure Source
  1. sh ~/erro-yum-elementtree.sh

Bom pessoal, é isto aí, espero ter contribuído.

Fiquem com Deus.

Posted in Cent'OS, Linux geral at abril 17th, 2010. 4 Comments.

Recuperando o Gerenciador de Boot do Linux

Linux vs WinBom dia galera!

Se você é Linuxista, ou pelo menos tenta ser um, mas não quer abandonar de vez o sistema da Micros**, até porque de repente você é um daqueles usuários que não arreda o pé dos softwares da Adobe, tipo o Photoshop, ou mesmo CorelDraw, programas indispensáveis para designers, até que existem alternativas excelentes para o *nix, mas fala sério, não dá para comparar né? :D ..

Chega de blábláblá e vamos direto ao ponto ..:D

Digamos que tinha na sua máquina os sitemas Linux e Windows, por exemplo, onde a escolha de qual utilizar era feita no menu de Boot. Mas, como sempre, de vez em quando, é necessário dar uma checada no Win*, ou melhor dar uma formata no sujeito.

O grande problema vem depois que tudo volta ao “normal”, você acabou de intalar o Win* e quer voltar a usar o “querido” Linux da Vida .. (hã ?!?), reinicia seu Mustang e percebe que o potente entrou direto no Win*, nem te deu satisfação de porque não te permitiu escolher qual sys utilizar.

Isto é fato que a Micro** não quer que você utiliza qualquer que seje o sys que não advenha da mesma (será inveja ??!! ..rs).

Seja como for não há motivo para você arrancar os cabelos, ou mesmo entrar em PÂNICO de vez. A solução é bastante simples:

Se você tem o Live CD do Ubuntu, seja qual for a versão, (ou mesmo outra distro qualquer em live CD, aqui falarei do Ubuntu, mas a lógica é mesma para os outros), inicie o micro com o CD do Ubuntu no drive. Depois, escolha o item Testar o Ubuntu Sem Qualquer Mudança no Computador. Abra o terminal em Aplicativos > Acessórios > Terminal e tecle o su. Depois, digite o comando grub e, em seguida, find /boot/grub/stage1. Será mostrada a partição com o grub, com um texto como hd01. Rode, então, os comandos root (hd01) e setup (hd01).

Reinicie a potente e perceberá que teu Mustange está vibrante, turbinado de vez, pronto para encarar qualquer sys Micro** com o terrível e indomável Sr. *nix.

Posted in Linux geral, Ubuntu at abril 11th, 2010. No Comments.

Lista de comandos Linux para administração e monitoramento

O Linux possui uma série de comandos que permitem ao administrador monitorar o que está acontecendo com seus processos, usuários e periféricos.

Aqui vai minha lista de comandos preferidos, com alguns comentários.

ps

Processos em execução.

Como qualquer sistema operacional moderno, o Linux executa vários processo simultaneamente. Alguns ficam apenas esperando requisições, como o Apache ou MySQL. Outros como o Cron realizam tarefas ativamente.

Se você trabalha com Linux a mais de 2 semanas, já deve conhecer o ps, então vai aqui a minha sintaxe preferida:

ps auxw

Esse comando mostra todos os processo que estão sendo executados, inclusive os serviços que o servidor disponibiliza como HTTP e FTP (alguns serviços podem ser disparados através de INETD ou XINETD, que nesse apenas esse super-serviço irá aparecer).

Nesse comando, o que mais gosto é a opção “w” que aumenta o espaço disponível para cada linha. Alguns processos tem sintaxe muito longa e saem cortados sem o “w”. Sofri muito até descobrir essa opção.

top

O comando top mostra os processo em tempo real, ordenados pelos que consomem mais recursos (o comando possui opções para outras ordenações, mas a default para mim é a melhor).

O servidor está lento? O top pode te dar uma boa pista de quais processos estão comendo processamento (coluna %CPU) e memória (coluna %MEM).

Acima da lista de processo, o comando mostra algumas informações sobre as CPUs (linha “Cpu(s):”) aonde, entre outra coisas, temos o tempo livre (%id de idle), tempo gasto com programas (%us) e tempo gasto com processos internos de sistema (%sy).

w

O comando w (cuidado para não ter câimbra nos dedos para digitar esse comando “tão” longo) lista os usuários conectados (inclusive eventuais hackers invadindo o sistema pode ser vistos por aqui).

uptime

Bem conhecido, mas vale ser lembrado: indica quanto tempo o servidor está no ar, ou seja, quanto tempo desde o último boot se passou.

Um linux com uptime baixo sem nenhuma razão óbvia (por exemplo, não é desligado) é sinal de problema (sobreaquecimento por exemplo).

Ele também mostra a carga média dos processadores.

ngrep

Trabalha sobre o tcpdump para se transformar em um sniffer de pacotes. Ideal para identificar aqueles problemas mais complexos dentro da rede.

ifconfig -a

Lista todas as interfaces de rede do Linux, juntamente com informações detalhadas de seu estado, dados de camada de enlace (por exemplo MAC das placas Ethernet), camada de rede (IP), etc.

route

Lista todas as rotas, ou seja, indica como o Linux está roteando os pacotes.

Esta é a minha lista de comandos de administração preferidos, mas creio que você deve ter a sua também. Se você conhece algum outro comando interessante, por favor compartilhe com o resto da comunidade Under-Linux, com seu comentário abaixo.

Veja o artigo original no site do author: http://under-linux.org/blogs/mlrodrig/lista-de-comandos-linux-para-administracao-e-monitoramento-1939/

Posted in Comandos Linux, Linux geral, Uncategorized at abril 11th, 2010. No Comments.