Em qualquer rede de computadores, sempre existe a necessidade de
atualização do sistema operacional, aplicativos etc. É comum cada
computador baixar as atualizações diretamente da internet, porém esta
não é uma boa prática, pois causa degradação no link, impactando nos
demais serviços da rede.
O ideal é criar um servidor que irá buscar atualizações na internet,
de preferência fora do horário de expediente para que o link esteja
disponível para outros fins. Uma vez configurado este servidor
(repositório local), não haverá mais a necessidade dos demais
computadores acessarem a internet para procurar por atualizações, basta
configurar os computadores para acessar o repositório local.
Neste artigo, vamos instalar um repositório local do CentOS 5.4 para a arquitetura i386.
Pré-requisitos
- Servidor Web É necessário um servidor web instalado, que pode ser Apache ou outro qualquer, para que a máquina cliente tenha acesso ao repositório.
- ISOs A base do repositório será criada a partir dos
arquivos contidos na ISO, de acordo com cada arquitetura. Neste exemplo
será utilizada a ISO do CentOS 5.4 i386. - Createrepo O comando createrepo cria informações de repositório utilizadas pelo yum, e armazena estes dados numa pasta chamada repodata.
Informações Gerais
- Sistema Operacional: CentOS 5.4
- Hardware: Hp Compaq dc5850
- Hd: SATA 250 GB
- Memória: 2048 MB
Mãos à obra!
1. Instalar o pacote createrepo
# yum install -y createrepo2. Construir a estrutura do repositório
# mkdir -p /var/www/html/centos/5.4/{os,updates}/{i386}/3. Criar link simbólico
# ln -s /var/www/html/centos/5.4 /var/www/html/centos/54. Montar a ISO
# mount -o loop /local_da_ISO/CentOS-5.4-i386-bin-DVD.iso /mnt5. Copiar os arquivos
# cp -r /mnt/* /var/www/html/centos/5.4/os/i3866. Criar o índice dos arquivos
# createrepo /var/www/html/centos/5.4/os/i386O comando acima cria o diretório repodata, com os seguintes arquivos:
- filelists.xml.gz
- other.xml.gz
- primary.xml.gz
- repomd.xml
O yum checa se há alterações nesses arquivos e baixa para um cache
local, para consultar se o pacote desejado existe no repositório.
O comando abaixo limpa o cache do yum:
# yum clean all 7. Criar script para sincronizar o diretório de updates
Abaixo o conteúdo do script sync_repo.sh que será criado no diretório /root:
#!/bin/bash<br /><br /> /usr/bin/rsync -avrt rsync://mirror.unl.edu/centos/5.4/updates/i386/ --exclude=debug /var/www/html/centos/5.4/updates/i386 | /bin/mail seuemail@seuprovedor.com -s "New updates"<br /><br /> /usr/bin/createrepo --update /var/www/html/centos/5.4/updates/i3868. Agendar script
# vim /etc/crontabAdicione a linha abaixo:
0 0 * * * root /root/sync_repo.shO script sync_repo.sh será executado todos os dias às 00:00.
9. Configurar os clientes
Primeiramente, faça um backup do arquivo CentOS-Base.repo:
# cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bkpAbaixo o conteúdo do arquivo CentOS-Base.repo, localizado em /etc/yum.repos.d:
[base]<br /><br /> name=CentOS-$releasever - Base<br /><br /> baseurl=http://ip_do_servidor/centos/5.4/os/i386/<br /><br /> gpgcheck=1<br /><br /> gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5<br /><br /> [updates]<br /><br /> name=CentOS-$releasever - Updates<br /><br /> baseurl=http://ip_do_servidor/centos/5.4/updates/i386/<br /><br /> gpgcheck=1<br /><br /> gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-510. Prova dos nove
- Para atualização
# yum update- Para pesquisa
# yum search pacote- Para instalação
# yum install pacoteAté o próximo artigo!
:wq!







