A fonte primária de pacotes são os CDs (Compact Disc) ou DVD
(Digital Versatile Disc) de instalação da sua distribuição. Os
aplicativos que porventura não foram instalados durante a
instalação inicial, podem ser adicionados posteriormente a partir
do CDs de instalação. Estes CDs contém um diretório com os pacotes
RPM. Os CDs são uma boa fonte de emergência já que permitem
reinstalar ou reconfigurar todo o sistema.
A segunda fonte recomendada para obtenção de pacotes é o
repositório oficial (site de download) do distribuidor de sua
versão do
GNU/Linux. A maioria dos distribuidores mantém
pacotes oficiais disponíveis na Internet ou em um dos repositórios-espelho
(mirrors). Os repositórios-espelho são reconhecidamente oficiais e
são uma fonte segura. Repositórios oficiais são sem dúvida o modo
mais confiável usado na obtenção de pacotes para seu sistema.
Após transferir os arquivos do repositório oficial é possível
criar um repositório pessoal com eles. Este repositório pessoal será
usado por todas as máquinas da sua rede local. Isto economiza largura
de banda da sua conexão e alivia a sobrecarga nos repositórios
oficiais. Alguns distribuidores podem oferecer o serviço de
atualização de forma não-gratuita. Neste caso, é necessário pagar
por uma assinatura para acessar a área de transferência de arquivos para atualização e a documentação sobre o sistema.
Por questão de segurança os pacotes do repositório oficial são
assinados digitalmente evitando que sejam modificados por alguém
com finalidade maliciosa. Uma assinatura eletrônica usa uma chave
pública para validar os pacotes. Esta chave pública pode ser obtida
no CD de instalação, no portal Internet ou no repositório oficial. Para
validar a criptografia destes pacotes é necessário ter um programa
compatível com o PGP (Pretty Good Privacy), sendo o GPG (GNU Privacy Guard)
o mais usado. Além disto, um método para verificação da integridade
do pacote chamado assinatura MD5 permite conferir a integridade dos dados recebidos.
Os pacotes em um repositório oficial podem ser encontrados em dois
formatos básicos. O formato pré-compilado para a arquitetura específica
de um processador (i386, i686, athlon, etc) e o formato rpm-src que
indica que este pacote não esta preparado para nenhuma das
arquiteturas de processadores. Estes pacotes contém o código fonte
(src = source) e são compilados de modo semelhante aos aplicativos instalados à partir do código fonte.
Além disto, repositórios oficiais podem ter também vários tipos de
áreas disponíveis. Estas áreas ou seções são meta-componentes usados
na identificação do tipo de pacote, destacamos dois destes tipos. Os
chamados pacotes estáveis (stable) e os pacotes instáveis (unstable).
A instabilidade, neste caso, não está totalmente relacionada com falhas
do programa e sim demonstra que este pacote foi testado e liberado
pelo distribuidor como um programa aprovado. Isto garante que o
distribuidor pode oferecer suporte em caso de falhas.
Preferencialmente, em servidores de produção use pacotes estáveis e
evite versões instáveis que podem apresentar falhas de segurança. Este
formato de pacotes estáveis e instáveis não é encontrado em todas distribuições.
Nem todas as distribuições do GNU/Linux são comerciais, neste caso, o
suporte é oferecido pela comunidade ou por empresas especializadas. Obter
pacotes de distribuições muito alternativas pode ser um problema. Alguns
distribuidores são mais conservadores na atualização de seus pacotes e
demoram um pouco para atualizar as versões oficiais da distribuição.
Acostumar-se com o fato de não ter a última versão de um programa é um
processo que demanda tempo. O administrador precisa perceber que certas
atualizações trazem poucas mudanças de cada vez, não compensando o
trabalho de implementá-las. Por outro lado, outras atualizações trazem
tantas mudanças que exigem toda a reconfiguração do sistema para
implementá-la. Ficar atualizando aplicativos todo o tempo pode não ser
objetivo em um ambiente produtivo. Atualizações de sistemas normalmente
demandam grande planejamento. O ideal é executá-las quando algo não
funciona bem ou no caso em que falhas na segurança são descobertas.
Neste caso, o trabalho de prevenir é sempre menor que o de consertar
invasões ou falhas gerais.
Apesar do GNU/Linux ser conhecido pela confiabilidade e pela
segurança que oferece aos seus usuários, nada pode ser feito caso o
administrador literalmente vier a abrir as portas de seu sistema. Isto
pode ocorrer através da instalação de um programa malicioso (rootkit)
ou de configurações mal feitas que comprometem a segurança. Obter
pacotes para instalar no sistema é uma tarefa que faz parte do
planejamento de segurança do administrador. Um sistema de produção
não pode ser alvo de instalações de programas em teste ou programas
com finalidades fora do escopo para o qual o servidor foi projetado.
Instalar um ótimo jogo em rede no servidor de arquivos da empresa
para ser usado no fim do dia de trabalho é algo que não deve ser feito
ou permitido. Utilize um servidor de testes quando realmente precisar
testar algo que seja útil e se isso não for possível, então instale
uma máquina cliente como servidor de testes.
Uma outra maneira de obter pacotes confiáveis é você mesmo gerar os
seus próprios pacotes a partir do código fonte. Isto está fora dos
objetivos deste curso e não faz parte do escopo dos testes da prova
LPIC1-101.
Existem ainda repositórios de terceiros e outros não-oficiais que
mantém pacotes de várias distribuições e podem ser usados em casos
especiais. Para encontrar estas fontes use os mecanismos de busca
de pacotes. Estes mecanismos são especializados nesta tarefa.
Lembre-se de verificar a integridade destes pacotes antes de
instalá-los e resista a tentação de obter pacotes facilmente.