Impossibile installare GIT su CentOS 6.0 x64


12

Sto cercando di installare GIT da RPM o YUM ma non ci riesco. Ottengo il seguente errore:

error: Failed dependencies:
        libcrypto.so.10 is needed by git-1.7.1-2.el6.i686
        libcurl.so.4 is needed by git-1.7.1-2.el6.i686
        libexpat.so.1 is needed by git-1.7.1-2.el6.i686
        libssl.so.10 is needed by git-1.7.1-2.el6.i686
        libz.so.1 is needed by git-1.7.1-2.el6.i686
        perl(Error) is needed by git-1.7.1-2.el6.i686
        perl(Git) is needed by git-1.7.1-2.el6.i686
        perl-Git = 1.7.1-2.el6 is needed by git-1.7.1-2.el6.i686

Durante l'esecuzione yum install git:

root@server [/usr/local/src]# yum install git
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.symnds.com
 * extras: mirror.atlanticmetro.net
 * updates: mirror.trouble-free.net
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package git.x86_64 0:1.7.1-2.el6_0.1 set to be updated
--> Processing Dependency: perl-Git = 1.7.1-2.el6_0.1 for package: git-1.7.1-2.el6_0.1.x86_64
--> Processing Dependency: perl(Git) for package: git-1.7.1-2.el6_0.1.x86_64
--> Processing Dependency: perl(Error) for package: git-1.7.1-2.el6_0.1.x86_64
--> Finished Dependency Resolution
Error: Package: git-1.7.1-2.el6_0.1.x86_64 (updates)
           Requires: perl(Error)
Error: Package: git-1.7.1-2.el6_0.1.x86_64 (updates)
           Requires: perl-Git = 1.7.1-2.el6_0.1
Error: Package: git-1.7.1-2.el6_0.1.x86_64 (updates)
           Requires: perl(Git)
 You could try using --skip-broken to work around the problem
bandmin-1.6.1-5.noarch has missing requires of perl(bandmin.conf)
bandmin-1.6.1-5.noarch has missing requires of perl(bmversion.pl)
bandmin-1.6.1-5.noarch has missing requires of perl(services.conf)
exim-4.69-30_cpanel_maildir.x86_64 has missing requires of perl(SafeFile)
frontpage-2002-SR1.2.i386 has missing requires of libexpat.so.0

Elenco delle riparazioni:

repo id                       repo name                                status
base                          CentOS-6 - Base                          5,664+355
extras                        CentOS-6 - Extras                                1
updates                       CentOS-6 - Updates                          991+51
repolist: 6,656

Il server esegue l'ultimo WHM / cPanel.

Come risolverlo?


Hai provato a installare le librerie e i pacchetti mancanti?
dkaragasidis,

1
Se sta installando tramite yum, dovrebbe risolvere le dipendenze. @ Tom, puoi fare un comando "yum repolist" e incollare la tua domanda?
Rilindo,

Risposte:


17

Come puoi vedere da questo post nei forum di cPanel, cPanel / WHM opta per installare la propria versione di Perl dal sorgente in modo da elencare in nero i pacchetti perl * che potrebbero essere inseriti da yum in /etc/yum.conf.

La soluzione è ignorare temporaneamente la direttiva excles mentre yum ordina le dipendenze per Git:

yum install git --disableexcludes=main --skip-broken

ha lavorato compagno +1 thnx
Sergey Benner il

3

Sembra che mentre installi git per la prima volta, estrae per primo dal repository di aggiornamento - che ha git-1.7.1-2.el6_0.1.x86_64.rpm (al contrario di git-1.7.1-2 .el6.x86_64.rpm).

Esistono due opzioni per avvicinarsi a questo:

Installa git dalla base e disabilita temporaneamente il repository di aggiornamento con:

yum -y install git --disablerepo=updates

o

Applica la maggior parte degli aggiornamenti attuali con:

yum -y upgrade

E quindi esegui di nuovo l'installazione di git, in modo da poter soddisfare le tue dipendenze correnti con la versione aggiornata di git.

Suggerisco un approccio precedente, poiché non si desidera applicare gli aggiornamenti se non si dispone di un piano di regressione.

EDIT: Ok, dal momento che sembra che non riesca a risolvere le dipendenze o stia andando in un repository che ha quegli aggiornamenti rpm, scarica l'RPM da queste posizioni:

http://www.gtlib.gatech.edu/pub/centos/6.0/updates/x86_64/RPMS/perl-Git-1.7.1-2.el6_0.1.noarch.rpm

http://www.gtlib.gatech.edu/pub/centos/6.0/os/x86_64/Packages/perl-Error-0.17015-4.el6.noarch.rpm

e quindi installare tramite yum con:

yum localinstall perl-Error-0.17015-4.el6.noarch.rpm perl-Git-1.7.1-2.el6_0.1.noarch.rpm

e prova a installare di nuovo git. Se necessario, scarica git stesso e installalo con:

yum localinstall perl-Error-0.17015-4.el6.noarch.rpm perl-Git-1.7.1-2.el6_0.1.noarch.rpm git-1.7.1-2.el6_0.1.x86_64.rpm

Nessuno dei due ha funzionato, richiede ancora perl-git e perl-error
Tom,

Ok, risposta aggiornata con la terza opzione.
Rilindo,

Installato git-Error, ma impossibile installare perl-Git, dice:error: Failed dependencies: git = 1.7.1-2.el6_0.1 is needed by perl-Git-1.7.1-2.el6_0.1.noarch
Tom

Ok, scarica gtlib.gatech.edu/pub/centos/6.0/updates/x86_64/RPMS/… quindi esegui yum localinstall git-1.7.1-2.el6_0.1.x86_64.rpm perl-Git-1.7.1-2 .el6_0.1.noarch.rpm
Rilindo

2

Il primo gruppo di errori che hai pubblicato indica che stavi cercando di installare una versione di git a 32 ma rpm. Questo è un sistema a 64 bit, però.

Hai corso yum install git? Avrebbe dovuto risolvere la tua catena di dipendenze. Pulisci la tua cache yum con yum clean all.

In caso contrario, dovrai installare le seguenti dipendenze ...

yum install openssl libcurl expat zlib perl-Git perl-Error

Provare ad installare gittramite yum install gitsuccessivo.


Trova perl-Gitoperl-Error
Tom,

Bene, rimuovi i due pacchetti perl e prova a installarlo gitda solo.
ewwhite,

ho aggiornato il post con quello che ottengo.
Tom,

1
Forse provare a yum clean allcorrere yum install git.
ewwhite,

1

Basta scaricare e compilare dalla fonte.

mkdir /home/sources
cd /home/sources
wget http://git-core.googlecode.com/files/git-1.7.8.4.tar.gz
tar -zxf git-1.7.8.4.tar.gz
cd git-1.7.8.4
./configure
make
make install

6
Bah, abbiamo una gestione dei pacchetti per un motivo e dovresti allontanarti dalla gestione dei pacchetti solo se hai un ottimo motivo. "yum" non funziona correttamente indica un problema da risolvere, non da ignorare.
cjc,

Sono tutto per compilare materiale dalla fonte quando c'è una buona ragione , ma in questo caso sarebbe un (cattivo) hack, non una soluzione corretta.
voretaq7,

@Tutti: per la versione 1.7 non ho avuto problemi con l'installazione / l'aggiornamento all'ultima versione ma non è stato possibile eseguire l'aggiornamento a 1.8.x; Poi ho usato questo metodo per installare con successo (anche come non si mi piace da installare senza gestore di pacchetti)
рüффп

1

Sembra che nei tuoi repository manchino alcuni dei pacchetti aggiuntivi necessari per installare GIT. In genere installo anche il repository Pacchetti extra per Enterprise Linux e questo risolve un sacco di problemi.

Si può trovare qui:

RHEL5 o RHEL6

Installa RHEL6 Repo e dovresti avere accesso ai pacchetti aggiuntivi di cui hai bisogno.

Meglio se la fortuna


GIT è incluso nelle distribuzioni CentOS di base, quindi non è del tutto esatto.
Rilindo,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.