Eu tenho duas máquinas CentOS, uma caixa 6.3 ( A ) e outra CentOS 6.1. ( B )
6.3 caixa é com conexão à internet, 6.1 caixa é sem conexão com a internet.
Desejo baixar TODAS as dependências de um produto na Caixa A, copiá-las na Caixa B e instalar o produto.
Eu tentei com
yum --downloadonly --downloaddir=*~/downloadrepo* -y install *product*`
cd *~/downloadrepo*
createrepo .
Desativei todos os repositórios (com --disablerepo), exceto meu repositório, e instalei o produto na mesma máquina (Caixa A). Sem erros.
yum install *product*
Agora, quando copiei este repositório para a Caixa B e tentei instalar com o mesmo comando, ele inicia a instalação, mas gera muitos erros, como abaixo:
Erro: Dependência ausente: libldap-2.3.so.0 () (64 bits) é necessária pelo pacote php-ldap-5.1.6-27.el5_5.3.x86_64 (instalado)
Como existe alguma maneira de conseguir o que preciso?
ATUALIZAR
Quando comecei a trabalhar com a opção sugerida por @rkosegi ( --releasever = version ), recebi uma nova caixa com a mesma versão do CentOS 6.1 ( C )
Tentei os comandos mencionados acima na Caixa C e copiei-o para a Caixa B. Ainda assim, falhou. O motivo: embora ambas as caixas sejam 6.1, elas não são idênticas ( uname -r retorna cadeias diferentes).
O Yum não baixa dependências, se elas já estiverem instaladas. Portanto, meu repositório não continha algumas das dependências (incluindo o OpenJDK). Então, quando tento instalar na Caixa B, ele falha.
Muito frustrante !!!
Mas então eu encontrei o comando ' repotrack ' aqui .
cd ~/downloadrepo
repotrack -p . -a x86_64 product
createrepo .
Eu tenho muito mais arquivos do que com o yum, espero que funcione.
Vou atualizar, uma vez que tente instalar.
ATUALIZAR
O comando repotrack não funcionou para mim. Quando tentei instalar a partir do repositório criado com 'repotrack', obtive os seguintes erros:
Error: Package: perl-CGI-3.51-127.el6.x86_64 (repo-local)
Requires: perl = 4:5.10.1-127.el6
Installed: 4:perl-5.10.1-119.el6_1.1.x86_64 (@anaconda-CentOS-201112102333.x86_64/6.2)
perl = 4:5.10.1-119.el6_1.1
Error: Package: audit-libs-python-2.2-2.el6.x86_64 (repo-local)
Requires: audit-libs = 2.2-2.el6
Installed: audit-libs-2.1.3-3.el6.x86_64 (@anaconda-CentOS-201112102333.x86_64/6.2)
audit-libs = 2.1.3-3.el6
Tentei remover esses dois arquivos da pasta e reconstruir o repositório com 'createrepo'. Isso deu outro conjunto de erros.
Não tenho certeza de quais opções eu tenho no momento ...