No
começo existia o código fonte. Você baixava um pacote .tar.gz, contendo o
código fonte do programa, e a instalação consistia em compilar e instalar os
executáveis gerados na sua máquina. Esta forma de distribuição faz sentido em
se tratando de aplicativos abertos, pois permite que você veja e até adapte o
código fonte se necessário, para que ele rode na sua máquina. Em muitos casos,
é possível instalar o programa em outro sistema operacional (a maior parte dos
programas do Linux podem ser instalados no BSD, com pequenas adaptações) ou até
mesmo em outras plataformas.
O problema é que instalar
programas a partir dos fontes é demorado e nem sempre simples, já que você
precisa ter instalados uma grande quantidade de compiladores e bibliotecas,
necessários para compilar os mais diversos programas. Existem incontáveis
pequenas bibliotecas e ferramentas de desenvolvimento por aí e não é muito
viável tentar manter todas elas instaladas.
Compilar
significa transformar o código fonte, escrito pelo programador,
nos arquivos binários que são executados pelo sistema. Ao
compilar um programa, são gerados vários executáveis, bibliotecas e arquivos de
configuração, que são copiados para pastas específicas do sistema. Os
executáveis vão para a pasta "/usr/bin", as bibliotecas para a
"/usr/lib", os arquivos de configuração para o "/etc" e
assim por diante.
Alguém chegou, então, a uma conclusão obvia: ao invés de
cada um ter que ter o trabalho de compilar o programa na sua própria máquina,
seria mais simples se alguém compilasse e distribuísse um arquivo pronto, com
os componentes já compilados, em um formato simples de instalar. Nasciam então
os pacotes pré-compilados :).
Os pacotes são uma idéia muito simples. Você cria um arquivo
compactado contendo a mesma estrutura de pastas e arquivos que seria criada ao
instalar o programa manualmente. Ao instalar o pacote, os arquivos são
descompactados no diretório raiz, fazendo com que todos os arquivos sejam
colocados nos diretórios corretos. Ao desinstalar o pacote, os arquivos são removidos,
deixando o sistema da forma como estava inicialmente. Uma forma rápida e limpa
de instalar programas.
Existem basicamente três formatos de pacotes diferentes: os
pacotes .deb, usados pelas distribuições derivadas do Debian (incluindo o
Kurumin, Ubuntu e Kubuntu), os pacotes .rpm, usados pelas distribuições
derivadas do Red Hat (Fedora, Mandriva e outros) e os pacotes .tgz, usados pelo
Slackware e derivados. Não existe nada de fundamentalmente diferente entre os
três formatos e é inclusive possível transformar um pacote .rpm em um pacote
.deb. Entretanto, devido às diferenças que existem entre uma distribuição e
outra, não existe garantia de que um pacote do Fedora funcionará no Debian, por
exemplo.
O próximo passo foi a criação dos gerenciadores de pacotes,
programas que permitem baixar e instalar novos programas de forma automática,
verificando as dependências e, caso necessário, baixar outros programas e
bibliotecas de que o programa inicial precisa.
Já vimos alguns exemplos do uso do apt-get, o gerenciador
usado nas distribuições derivadas do Debian. Além dele, temos também o urpmi,
usado no Mandriva, o yum, usado no Fedora, e o emerge, usado no Gentoo.
Você pode perguntar por que não fazem como no Windows, onde
cada programa tem seu instalador. Na verdade, muitos programas são distribuídos
desta forma, como o Java, OpenOffice, Firefox, Thunderbird, VMware e diversos
games. Nestes casos, você simplesmente executa o arquivo e o instalador se
encarrega do resto da instalação. O inconveniente é que estes pacotes são
desenvolvidos para funcionar em qualquer distribuição, por isso incluem todo
tipo de bibliotecas e módulos de que o programa possa precisar, sem
reaproveitar os componentes que você já tem instalados. Isso faz com que os
pacotes sejam práticos de instalar, mas em compensação bem maiores (e mais
pesados), assim como muitos dos programas do Windows.
Em resumo, podemos dizer que existem três formas de instalar
programas no Linux:
1-
Usar o apt-get ou outro gerenciador de pacotes para
instalar pacotes próprios da distribuição em uso. Esta é a forma mais simples e
menos passível de problemas, que você usa sempre que possível.
2-
Programas com instaladores próprios, destinados a funcionar
em várias distribuições. Eles também são simples de instalar, mas não tão
simples quanto usar o apt-get. Muitos programas são distribuídos apenas desta
forma, como o VMware.
3-
Instalar o programa a partir do código fonte, o que
pode ser necessário no caso de aplicativos pouco comuns, que não estejam
disponíveis de outra forma.
Instalando
programas com o apt-get
O apt-get é uma ferramenta extremamente poderosa e prática
depois que você aprende os conceitos básicos. Ele pode ser encontrado não
apenas no Debian, Ubuntu e no Kurumin, mas em outras distribuições baseadas no
Debian, como o Xandros, Memphis e até mesmo no Linspire. Ferramentas como o
urpmi, do Mandrake, o synaptic, do Conectiva e o yum, do Fedora também são
baseados nele.
Em primeiro lugar, o apt-get utiliza um conceito de fontes
de atualização. Ele pode obter pacotes de praticamente qualquer lugar,
incluindo CD-ROMs do Debian, unidades de rede, etc. Mas o meio mais usado é
justamente baixar os pacotes via internet, o que permite obter sempre as
versões mais recentes dos programas.
Para usar o apt-get, o primeiro passo é rodar o comando
"apt-get update", que faz com que o apt-get verifique todos os
repositórios disponíveis e baixe a lista com os pacotes disponíveis em cada um.
Isso permite que ele crie uma espécie de banco de dados, com os pacotes
disponíveis, onde cada um pode ser encontrado e qual endereço contém a versão
mais recente. Este comando deve ser executado periodicamente. O ideal é que
você o use uma vez por semana, ou sempre que for fazer alguma instalação
importante:
#
apt-get update
Lembre-se de que para virar root, basta digitar "su"
no terminal e fornecer a senha configurada durante a instalação. Ao rodar o
Kurumin a partir do CD, use o comando "sudo su" para definir a senha.
Terminado, você pode começar a instalar os programas, usando
o comando "apt-get install", seguido do pacote desejado. Para
instalar o Abiword (o processador de textos), por exemplo, use o comando:
#
apt-get install abiword
Veja que o
apt-get cuida de toda a parte chata. No meu caso, por exemplo, é preciso
instalar também os pacotes "abiwordcommon", "libenchant1" e
"libmyspell3", que o apt-get instala automaticamente junto com o
pacote principal, depois de pedir uma confirmação.
Terminada a instalação, o Abiword já está pronto para usar.
Você vai encontrar o ícone dentro do menu "Escritório e utilitários",
no iniciar. Alguns programas podem não criar corretamente os ícones no iniciar,
mas você sempre pode chamá-los via terminal ou criar o ícone manualmente,
usando o kmenuedit. Isto se repete para qualquer um dos mais de 20.000 pacotes
atualmente disponíveis nos repositórios que vêm ativados por padrão no Kurumin.
Basta saber o nome do programa e você pode instalá-lo rapidamente a qualquer momento.
Você pode ver uma lista dos pacotes disponíveis nos FTPs oficiais do Debian no:
http://www.debian.org/distrib/packages.
Além de instalar, é possível usar o apt-get para atualizar
qualquer pacote do sistema. Para isso, repita o comando de instalação, como em:
#
apt-get install abiword # apt-get install k3b # apt-get install mplayer
... e assim por diante.
Quando o programa solicitado já está instalado, o apt-get
verifica se existe uma versão atualizada e, em caso afirmativo, já a baixa e
instalada automaticamente. Caso contrário, ele simplesmente avisa que a versão
mais recente já está instalada e não faz nada. Quando você não se lembrar do
nome completo do programa, digite apenas as primeiras letras e pressione a
tecla TAB duas vezes, assim você verá uma lista com as alternativas possíveis.
Uma vez instalado o programa, o comando para chamá-lo pelo
terminal (em 99% dos casos) é o próprio nome do pacote. Por exemplo, para usar
o k3b, você instala o pacote "k3b" e para chamá-lo pelo terminal, usa
o comando "k3b". Na maioria dos casos, é criado um ícone no iniciar,
mas, caso necessário, você pode fazer isso manualmente usando o kmenuedit, que
você acessa ao clicar com o botão direito sobre o "K" do iniciar.
Em casos onde o programa realmente "desapareça"
depois de instalado, sem rastros aparentes, você pode procurá-lo usando o
comando "whereis" (onde está), como em:
$ sudo updatedb $ whereis realplay
realplayer: /usr/bin/realplay
Em muitos
casos, o programa pode ser instalado em uma pasta fora do PATH (as pastas /bin,
/usr/bin, /usr/local/bin, etc.), fazendo com que o sistema não encontre o
comando. Nestes casos, chame-o indicando o caminho completo ou crie um link
para ele (usando o comando "ln -s") dentro da pasta
"/usr/bin", ou "/usr/local/bin", onde o sistema consiga
localizá-lo diretamente, como em:
# ln -s
/usr/lib/realplayer10/realplay /usr/bin/realplay
Lembre-se de que em muitos casos o nome do executável do
programa pode ser diferente do nome do programa. Por exemplo, o executável do
Realplayer é "realplay" e o do VMware Player é "vmplayer".
Um detalhe interessante é que, mesmo ao atualizar um
programa, as suas configurações são mantidas. Ao atualizar o Firefox ou o
Konqueror, por exemplo, você não perde seus bookmarks. Isso acontece porque as
configurações e arquivos referentes aos programas são armazenados em pastas
ocultas dentro do seu diretório de usuário. Os bookmarks, cache, cookies e
outros arquivos do Firefox, por exemplo, vão para a pasta
".mozilla/firefox", dentro do seu home. O apt-get nunca altera estes
arquivos, de forma que suas preferências sempre são preservadas durante os
upgrades.
Um segundo tipo são os arquivos de configuração do sistema,
que também fazem parte dos pacotes. Quando um pacote traz uma nova versão de um
determinado arquivo de configuração, mas o apt-get percebe que o arquivo
anterior foi alterado por você, ele pergunta se você quer manter o arquivo
atual ou se você quer substituí-lo pela nova versão. O conselho geral nestes
casos é responder não à substituição (que é o default). Isso mantém o arquivo
atual, que, afinal, está funcionando. Autorize a substituição apenas quando
você souber do que se trata.
Lembre-se de rodar o "apt-get update"
periodicamente, de preferência uma vez por semana ou antes de instalar qualquer
programa ou atualização importante. Assim você terá certeza de que o apt
instalará sempre as versões mais recentes dos programas.
O apt não apenas torna a instalação de novos programas bem
mais simples, mas diminui também a necessidade de estar sempre instalando
versões mais recentes da distribuição, já que você pode ir atualizando os
programas mais usados sempre que souber de uma versão mais nova. É possível
também remover pacotes instalados, neste caso usando o parâmetro
"remove", como em:
#
apt-get remove abiword
Caso os arquivos referentes ao programa tenham se corrompido
de alguma maneira (desligamentos incorretos, problemas de BIOS, etc. ;), você
pode forçar sua reinstalação, usando o parâmetro "--reinstall".
Normalmente o apt-get avisa que o programa já está em sua
versão mais recente e não faz nada:
#
apt-get install bluefish Lendo Lista de Pacotes... Pronto
Construindo
Árvore de Dependências... Pronto bluefish já é a versão mais nova.
Adicionando o "--reinstall" ele prossegue com a
instalação, mesmo que o pacote já seja a versão mais recente, substituindo
todos os arquivos referentes a ele e resolvendo o problema.
#
apt-get install --reinstall abiword
Finalmente, existe a opção de atualizar todo o sistema, o
que é feito usando os comandos:
# apt-get update
# apt-get upgrade
O "apt-get update"
é o comando que baixa a lista dos pacotes disponíveis, que já vimos. O
"apt-get upgrade", por sua vez, age de forma bem diferente: ele
verifica todos os pacotes do sistema e tenta atualizar todos de uma vez, o que
geralmente resulta em uma longa lista de atualizações:
Aqui estou usando uma instalação antiga, que não é
atualizada há bastante tempo. Veja que existem atualizações para 402 dos
pacotes instalados, totalizando 246 MB de downloads! :). Apesar disso, como
estamos apenas atualizando pacotes e não instalando outros novos, o espaço
ocupado pelo sistema no HD aumenta em apenas 24.6 MB.
Depois desta primeira leva, sobram ainda mais 96 pacotes (os
pacotes que "serão mantidos em suas versões atuais" no início da
lista). Estes pacotes não são atualizados automaticamente, pois incluem novas
dependências, ou seja, para atualizá-los, o apt-get precisará instalar alguns
novos pacotes.
Para fazer isso, você precisa rodar o comando "apt-get
install", seguido pela lista dos pacotes. Para não precisar escrever um de
cada vez, você pode selecionar parte da lista e colar usando o botão do meio do
mouse. Você pode atualizar vários de cada vez, mas como o processo involve
instalar novos pacotes, é sempre bom revisar a lista e fazer o processo em partes.
Naturalmente,
atualizar muitos pacotes de uma vez é sempre um processo passível de pequenos
problemas, até porque,
opções dentro dos programas podem mudar de uma versão para
outra, causando pequenas irregularidades quando usados em com as configurações
antigas.
De uma forma geral, você pode atualizar o sistema sem medo
ao utilizar as versões estáveis do Debian (mais detalhes a seguir), onde os
pacotes são muito bem testados e recebem apenas atualizações de segurança. As
atualizações são menores e mais esporádicas, incluindo apenas as atualizações
importantes. A versão de desenvolvimento, por sua vez, é um alvo móvel, onde
grandes quantidades de atualizações são feitas diariamente. Você não apenas tem
acesso às novas versões dos programas, mas tem também acesso a todos os novos
bugs.
Até a versão 6.1, o Kurumin sempre foi baseado nas versões
de desenvolvimento do Debian, daí os problemas esporádicos ao tentar atualizar
todo o sistema usando o "apt-get upgrade". A partir do Kurumin 7, o
sistema passou a ser baseado nas versões estáveis, o que garante a estabilidade
do sistema a longo prazo. De uma forma geral, você terá menos problemas ao
atualizar o Kurumin 7 do que qualquer outra distribuição, com exceção, claro,
do próprio Debian estável e de outras distribuições baseadas nele.
Para quem gosta de desafios, existe a opção de modificar a
configuração do apt-get, para que ele utilize os repositórios do
testing/unstable, ou seja, da versão de desenvolvimento do Debian, ou utilizar
a versão de desenvolvimento do Kurumin 8 (mantenha-se informado através dos
fóruns), que será baseado no Lenny, a próxima versão do Debian.
Além da
linha de comando existem, naturalmente, programas gráficos que tentam facilitar
a configuração, como o Synaptic, que abordo a seguir. A questão de facilitar ou
não é, na verdade, polêmica, pois muita gente acha mais fácil trabalhar com o
Synaptic, enquanto outros acham sua interface muito complicada e preferem
continuar usando os comandos. Mas, de qualquer
forma, ele não deixa de ser
uma opção interessante.
0 comentários:
Postar um comentário