Esse artigo descreve a criação de um repositório para Red Hat e CentOS utilizando a ferramenta mrepo. Demonstra também como mantê-lo atualizado, mediante a utilização de uma conta válida na RHN, para distribuição local de atualizações.
Antes de mais nada, não se assuste e nem ache que está faltando coisa! Essa é a primeira parte da configuração. Na parte seguinte teremos a configuração do repositório propriamente dita.
Com todos os arquivos em seus devidos lugares, as ISOs nos diretórios corretos (/mrepo/centos5-i386 para o Centos x86, por exemplo), o arquivo de configuração (/etc/mrepo.conf) fica semelhante a:
Diretiva srcdir - Define o nosso Source dir (lembra, comentado no começo do arquivo, onde ficará o ISO e os RPMs).
Diretiva wwwdir - Onde ficará o nosso repositório, disponibilizado pelo servidor Web.
Diretiva confdir - Diretório de configurações específicas / repositórios.
Diretiva arch - Arquitetura servida pelo servidor (i386, x86_64, pcc por exemplo).
Diretiva rhnlogin - Preste atenção, essa diretiva é OPCIONAL, e deve ser inserida caso você opte por servir atualizações para sistemas RedHat (que dependem de um login na RHN - Veremos como configurar esse recurso adiante).
Diretiva shareiso - Determina se o ISO deve ser compartilhado, ou seja, se os RPMs existentes no ISO (que será configurado adiante) devem ser considerados os RPMs base, por exemplo. Por algum motivo do além, o Red Hat baixa novamente todas as RPMs, enquanto que o CentOS consegue distinguir as RPMs base dos Updates, baixando apenas as mudanças (se alguém souber o porque, eu agradeço !).
[4] Comentário enviado por rikatz em 10/11/2009 - 13:53h
Olá Jack:
Veja uma coisa pra mim:
No repositório do Red Hat, por exemplo você terá dois diretórios...o RPMS.os e o RPMS.updates.
Aqui no meu caso, o RPMS.os contém kernel-2.6.18-164.el5.i686.rpm e o RPMS.updates kernel-2.6.18-164.6.1.el5.i686.rpm
Se não tiver (ou seja, não ta baixando atualização mesmo), dê uma olhada no início, no momento do login se a RHN não retorna alguma mensagem de erro, como avisando que sua conta está desabilitada, não possui mais licenças, user/senha incorretos :)
Aconteceu aqui comigo, eu tive que desabilitar uma licença de um servidor para fazer o registro do meu servidor de repositórios.
[5] Comentário enviado por jackadamantina em 10/11/2009 - 14:10h
Beleza,
Agora parece que está quase funcionando, no entanto ele baixa
Reading config file /etc/mrepo.conf.d/redhat.conf
Setting option arch in section [rhel-5-current] to: i386
rhel-5-current-i386: Updating Red Hat Server 5 Current (i386)
rhel-5-current-i386: Mirror packages from rhns:///rhel-i386-server-fastrack-5 to /mrepo/rhel-5-current-i386/fastrack
aspell-nl-0.1e-2.el5.i386.r ########################## Done.
authconfig-5.3.21-6.el5.i38 authconfig-5.3.21-6.el5.i38 authconfig-5.3.21-6.el5.i38 rhnget: CommunicationError: Error downloading package authconfig-5.3.21-6.el5.i386.rpm from rhel-i386-server-fastrack-5. Skipping.
Error communicating with server. The message was:
Forbidden
authconfig-gtk-5.3.21-6.el5 authconfig-gtk-5.3.21-6.el5 authconfig-gtk-5.3.21-6.el5 rhnget: CommunicationError: Error downloading package authconfig-gtk-5.3.21-6.el5.i386.rpm from rhel-i386-server-fastrack-5. Skipping.
Error communicating with server. The message was:
Forbidden
authd-1.4.3-14.i386.rpm: authd-1.4.3-14.i386.rpm: authd-1.4.3-14.i386.rpm: rhnget: CommunicationError: Error downloading package authd-1.4.3-14.i386.rpm from rhel-i386-server-fastrack-5. Skipping.
Error communicating with server. The message was:
Forbidden
avahi-0.6.16-6.el5.i386.rpm avahi-0.6.16-6.el5.i386.rpm avahi-0.6.16-6.el5.i386.rpm rhnget: CommunicationError: Error downloading package avahi-0.6.16-6.el5.i386.rpm from rhel-i386-server-fastrack-5. Skipping.
[6] Comentário enviado por rikatz em 10/11/2009 - 14:23h
Hum, c ta rodando como root? Estranho ele dar isso, aqui eu não tive esse problema não...Tenta fazer o download direto da RHN e ve se funciona, por exemplo (ou se ele também te dá um Forbidden)
[7] Comentário enviado por efcunha em 05/03/2010 - 15:00h
Este tendo o sequinte erro nas maquinas onde tento atualizar.
[root@apps yum.repos.d]# yum update
Loaded plugins: rhnplugin, security
This system is not registered with RHN.
RHN support will be disabled. http://172.16.1.18/rhel5-x86_64/RPMS.os/repodata/repomd.xml: [Errno 14] HTTP Error 404: Not Found
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again
[8] Comentário enviado por erik.costa em 30/03/2011 - 09:50h
@efcunha Rapaz, erro 404 o apache não tá encontrando o arquivo, tente acessar o repositório pelo browser pra ver se chega. Isso deve ser configuração do httpd.conf
@rikatz Otimo artigo, funcionou beleza aqui pra atualizar na RedHat! Isso resolve de uma vez o problema com a banda pra atualizações de SO. Valeu!
[10] Comentário enviado por rikatz em 30/10/2013 - 18:06h
Fala Rodrigao!
Cara, duas soluções:
1) Muda em todas as linhas do repositório Red Hat 'rhns:///' pra 'rhn:///'
2) Pega uma máquina que esteja em Red Hat 5.5 ou acima, e pega o arquivo /usr/share/rhn/RHNS-CA-CERT e copia pro seu servidor de repositório.