Graças aos sistemas de gerenciamento de pacotes usados nas distribuições, instalar e remover cada programa ou servidor, assim como inicializar e reinicializar cada um, ativando mudanças na configuração, tornou-se uma tarefa bastante simples. Isso permite que você se concentre na configuração propriamente dita, deixando as tarefas mecânicas a cargo dos mantenedores.
As distribuições derivadas do Debian, incluindo o Ubuntu, Kurumin, Knoppix e muitos outros, utilizam o apt-get como gerenciador de pacotes.
O uso do apt-get é bastante simples. Ele trabalha baixando pacotes a partir dos repositórios oficiais do Debian, de forma que você obtém sempre a versão mais atualizada. Para que o sistema funcione, é preciso baixar periodicamente uma lista com os pacotes disponíveis em cada servidor, permitindo que o apt-get mantenha seu banco de dados local. Isto é feito usando o comando:
Ele deve ser executado regularmente, de preferência antes de fazer cada instalação, já que num servidor, por exemplo, é crítico trabalhar com as versões mais atuais dos pacotes, devido à questão das atualizações de segurança.
Para instalar qualquer pacote pelo apt-get, use o comando “apt-get install”, como em:
O apt-get instala automaticamente todas dependências do pacote, pedindo sua confirmação. Leia tudo antes de confirmar, pois em alguns casos raros o apt-get pode propor soluções um tanto quanto desastrosas para conflitos de pacotes. Pode acontecer dele propor remover todo o KDE para instalar uma biblioteca antiga, que conflite ou substitua algum dos pacotes base, por exemplo. Mesmo em casos extremos como este, você sempre tem a chance de abortar a instalação, basta ficar atento às mensagens ;).
Para remover um pacote, use o comando “apt-get remove”, como em:
Para atualizar um pacote, rode o comando “apt-get update” e em seguida use o “apt-get install”, como se estivesse instalando-o novamente. O apt-get sabe que o pacote já está instalado, por isso se limita a atualizá-lo, mantendo as configurações. É importante atualizar periodicamente os pacotes relacionados a servidores, por causa das atualizações de segurança.
É possível também atualizar de uma vez todos os pacotes do sistema. Isso só é recomendável se você está utilizando uma distribuição baseada numa versão estável do Debian. Por exemplo, o Kurumin 5.0 é baseado no Sarge, que foi finalizado em 2003, enquanto o Kurumin 6.2 será baseado no Etch, cujo lançamento está planejado para o final de 2006.
Para isso, use o comando:
Muitas distribuições (como o Kanotix e o Knoppix) são baseados no Debian Sid (a versão instável) e a maioria das versões do Kurumin são baseadas no Debian Testing. Nestes casos, você precisa tomar bastante cuidado ao rodar o “apt-get upgrade”, pois as atualizações viram um alvo em movimento.
Para instalar um pacote .deb que você baixou manualmente, use o comando “dpkg -i”, como em:
Os pacotes instalados manualmente através do dpkg não passam pela verificação de dependências do apt-get, abrindo margem para problemas diversos. Para que o apt-get verifique a instalação e coloque ordem na casa, é recomendável rodar logo em seguida o comando:
O apt-get trabalha com dois arquivos de configuração. O principal é o arquivo “/etc/apt/sources.list“, onde vai a lista dos servidores utilizados. Imagine que na sua máquina o arquivo contém a linha:
deb http://ftp.br.debian.org/debian etch main contrib non-free
Por algum motivo, o servidor está inacessível no momento, o que faz com que você receba mensagens de erro ao rodar o “apt-get update” ou ao instalar pacotes. Para resolver o problema, você precisaria apenas alterar o arquivo, especificando outro servidor, como em:
deb http://ftp.us.debian.org/debian etch main contrib non-free
Aqui substituímos o “br” por “us“, fazendo com que passe a ser utilizado o mirror dos EUA. Os servidores disponíveis são identificados pelos códigos de país, como “de”, “uk”, “es”, “it”, etc.
No caso do Ubuntu, existe uma pegadinha. A maioria dos pacotes, incluindo quase todos os pacotes para servidores estão concentrados no “Universe“, um repositório extra que vem desabilitado por padrão. Antes de mais nada, você precisa editar o arquivo “/etc/apt/sources.list”, descomentando a linha referente ao Universe e rodar o “apt-get update”.
No Fedora é usado por padrão o “yum“, que funciona de forma bem similar ao apt-get, baixando os pacotes da Internet, junto com as dependências. Existem muitas diferenças entre o Fedora e o Debian, uma delas é o formato dos pacotes utilizados: o Fedora utiliza pacotes .rpm, enquanto o Debian utiliza pacotes .deb.
Ambos também utilizam repositórios separados, com pacotes construídos especificamente para cada uma das duas distribuições, de forma que existem algumas diferenças nos nomes dos pacotes e arquivos de configuração usados.
Voltando ao uso do yum, comece baixando as listas dos pacotes disponíveis, usando o comando:
Ele funciona de forma análoga ao “apt-get update”, com a diferença que de a lista dos servidores usados não vai no arquivo sources.list, mas é dividida em diversos arquivos (um para cada servidor usado), organizados na pasta “/etc/yum.repos.d/“.
Para instalar um pacote, use o comando “yum install”, como em:
Para removê-lo posteriormente, use:
O yum possui também um recurso de busca, que é bastante útil quando você está procurando por um pacote, mas não sabe o nome exato, ou em casos de pacotes que possuem nomes diferentes em relação a outras distribuições. Use o comando “yum search”, seguido por alguma palavra ou expressão, que faça parte do nome do pacote ou descrição, como em:
Ele retorna um relatório contendo todos os pacotes relacionados, incluindo o texto de descrição de cada um.
Para atualizar um pacote, use o comando “yum update”, como em:
Se usado sem especificar um pacote, o “update” vai atualizar de uma vez só todos os pacotes do sistema, de forma similar ao “apt-get upgrade” do Debian:
Existe ainda o comando “yum upgrade”, que é um pouco mais incisivo, incluindo também pacotes marcados como obsoletos (que não existem mais na versão atual). Ele é útil em casos onde é necessário atualizar uma versão antiga do Fedora:
O yum é utilizado também em distribuições derivadas do Fedora, ou do Red Hat Enterprise, como o CentOS.
Embora também seja derivado do Red Hat, o Mandriva utiliza um gerenciador próprio, o “urpmi“, que é também bastante simples de usar. Para instalar um pacote, você usa o comando “urpmi pacote”, como em:
Para removê-lo, use o comando “urpme”, como em:
Um dos pontos fortes do Mandriva é que todo o gerenciamento de pacotes pode ser feito usando as opções dentro do Mandriva Control Center, o que permite dispensar a linha de comando para a maioria das operações.
Nas distribuições derivadas do Debian, você tem algo similar usando o Synaptic, que (quando não vem instalado por padrão), pode ser instalado via apt-get:
Temos em seguida a questão dos serviços:
Servidores como o Apache são também chamados de “daemons” ou “serviços de sistema”, abreviação do termo “system services”. Ambos os termos indicam um programa que fica residente, respondendo a requisições de outros micros ou executando tarefas de forma automatizada. É o caso não apenas de servidores como o Squid, Samba, Postfix e tantos outros, mas também de programas como o Cron e de ferramentas de detecção de hardware, como o Udev e o Hotplug.
A tarefa de iniciar, parar e reiniciar estes serviços é automatizada por um conjunto de scripts localizados na pasta “/etc/init.d” (ou “/etc/rc.d/init.d”, dependendo da distribuição usada).
Nas distribuições derivadas do Debian, você inicia um serviço usando o comando “/etc/init.d/nome start”, como em:
Para parar, é usado o mesmo comando, com o parâmetro “stop”:
Muitos serviços suportam também os parâmetros “restart” e “reload” (ou “force-reload“), usados para ativar mudanças na configuração. A diferença entre os três é que o “restart” é simplesmente uma combinação do “stop” e “start”, enquanto o “”reload ou “force-reload” (quando disponíveis) fazem com que o serviço releia o arquivo de configuração, porém sem interromper sua atividade. Isso é importante no caso de um servidor web com muitos acessos, por exemplo.
Temos ainda o comando “update-rc.d“, que permite definir se um serviço vai ser ativado ou não durante o boot.
Imagine o caso de um servidor onde você utiliza um servidor FTP para disponibilizar arquivos esporadicamente, ativando-o e desativando-o manualmente. Ao instalar o Proftpd, ele fica configurado para inicializar automaticamente durante o boot. Para desativar a inicialização automática, você usaria o comando:
Se mudar de idéia e quiser que ele volte a ser inicializado durante o boot, use:
No caso das distribuições derivadas do Fedora (e também no Mandriva), usamos os comandos “service” e “chkconfig“.
O primeiro permite ativar, desativar e reiniciar um serviço, como em:
# service ssh stop
# service ssh restart
… enquanto o segundo permite definir se ele vai ser inicializado ou não durante o boot, de forma análoga ao “update-rc.d” do Debian. Para fazer com que o SSH seja ativado durante o boot, você usaria:
E para desativar, usaria:
A maioria das distribuições se enquadra num destes dois sistemas. A principal exceção é o Slackware. Ele usa uma estrutura simplificada, onde para ativar ou desativar a inicialização de um serviço, você simplesmente adiciona ou retira a permissão de execução do script correspondente, dentro da pasta “/etc/rc.d“.
Para ativar o SSH você usaria:
E para desativá-lo, usaria:
Para iniciar ou parar o serviço, você executa o mesmo script, usando os parâmetros “start” ou “stop”, como em:
# /etc/rc.d/rc.ssh stop
Deixe seu comentário