Установка Redis на centos 6.5


10

Я намагаюся встановити Redis на centos 6.5 (x64) з наступним рядком:

yum install redis

Але я отримую наступний екран:

[root@NodeJs ~]# yum install redis
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
 * base: nl.mirror.eurid.eu
 * epel: nl.mirror.eurid.eu
 * extras: mirror.denit.net
 * updates: nl.mirror.eurid.eu
Resolving Dependencies
--> Running transaction check
---> Package redis.x86_64 0:2.8.14-2.el7 will be installed
--> Processing Dependency: systemd for package: redis-2.8.14-2.el7.x86_64
--> Processing Dependency: systemd for package: redis-2.8.14-2.el7.x86_64
--> Processing Dependency: libjemalloc.so.1()(64bit) for package: redis-2.8.14-2.el7.x86_64
--> Running transaction check
---> Package jemalloc.x86_64 0:3.6.0-1.el7 will be installed
---> Package redis.x86_64 0:2.8.14-2.el7 will be installed
--> Processing Dependency: systemd for package: redis-2.8.14-2.el7.x86_64
--> Processing Dependency: systemd for package: redis-2.8.14-2.el7.x86_64
--> Finished Dependency Resolution
Error: Package: redis-2.8.14-2.el7.x86_64 (epel)
           Requires: systemd
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Як я можу вирішити цю проблему?


1
systemdне входить до EPEL6. [1]: stackoverflow.com/questions/28347694/…
030

1
Ой, я повинен перейти до centos 7 так?
Tolgay Toklar

Це варіант, але ви можете спробувати відповідь Майкла Гемптона спочатку. Він не входить в EPEL6, але встановити його на CentOS6 можна, встановивши інший пакет.
030

1
Я додав коментар до його відповіді, будь ласка, подивіться на це
Толгай Токлар

1
відмінне запитання! + 1
l - '' '''--------- '' '' '' '' '' '' '27

Відповіді:


18

Ви встановили сховище EPEL для EL7, але ви фактично працюєте з EL6. Вийміть epel-releaseпакет, тобто sudo yum search epel && sudo yum remove epel-releaseзамініть його правильним.

Відповідно до цієї документації Redis можна було б встановити на CentOS6, видавши наступні команди:

// --- Compiling ---
$ wget http://download.redis.io/releases/redis-2.8.3.tar.gz
$ tar xzvf redis-2.8.3.tar.gz
$ cd redis-2.8.3
$ make
$ make install

// --- or using yum ---
$ rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
$ rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-6.rpm

$ yum --enablerepo=remi,remi-test install redis 

1
Як я можу його замінити? Чи можете ви навести приклад?
Толгай Токлар

1
Оновлення: я використовую центос 6.6 це не має значення?
Tolgay Toklar

1
Я спробував другий варіант: відкритий ключ для jemalloc-3.6.0-1.el7.x86_64.rpm не встановлений
Tolgay Toklar

1
@TolgayToklar У вас ще встановлено сховище EPEL для EL7, і його все одно потрібно видалити.
Майкл Хемптон

1
yum clean метадані
Uday Hiwarale

18

Ось мій успішний досвід оновлення Redis (2.4.10) на CentOS 6.5.

Як оновити Redis на CentOS 6.5

  1. По-перше, переконайтеся, що встановлені наступні репости EPELта REMI:

    sudo rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
    sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-6.rpm
    
  2. Перевірте версію Redis в REMIрепо: (станом на червень 2015 року версія становить 2.8.13 )

    yum --enablerepo=remi info redis
    
  3. Потім встановіть відповідну залежність ( jemalloc) від EPELрепо:

    sudo yum --enablerepo=epel install jemalloc
    
  4. Перед встановленням слід зупинити старий демон Redis:

    sudo service redis stop
    
  5. Потім встановіть нову версію Redis:

    sudo yum --enablerepo=remi install redis
    
  6. За потреби редагуйте файл конфігурації Redis:

    sudo vi /etc/redis.conf
    
  7. Перезапустіть демон Redis і зробіть його автоматичним запуском при перезавантаженні:

    sudo service redis start
    sudo chkconfig redis on
    
  8. Нарешті, перевірте версію поточно встановленого Redis:

    redis-cli info | grep redis_version
    

Готово!


Це чудово, дякую! Мені довелося відредагувати /etc/redis.confвсі мої видалення vm-та попередні hash-директиви
pruett

Дякую, я не розумів, що це доступно в ремі. Станом на 22 жовтня 2015 року його v3.0.5 і він встановив ідеально (w / cPanel) rpms.famillecollet.com/enterprise/6/remi/x86_64/repoview/… . Якщо ви використовуєте PHP, не забудьте додати модуль через pecl install redis.
dhaupin

Я також додав би (n необов'язковий) крок туди після кроку 1, відредагувавши /etc/yum.repos.d/remi-safe.repoдодавання рядка, includepkgs=redisщоб тільки оновлений пакет оновився з ремі-репо, коли прийшов час запуску yum update.
Дейл Андерсон

Все ще працює у 2019 році.
rolkos

7

Пакет EPEL redis є дещо застарілим, на RHEL6 можна використовувати сховище Remi: http://rpms.famillecollet.com/ . Вони актуальні, також із останніми версіями версій 3.0 та 2.8.

Подивіться тут для опису останніх пакетів.


//, Репозиторій Remi спробує оновити будь-який інший пакет, хоча, якщо є yum update, правда, правда?
Натан Басанес

1
//, Як я можу уникнути цієї проблеми?
Натан Басанес

@NathanBasanese варто вам задати це окремим запитанням (у більшості людей, безперечно, теж буде той самий), але заради миттєвого задоволення ви додаєте includepkgs=redisрядок до [remi-safe]розділу, /etc/yum.repos.d/remi-safe.repoщоб переконатися, що оновлений лише пакет Redis.
Дейл Андерсон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.