Tidak dapat menginstal GIT pada CentOS 6.0 x64

12

Saya mencoba menginstal GIT dengan RPM atau YUM tetapi saya tidak bisa. Saya mendapatkan kesalahan berikut:

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

Saat berlari 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

Daftar Repo:

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

Server menjalankan WHM / cPanel terbaru.

Bagaimana cara memperbaikinya?

Tom
sumber
Apakah Anda mencoba menginstal pustaka dan paket yang hilang?
dkaragasidis
1
Jika dia menginstal melalui yum, itu harus menyelesaikan dependensi. @ Tom, dapatkah Anda melakukan perintah "yum repolist" dan menempelkannya di pertanyaan Anda?
Rilindo

Jawaban:

17

Seperti yang Anda lihat dari ini posting di forum cPanel, cPanel / WHM memilih untuk menginstal versi Perl dari sumbernya sendiri sehingga paket blacklist perl * yang dapat ditarik oleh yum di /etc/yum.conf.

Solusinya adalah untuk sementara mengabaikan arahan pengecualian sementara yum memilah-milah dependensi untuk Git:

yum install git --disableexcludes=main --skip-broken
Stewart Adam
sumber
bekerja pasangan +1 thnx
Sergey Benner
3

Sepertinya saat Anda menginstal git untuk pertama kalinya, ia menarik dari repo pembaruan terlebih dahulu - yang memiliki git-1.7.1-2.el6_0.1.x86_64.rpm (sebagai lawan dari git-1.7.1-2 .el6.x86_64.rpm).

Ada dua opsi untuk melakukan pendekatan ini:

Instal git dari pangkalan dan nonaktifkan repo pembaruan untuk sementara dengan:

yum -y install git --disablerepo=updates

atau

Terapkan sebagian besar pembaruan saat ini dengan:

yum -y upgrade

Dan kemudian jalankan git install lagi, sehingga Anda dapat memenuhi dependensi Anda saat ini dengan versi git yang diperbarui.

Saya menyarankan pendekatan sebelumnya, karena Anda tidak ingin menerapkan pembaruan jika Anda tidak memiliki rencana regresi.

EDIT: Oke, karena sepertinya tidak bisa menyelesaikan dependensi atau sedang menuju repo yang memang memiliki pembaruan tersebut rpm, unduh RPM dari lokasi berikut:

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

dan kemudian instal melalui yum dengan:

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

dan coba instal git lagi. Jika perlu, unduh git sendiri dan instal dengan:

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
Rilindo
sumber
Tidak bekerja, Masih membutuhkan perl-git dan perl-error
Tom
Oke, respons yang diperbarui dengan opsi ketiga.
Rilindo
Dipasang git-Error, tetapi tidak dapat menginstal perl-Git, Dikatakan: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
Oke, unduh gtlib.gatech.edu/pub/centos/6.0/updates/x86_64/RPMS/... lalu lakukan 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

Grup kesalahan pertama yang Anda posting menunjukkan bahwa Anda mencoba memasang versi 32-tetapi git. Ini adalah sistem 64-bit.

Apakah kamu lari yum install git? Itu seharusnya sudah menyelesaikan rantai ketergantungan Anda. Bersihkan cache yum Anda dengan yum clean all.

Jika tidak, Anda harus menginstal dependensi berikut ...

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

Coba instal gitmelalui yum install gitmengikuti itu.

putih
sumber
Itu memang menemukan perl-Gitatauperl-Error
Tom
Oke, hapus dua paket perl dan coba instal gitsendiri.
ewwhite
Saya telah memperbarui posting dengan apa yang saya dapatkan.
Tom
1
Mungkin coba yum clean alljalankan kemudian yum install git.
ewwhite
1

Cukup unduh dan kompilasi dari sumber.

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
Jimmy Ngu
sumber
6
Bah, kami memiliki manajemen paket karena suatu alasan, dan Anda hanya boleh pergi dari manajemen paket jika Anda memiliki alasan yang sangat bagus. "yum" tidak berfungsi dengan benar menunjukkan masalah harus diperbaiki, tidak diabaikan.
cjc
Saya semua untuk mengkompilasi hal-hal dari sumber ketika ada alasan bagus , tetapi dalam hal ini akan menjadi peretasan (buruk), bukan perbaikan yang tepat.
voretaq7
@ Semua: Untuk versi 1.7, saya tidak punya masalah untuk menginstal / memperbarui ke versi terbaru tetapi tidak mungkin untuk meningkatkan ke 1.8.x; Kemudian saya menggunakan metode ini untuk menginstalnya dengan sukses (bahkan seperti Anda, saya tidak suka menginstal tanpa manajer paket)
рüффп
1

Sepertinya repositori Anda kehilangan beberapa paket tambahan yang diperlukan untuk menginstal GIT. Biasanya saya menginstal paket-paket tambahan untuk repositori Enterprise Linux juga dan itu memperbaiki banyak masalah saya.

Itu dapat ditemukan di sini:

RHEL5 atau RHEL6

Instal Repo RHEL6 dan Anda harus memiliki akses ke paket tambahan yang Anda butuhkan.

Terbaik jika Keberuntungan

J Baron
sumber
GIT termasuk dalam distribusi CentOS dasar, jadi ini tidak sepenuhnya akurat.
Rilindo