Estatísticas de Utilização de Partições do Disco Rígido

Use o comando abaixo para exibir estatítiscas de utilização das partições montadas.

<BASH> code | Pure Source
  1. df -h
Sist. Arq.            Tam   Usad Disp  Uso% Montado em
/dev/sdb1              50G  804M   46G   2% /
none                  770M  192K  770M   1% /dev
none                  774M     0  774M   0% /dev/shm
none                  774M   44K  774M   1% /var/run
none                  774M     0  774M   0% /var/lock
none                  774M     0  774M   0% /lib/init/rw
/dev/sdc1             197G  382M  187G   1% /var
/dev/sda1             183M   35M  139M  21% /boot
Posted in Comandos Linux at maio 30th, 2010. No Comments.

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.

Recompilando ou Compilando o Kernel

Vantagens:

  • Desempenho do kernel: o kernel padrão das distribuições funcionam em qualquer máquina. Isso pode causar perda de desempenho e até a instabilidade.

  • Suporte aos dispositivos: você ativa somente o suporte aos dispositivos existentes da sua máquina, diminuindo o tamanho do kernel e liberando mais memória.

  • Você casa o kernel com sua máquina. :-)

Desvantagens:

  • Você deverá conhecer sua máquina, senão, você poderá desabilitar dispositivos que estavam funcionando.

Obtendo a versão mais nova do kernel

Você poderá obter a versão mais no kernel no seguinte endereço: http://www.kernel.org/. Abaixo está disponível o script completo, desde o download do kernel até o funcionamento do mesmo na sua máquina.

<BASH> code | Pure Source
  1. #!/bin/sh
  2. #
  3. # Descrição: Compilar o novo Kernel
  4. #
  5. # Baixar e Compilar o novo Kernel independente da distribuição GNU/Linux
  6. #
  7. # Autor: Maximiliano R. Mascarenhas
  8. #
  9. # Data: 11/04/2010 15:41
  10. #
  11. # E-mail: maximiliano.mascarenhas@gmail.com
  12.  
  13. # 1 - Baixando a versão mais nova do KERNEL:
  14.  
  15. versao="linux-2.6.33.2"
  16.  
  17. wget -c --directory-prefix=/home/$USER/ --limit-rate=30k http://www.kernel.org/pub/linux/kernel/v2.6/"$versao".tar.bz2
  18.  
  19. # -c : Retoma o download de um arquivo baixado parcialmente
  20. # --directory-prefix= : Caminho do diretório onde será salvo o arquivo
  21. # --limit-rate= : Limita a taxa de download
  22.  
  23. # 2 - Descompactando o arquivo em /usr/src:
  24. tar -jxvf /home/$USER/"$versao".tar.bz2 -C /usr/src
  25.  
  26. # 3 - Criando um link apontando para o novo kernel
  27. ln -sf /usr/src/"$versao" /usr/src/linux
  28.  
  29. # 4 - Entrando no diretório /usr/src/linux
  30. cd /usr/src/linux
  31.  
  32. # 5 - Neste ponto, não tem como escolher os módulos a serem compilados
  33. # automáticamente, esse trabalho é com você. Mas, você terá 3 opções:
  34. # make config(configuração em modo texto),
  35. # make menuconfig (configuração através de menus)
  36. # make xconfig (configuração em modo gráfico).
  37. # Obs: o "make xconfig" necessita de algumas bibliotecas para funcionar,
  38. # usarei aqui o "make menuconfig" que funciona em todas as distribuições.
  39. # Abrirá uma interface no console para você escolher o que será compilado.
  40.  
  41. make menuconfig
  42.  
  43. # 6 - Verificar depedências:
  44. make dep
  45.  
  46. # 7 - Limpar construções anteriores do kernel:
  47. make clean
  48.  
  49. # 8 - Iniciar a compilação do kernel estático:
  50. make bzImage
  51.  
  52. # 9 - Compilar os módulos referente aquele kernel:
  53. make modules
  54.  
  55. # 10 - Instalando os módulos do novo kernel em /lib/modules/:
  56. make modules_install
  57.  
  58. # 11 - Saindo do diretório /usr/src/linux
  59. cd
  60.  
  61. # 12- Copiando o arquivo bzImage (este arquivo contém o kernel) para /boot
  62. cp /usr/src/linux/arch/x86/boot/bzImage /boot/vmlinuz-"$versao"
  63.  
  64. # 13 - Criando um novo link apontando para o novo kernel
  65. ln -sf /boot/vmlinuz-"$versao" /boot/vmlinuz
  66.  
  67. # 14 - Gerando um novo setor de partida (GRUB ou LILO):
  68. grub=`ls /sbin/grub-install`
  69.  
  70. if [ -e "$grub" ]
  71. then
  72. /sbin/grub-install
  73. else
  74. lilo
  75. fi
  76.  
  77. # 15 - Reiniciando a máquina:
  78. reboot
Posted in Uncategorized at abril 12th, 2010. 1 Comment.

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.

Instalar PHP 5.3 no Ubuntu 9.10

PHP Logo

Esta sema precisei instalar o PHP 5.32 no Ubuntu 9.10 server, e só depois de googlar por mais de 2 horas é que conseguir atingir meu objetivo.

Compartilho portanto com vocês os passos que segui:

  1. Importar os repositórios necessários;
  2. Atualizar o sistema;
  3. Instalar os pacotes;
  4. Configurar o PHP Pear.

Importar os repositórios necessários

<BASH> code | Pure Source
  1. #***************************************************#
  2. # Descrição: Instalar o PHP 5.3+ com modulos e #
  3. # PHP PEAR no Ubuntu Server 9.1 #
  4. # #
  5. # Este processo pode ser compatível #
  6. # com Debian Lenny e outras versoes #
  7. # do Ubuntu #
  8. # #
  9. # Autor: Moisés P. Sena #
  10. # Web Site: http://moisespsena.com #
  11. # Blog: blog.moisespsena.com #
  12. # Data: 26/03/2010 00:55 #
  13. #***************************************************#
  14.  
  15. #---------------------------------------------------#
  16. # Adicionar o repositorio do PHP 5.3 #
  17. #---------------------------------------------------#
  18.  
  19. arch=$(arch | grep i386)
  20. arch=${arch:-amd64}
  21.  
  22. sudo echo "
  23. #---------------------------------------------------#
  24. # Repositorio do PHP 5.3 #
  25. #---------------------------------------------------#
  26.  
  27. deb http://php53.dotdeb.org stable all
  28. deb-src http://php53.dotdeb.org stable all
  29.  
  30. " > /etc/apt/sources.list.d/php53.dotdeb.list
  31.  
  32. sudo echo "
  33. #---------------------------------------------------#
  34. # Repositorio do Bebian Lenny #
  35. #---------------------------------------------------#
  36.  
  37. deb http://packages.dotdeb.org stable all
  38. deb-src http://packages.dotdeb.org stable all
  39.  
  40. " > /etc/apt/sources.list.d/packages.dotdeb.list
  41.  
  42. #---------------------------------------------------#
  43. # Os pacotes abaixo é para a arquiterura i386, #
  44. # se seu computador for amd64, troque "_i386.deb" #
  45. # por "_amd64.deb" #
  46. #---------------------------------------------------#
  47.  
  48. wget --directory-prefix=/tmp "http://us.archive.ubuntu.com/ubuntu/pool/main/k/krb5/libkrb53_1.6.dfsg.4~beta1-5ubuntu2_$arch.deb"
  49. wget --directory-prefix=/tmp "http://us.archive.ubuntu.com/ubuntu/pool/main/i/icu/libicu38_3.8-6ubuntu0.2_$arch.deb"
  50. sudo dpkg -i "/tmp/libkrb53_1.6.dfsg.4~beta1-5ubuntu2_$arch.deb"
  51. sudo dpkg -i "/tmp/libicu38_3.8-6ubuntu0.2_$arch.deb"
  52.  
  53. rm -f "/tmp/libkrb53_1.6.dfsg.4~beta1-5ubuntu2_$arch.deb"
  54. rm -f "/tmp/libicu38_3.8-6ubuntu0.2_$arch.deb"
  55.  
  56. #---------------------------------------------------#
  57. # Importar chaves #
  58. #---------------------------------------------------#
  59. gpg --keyserver wwwkeyseu.pgp.net --recv-keys 9AA38DCD55BE302B
  60. sudo apt-key add "/home/$USER/.gnupg/pubring.gpg"

Atualizar o sistema

<BASH> code | Pure Source
  1. #---------------------------------------------------#
  2. # Atualizar o sistema #
  3. #---------------------------------------------------#
  4. sudo aptitude update
  5. sudo aptitude safe-upgrade
  6. sudo aptitude full-upgrade

Instalar os pacotes

<BASH> code | Pure Source
  1. #---------------------------------------------------#
  2. # Instalar os pacotes #
  3. #---------------------------------------------------#
  4.  
  5. sudo aptitude install \
  6. libltdl3 \
  7. php5-dev \
  8. php5 \
  9. php5-cli \
  10. php5-xml \
  11. php5-xmlrpc \
  12. php5-xdebug \
  13. php5-xcache \
  14. php5-mysql \
  15. php5-pgsql \
  16. php-pear \
  17. php5-interbase \
  18. php5-imap \
  19. php5-ssh2 \
  20. php5-odbc \
  21. php5-imagick \
  22. php5-common \
  23. php5-sqlite \
  24. php5-tidy \
  25. php5-xsl \
  26. php5-cgi \
  27. php5-mcrypt \
  28. php5-curl \
  29. php5-gd \
  30. php5-memcache \
  31. php5-mhash \
  32. php5-pspell \
  33. php5-ftp \
  34. php5-snmp \
  35. php5-sqlite \
  36. libmagick9-dev;

Configurar o PHP Pear

<BASH> code | Pure Source
  1. #---------------------------------------------------#
  2. # Configurar PHP pear #
  3. #---------------------------------------------------#
  4.  
  5. sudo pear channel-update pear.php.net
Posted in PHP, Ubuntu at abril 8th, 2010. No Comments.

Primeiro Post

Antes de mais nada, gostaria de dar as Boas Vindas aos Profissionais, Amadores e iniciantes no *nix.

Aqui, desvendaremos mistérios deste mundo emergente. Scripts, dicas, ferramentas e experiências é o principal tema deste blog. Tentaremos trazer uma informação prática e extremantes simples, mesmo que o conteúdo em si seja complexo.

Comentem e discutam os assuntos abordados. Tentaremos, com a ajuda de toda a comunidade e principalmente dos leitores estar sanar as dúvidas e fazer com o nosso material melhore cada vez mais.

Esperam que aproveitem ao máximo.

Tenham um ótimo Fim de Semana!

Fiquem com Deus.

Posted in Uncategorized at abril 3rd, 2010. No Comments.