Не удается установить GIT на CentOS 6.0 x64

Я пытаюсь установить GIT с помощью RPM или YUM, но я не могу. Я получаю следующую ошибку:

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

При запуске yum install git:

[email protected] [/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

Список репо:

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

На сервере запущен последний WHM /cPanel.

Как это исправить?

12 голосов | спросил Tom 4 SunEurope/Moscow2011-12-04T01:02:26+04:00Europe/Moscow12bEurope/MoscowSun, 04 Dec 2011 01:02:26 +0400 2011, 01:02:26

5 ответов


14

Как вы можете видеть из этой публикации в cPanel forums, cPanel /WHM выбирает установку собственной версии Perl из исходного кода, поэтому он черным списком пакетов perl *, которые могут быть втянуты yum в /etc/yum.conf.

Решение состоит в том, чтобы временно игнорировать исключение директивы в то время как yum сортирует зависимости для Git:

yum install git --disableexcludes=main --skip-broken
ответил Stewart Adam 5 J0000006Europe/Moscow 2012, 22:34:30
3

Похоже, что когда вы устанавливаете git в первый раз, он сначала извлекает из репозитория обновления, который имеет git-1.7.1-2.el6_0.1.x86_64.rpm (в отличие от git-1.7. 1-2.el6.x86_64.rpm).

Есть два варианта подхода к этому:

Установите git из базы и временно отключите обновление, используя

yum -y install git --disablerepo=updates

или

Применять большинство текущих обновлений с помощью:

yum -y upgrade

И затем снова запустите git install, чтобы вы могли удовлетворить ваши текущие зависимости с обновленной версией git.

Я предлагаю прежний подход, так как вы не хотите применять обновления, если у вас нет плана регрессии.

РЕДАКТИРОВАТЬ: Хорошо, поскольку он, похоже, не может решить проблемы с зависимостями или он отправляется на репо, у которого есть эти обновления rpm, загрузите RPM из этих мест:

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

, а затем установите через yum с помощью:

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

и попробуйте снова установить git. При необходимости загрузите git самостоятельно и установите с помощью:

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 4 SunEurope/Moscow2011-12-04T01:43:21+04:00Europe/Moscow12bEurope/MoscowSun, 04 Dec 2011 01:43:21 +0400 2011, 01:43:21
2

Первая группа ошибок, которые вы указали, указывает, что вы пытались установить rpm 32-разрядную версию git. Это 64-битная система.

Вы запустили yum install git? Он должен был решить вашу цепочку зависимостей. Очистите кэш yum с помощью yum clean all.

Если нет, вам нужно будет установить следующие зависимости ...

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

Попробуйте установить git через yum install git после этого.

ответил ewwhite 4 SunEurope/Moscow2011-12-04T01:15:31+04:00Europe/Moscow12bEurope/MoscowSun, 04 Dec 2011 01:15:31 +0400 2011, 01:15:31
1

Просто загрузите и скомпилируйте из источника.

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 23 Jpm1000000pmMon, 23 Jan 2012 21:19:02 +040012 2012, 21:19:02
1

Похоже, что в ваших репозиториях отсутствуют некоторые дополнительные пакеты, необходимые для установки GIT. Как правило, я устанавливаю дополнительный пакет для репозитория Enterprise Linux, и это устраняет массу проблем.

Здесь можно найти:

RHEL5 или RHEL6

Установите RHEL6 Repo, и у вас должен быть доступ к дополнительным пакетам, которые вам нужны.

Лучшее, если удача

ответил J Baron 23 Jpm1000000pmMon, 23 Jan 2012 21:43:17 +040012 2012, 21:43:17

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132