Ho due macchine CentOS, una scatola 6.3 ( A ) e un'altra CentOS 6.1. ( B )
6.3 box è con connessione internet, 6.1 box è senza connessione internet.
Voglio scaricare TUTTE le dipendenze di un prodotto dalla casella A, quindi copiare quelle n nella casella B e installare il prodotto.
Ci ho provato
yum --downloadonly --downloaddir=*~/downloadrepo* -y install *product*`
cd *~/downloadrepo*
createrepo .
Quindi ho disabilitato tutti i repository (con --disablerepo), tranne il mio repository, e ho installato il prodotto sullo stesso computer (casella A). Nessun errore
yum install *product*
Ora, quando ho copiato questo repository nella casella B e ho provato a installare con lo stesso comando, inizia l'installazione, ma poi dà molti errori come di seguito:
Errore: dipendenza mancante: libldap-2.3.so.0 () (64 bit) è necessario dal pacchetto php-ldap-5.1.6-27.el5_5.3.x86_64 (installato)
Come mai posso ottenere ciò di cui ho bisogno?
AGGIORNARE
Quando ho iniziato a lavorare con l'opzione suggerita da @rkosegi ( --releasever = versione ), mi è stata data una nuova scatola con la stessa versione CentOS 6.1 ( C )
Ho provato i comandi sopra menzionati nella casella C e l'ho copiato repo nella casella B. Tuttavia non è riuscito. Il motivo: sebbene entrambe le caselle siano 6.1, quelle non sono identiche ( uname -r restituisce stringhe diverse).
Yum non scarica le dipendenze, se sono già installate. Quindi il mio repository non conteneva alcune delle dipendenze (incluso OpenJDK). Quindi, quando provo a installare su Box B, fallisce.
Abbastanza frustrante !!!
Ma poi ho trovato il comando ' repotrack ' qui .
cd ~/downloadrepo
repotrack -p . -a x86_64 product
createrepo .
Ho molti più file che con yum, speriamo che faccia il trucco.
Aggiornerò, una volta provata l'installazione.
AGGIORNARE
Il repotrack di comando non ha funzionato per me. Quando ho provato a installare dal repository creato con 'repotrack', ho riscontrato i seguenti errori:
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
Ho provato a rimuovere questi due file dalla cartella e a ricostruire il repository con 'createrepo'. Ha dato un'altra serie di errori.
Non sono sicuro di quali opzioni ho al momento ...