CentOS - Dicas, comandos e indicações.

Atualizado em: 31/05/2009



Sobre este documento

Comandos que considero exclusivos do CentOS, comandos comum a todas as distro, ao mundo GNU/Linux ou especificos ao pacote, estão no FAQ ou tutorial especifico do pacote ou comando, consulte também o tutorial fedora-dicas.html, as duas distro tem muita coisa em comum.

Resumo de comandos, alguns exemplos e indicações de material relacionado ao CentOS, ambiente, diversos tipos de maquinas e instalações, preferencialmente usando somente o DVD ou CD.

Eventualmente para instalar ou atualizar algum pacote, instalei o smart para buscar os pacotes na internet.

Sobre CentOS

Não tenho comparativos entre as versões RedHat, nem pretendo fazer neste documento, conheço como oficial da RedHat a distribuição Fedora Core e a versão imterprise.

Na internet tem varios relatos dizendo que CentOS é um clone da versão interprise, relatam que é totalmente compativel, tendo como diferença somente o nome, a marca de uma empresa não pode ser usada por outra sem autorização, por isto alteram somente o nome da empresa, de Red Hat para CentOS, a equipe que mantém o projeto não é da RedHat, tem como base os fontes da versão interprise da RH, alteram o nome da distro nos fontes e compilam, ou algo parecido com isto, também relatam que esta versão é totalmente livre, pode copiar, reproduzir e distribuir...

Caso queira saber mais sobre soporte oficial, problemas e consequencias, consulte a documentação no site deles, entre em contato, considere também que versão livre disponibilizada na net não deve ter suporte algum mas pode encontrar ajuda em listas e forum....

Partindo deste conceito pode consultar a documentação do Fedora e Red Hat

Interface de instalação amigável e bem elaborada, quando o instalador não detecta a placa de vídeo, a instalação pode complicar.

Dependendo do perfil de instalação, ativa (habilita) o firewall e Seelinux, são ferramentas de segurança que pode complicar a vida de quem não sabe lidar com elas, na dúvida, desabilite em tempo de instalação, estas opções aparecem no dialogo do instalador.

Endereços úteis

http://www.centos.org/ site principal
http://lists.centos.org/ lista de discussão
http://wiki.centos.org/ Wiki
http://bugs.centos.org/ relatar Bug
http://mirror.centos.org/ espelhos

Download versão 5.0 e anteriores

Página oficial
http://www.centos.org/

Download, listas, documentação e muito mais, tudo em ingles.

Donwload disponivel via http, ftp e rsync

via bittorrent, acesse o endereço acima e procure em download pelas ISO com .torrent no nome, quem tem cliente em ambiente gráfico basta um clique sobre endereço para iniciar o download, via linha de comando copie o endereço, no shell digite (btdownloadcurses) este comando muda conforme a versão do cliente .torrent, cole o endereço do torrent após o comando. A seguir alguns endereços para download via bittorrent

Endereço de um dos torrent para versão 5.0, i386 em DVD ou CD
http://mirrors.easynews.com//linux/centos/5.0/isos/i386/CentOS-5.0-i386-bin-DVD.torrent
http://mirrors.easynews.com//linux/centos/5.0/isos/i386/CentOS-5.0-i386-bin-1to6.torrent

x86_64
http://mirrors.easynews.com//linux/centos/5/isos/x86_64/CentOS-5.0-x86_64-bin-DVD.torrent
http://mirrors.easynews.com//linux/centos/5/isos/x86_64/CentOS-5.0-x86_64-bin-1to7.torrent

A cada novo lançamento altera o o nome da iso, use somente como exemplo para montar a linha, acesse o site veja qual a ISO que deseja baixar, clique com botão auxiliar do mouse, copie o link e substitua no endereço acima.

Dicas e tutoriais sobre bittorrent no FAQ:
http://www.zago.eti.br/bittorrent.html

Documentação

Manual para RH que serve para CentOS
Administração de Sistemas - execelente documentação em português.
http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-isa-pt_br-4/index.html

CentOS-5 Documentation
http://www.centos.org/docs/5/

Fórum, artigos, noticias e muito mais.. (em português)
http://www.centosbr.org/

Listas de discussão sobre CentOS
em português.
http://lists.centos.org/mailman/listinfo/centos-pt-br
Outros idiomas e especificas
http://lists.centos.org/mailman/listinfo

Ambiente utilizado

CentOS 5.3 x86_64 instalado com perfil default, sem seleção de pacotes adicionais ou alteração na seleção, em tempo de instalação, selecionei idioma português, em particionamento optei pela criação manual, somente duas partições (swap e /).

Depois da instalação de pacotes reinicia o sistema, no primeiro boot tem opção para desabilitar firewall, quem tem seu própria firewall deve desabilitar esta opção para evitar conflitos, na tela seguinte tem opção para desabilitar SELinux, pode desabilitar em ambiente de testes ou quem não sabe lidar com ele, ele é opcional, volumes LVM pode dificultar as coias quando instalar este HD como secundario em outra maquina, seja para um simples acesso para copiar arquivos.

Comandos no console - resumo

Configurações e manutenção em ambiente texto, tem suas vantagens, na maioria dos casos já tem o comando nativo da distro, não precisa instalar pacotes adicionais, torna mais rápido em conexões remotas via ssh, sempre funciona quando falha o ambiente gráfico e outras situações. Mas isto depende do ambiente e facilidade de cada um, sempre é possível fazer o mesmo via interface gráfica, tem suas vantagens também, acho que demora mais com navegação e cliques...

Lembre das diversas ferramentas nativas da distro para configuração em ambiente gráfico, estão espalhadas pelo menu, pesquise também no instalador de pacotes, também pode instalar webmin, neste site tem FAQ especifico sobre ele. Mesmo em servidores sem teclado e monitor, pode acessar remotamente via ssh com a opção -X para executar programas da interface gráfica, como exemplo para executar yumex na maquina remota, basta executar no konsole.

ssh -X root@192.168.1.208 /usr/bin/yumex

Mesmo em linha de comando, considere copiar e colar, evite a digitação.

Configurações em geral, no console, use o sudo ou torne root com su -, digite system-config- e pressione a tecla tab duas vezes, deve retornar a lista de opções na instalação, algo semelhante a esta;

  [root@localhost ~]# system-config-
  system-config-authentication     system-config-network-cmd        system-config-securitylevel-tui
  system-config-date               system-config-network-gui        system-config-services
  system-config-display            system-config-network-tui        system-config-soundcard
  system-config-keyboard           system-config-packages           system-config-time
  system-config-language           system-config-printer            system-config-users
  system-config-network            system-config-securitylevel

Continue digitando e teclando tab até completar o nome que deseja, como pode notar, os nomes são bem intuitivos, configurar video system-config-display, configurar rede system-config-network

`chkconfig` configura serviços para inicar junto com o boot, seleciona por nível de inicialização, veja a lista completa com; chkconfig --list, observe a linha sobre ssh;

  sshd            0:desligado     1:desligado     2:ligado        3:ligado        4:ligado        5:ligado        6:desligado

Inicia o servidor sshd quando fizer boot em modo texto (nivel 3) ou modo gráfico (nível 5) nos demais modos não inicia o sshd.

chkconfig é aplicado nos scripts de inicialização, são os links que estão abaixo de /etc/rc.d/

Ajuda; execute somente chkconfige consulte o manual man chkconfig

service - iniciar/parar serviços na sessão atual, perde efeito após reiniciar a maquina, verifica também status e algumas condições permite reload, exemplo de linha de comando para inicar o daemon do ssh (sshd), service sshd start, mais algumas dicas....

  [root@localhost ~]# service
  Usage: service < option > | --status-all | [ service_name [ command | --full-restart ] ]
  [root@localhost ~]# service sshd status
  sshd (pid 3359 3357 2339) está rodando...
  [root@localhost ~]# service sshd --status-all
  Uso: /etc/init.d/sshd {start|stop|restart|reload|condrestart|status}
  [root@localhost ~]# service --help
  Usage: service < option > | --status-all | [ service_name [ command | --full-restart ] ]

gerenciador de pacotes

Gereciador de pacotes nativo da distro, yum, yumex e up2date

yum - gerenciador de pacotes em modo texto (console), faz parte da instalação padrão, manual man yum

yumex - gerenciador de pacotes em ambiente gráfico, instale com o comando;

yum install yumex

Executar yumex, na linha de comando execute yumex, tem que tornar root e chamar a partir de um console do ambiente gráfico, ou procure por Yum Extender no menu, quem usa Gnome, clique em aplicações -> Ferramentas do Sistema -> Yum Extender.

Tem caixa de pesquisa e muito mais, a pesquisa está relacionado à seleção da coluna da esquerda, pesquisar por novos pacotes, clique no ícone "Instalar", coluna da esquerda e depois digite na caixa de pesquisa...

Executar yumex remotamente via ssh, execute no konsole.

ssh -X root@192.168.1.209 /usr/bin/yumex

Troque o IP da linha acima pelo IP da sua maquina remota que roda CentOS.

Interface amigável e intuitiva, muito fácil de usar.

mirror de pacotes CentOS.
http://mirror.centos.org/centos/

Imagem .ISO como repositorio local

Como usar a ISO local para instalar pacotes, substitue o uso do DVD na instalação de pacotes, não requer manuseio da midia nem unidade de DVD.

Os comandos a seguir são para copiar e colar, utilizo em minhas instalações de testes, foram adaptados a partir deste tutorial.

http://www.cyberciti.biz/tips/redhat-centos-fedora-linux-setup-repo.html

Requer o DVD para instalar o pacote.createrepo

yum install createrepo

Crie o diretorio e faça copia da imagem ISO do DVD para este diretorio.

  mkdir -p /iso53/{1,2,3}
  mv /home/zago/CentOS-5.3-x86_64-bin-DVD/CentOS-5.3-x86_64-bin-DVD.iso /iso53
  mount -o loop /iso53/CentOS-5.3-x86_64-bin-DVD.iso /iso53/1
  cd /iso53
  createrepo .
  yum clean all

vi /etc/yum.repos.d/iso.repo

Precisa criar o arquivos de configuração em /etc/yum.repos.d/, use seu editor preferido, na minha instalação, as linhas para copiar são, a linha acima para colar no konsole, ela abre arquivo, depois é só copiar e colar e texto a seguir, ( :wq ) salva e sai.

  [isolocal]
  baseurl=file:///iso53/
  enabled=1

Prontinho, para testar, instale um pacote e confira na coluna " Repository " veja se mostra o nome do repositorio, como neste exemplo mostrando " isolocal ", a seguir, resultado parcial do comando ( yum install samba )

  ==============================================================================================================
   Package                        Arch                Version                       Repository             Size
  ==============================================================================================================
  Installing:
   samba                          x86_64              3.0.33-3.7.el5                isolocal               16 M

pacotes rpm, endereços de alguns servidores

apt

Não encontrei pacotes especificos para CentOS 5.0 x86_64, encontrei pacotes el5, instala via rpm mas não cria canais, veja os pacotes em.

http://www.atrpms.net/dist/el5/apt/

via yum retorna mensagem "Nada fazer"

via rpm -ivh instala com sources.list vazio.

rpm -ivh http://dl.atrpms.net/all/apt-0.5.15lorg3.2-69.0.el5.x86_64.rpm

smart

Ambiente, CentOS 5.0 (x86_64) instalado como estação de trabalho, sem atualizações e pacotes adicionais.

Não encontrei pacotes especificos para CentOS 5.0 x86_64, encontrei pacotes el5.

Instala e funciona tanto em modo texto com ambiente gráfico, mas precisa instalar e configurar canais manualmente.

Veja os resultados.

http://www.atrpms.net/dist/el5/smart/

via yum retorna mensagem "Nada fazer"

via rpm -ivh retorna dependencia de smart-config.

  [root@a8n8 smart]# rpm -ivh http://dl.atrpms.net/all/smart-0.50-45.0.el5.x86_64.rpm
  A obter o http://dl.atrpms.net/all/smart-0.50-45.0.el5.x86_64.rpm
  aviso: /var/tmp/rpm-xfer.as09m8: Header V3 DSA signature: NOKEY, key ID 66534c2b
  erro: Failed dependencies:
          smart-config is needed by smart-0.50-45.0.el5.x86_64

Com `` --nodeps `` instala mas não cria canais.

  wget http://dl.atrpms.net/all/smart-0.50-45.0.el5.x86_64.rpm
  rpm -ivh --nodeps smart-0.50-45.0.el5.x86_64.rpm

Procure pela versão mais recente do smart em http://dl.atrpms.net/el5Server-x86_64/atrpms/stable/

Mais detalhes e passo a passo nos tutoriais sobre smart, como criar os canais manualmente, tem exemplos especificos para CentOS 5.0.

Tutorial sobre smart em;
http://www.zago.eti.br/smart-dicas.html

Criar canais, exemplos e dicas
http://www.zago.eti.br/smart-channel.html

Compilar programas - gcc

  yum install gcc -y

Problemas e soluções

CentOS não montou partição "reiserfs".

Ambiente, SUSE 10.1 instalado em /dev/sda2 com sistema de arquivos default "reiserfs". CentOS 4.3 instalado em /dev/sda3 com sistema de arquivos default "ext3". ao dar boot pelo CentOS e tentar montar a partição do SUSE 10.1 retornou esta mensagem

  [root@a8n9 mnt]# mkdir susesda2
  [root@a8n9 mnt]# mount /dev/sda2 /mnt/susesda2
  mount: o tipo de sistema de arquivos reiserfs não é suportado pelo kernel

Não procurei a solução via sistema CentOS, nem tentei outras opções de montagem. Rodei o CD de instalação do SUSE 10.1 para recuperar o boot via SUSE, depois foi só dar boot pelo SUSE, montar a partição do CentOS, criar mais uma entrada no menu do grub SUSE, ou seja copiar o menu do grub CentOS para o final do grub SUSE, prontinho, no menu grub do SUSE tem opção para boot pelo CentOS.

partiçoes do HD

Sistema de particionamento dafault do instalador, cria partições e volumes LVM, também instala o Seelinux, mesmo desabilitando estas opções no final da instalação, continua com volume LVM, veja o resultado de fdisk -l em uma instalação com particionametno default e LVM desabilitado.

  [root@localhost ~]# fdisk -l
  
  Disk /dev/hda: 40.0 GB, 40020664320 bytes
  255 heads, 63 sectors/track, 4865 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  
     Device Boot      Start         End      Blocks   Id  System
  /dev/hda1   *           1          13      104391   83  Linux
  /dev/hda2              14        4865    38973690   8e  Linux LVM

Ao conectar este HD na segunda IDE de uma instalação com Kubuntu 7.04, quando tento montar retorna esta mensagem.

  mount: sistema de arquivos desconhecido 'LVM2_member'

Ainda não pesquisei sobre a montagem de LVM e nem sobre a segurança de Seelinux, claro que tem motivos para fazer parte da instalação default, são vantagens em termos de segurança, para meu uso tornou um problema. Utilizo muito a troca de HD entre maquinas, backup, copia de arquivos entre HD e etc... Como tive problema com a montagem, passei a criar manualmente a partição swap e raiz /, acho mais prático para acessar via live-CD ou montar e acessar como secundaria em outra instalação.

Para eliminar totalmente este LVM, em tempo de instalação, no particionador selecionei modo manual, assim é possível criar patições sem o uso do LVM, a seguir o resultado de fdisk -l em HD onde foram criadas manualmente as partições swap e raiz /

  [root@voip ~]# fdisk -l
  
  Disk /dev/hda: 40.0 GB, 40020664320 bytes
  255 heads, 63 sectors/track, 4865 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  
     Device Boot      Start         End      Blocks   Id  System
  /dev/hda1   *           1        4737    38049921   83  Linux
  /dev/hda2            4738        4864     1020127+  82  Linux swap / Solaris

Indicações

CentOS tem muita semelhança com Fedora, pode consultar a documetação do Fedora que vai ajudar.

Consulte o FAQ o tutorial especifico sobre sua distro, algumas indicações em;
http://www.zago.eti.br/distro/A-distro.html

howtoforge, tutoriais em inglês
http://www.howtoforge.com/howtos/linux/centos
Página principal deste site (FAQ)
http://www.zago.eti.br/menu.html