Instalación de Redis en centos 6.5

10

Estoy tratando de instalar Redis en centos 6.5 (x64) con la siguiente línea:

yum install redis

Pero estoy recibiendo la siguiente pantalla:

[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

Como puedo resolver este problema ?

Tolgay Toklar
fuente
1
systemdno está incluido en EPEL6. [1]: stackoverflow.com/questions/28347694/…
030
1
Oh, tengo que actualizar a centos 7 ¿verdad?
Tolgay Toklar
Esa es una opción, pero primero puedes probar la respuesta de Michael Hampton. No está incluido en EPEL6, pero es posible instalarlo en CentOS6 instalando otro paquete.
030
1
Agregué
1
excelente pregunta! + 1
l --''''''--------- '' '' '' '' '' ''

Respuestas:

18

Instaló el repositorio EPEL para EL7, pero en realidad está ejecutando EL6. Retire el epel-releasepaquete, es decir, sudo yum search epel && sudo yum remove epel-releasey reemplácelo con el paquete correcto.

De acuerdo con esta documentación, Redis podría instalarse en CentOS6 emitiendo los siguientes comandos:

// --- 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 
Michael Hampton
fuente
1
¿Cómo puedo reemplazarlo? Puede dar un ejemplo ?
Tolgay Toklar
1
Actualización: estoy usando centos 6.6 ¿importa?
Tolgay Toklar
1
Intenté la segunda opción: la clave pública para jemalloc-3.6.0-1.el7.x86_64.rpm no está instalada
Tolgay Toklar
1
@TolgayToklar Todavía tiene instalado el repositorio EPEL para EL7 y aún necesita eliminarlo.
Michael Hampton
1
yum metadatos limpios
Uday Hiwarale
18

Aquí está mi experiencia exitosa de actualizar Redis (2.4.10) en CentOS 6.5.

Cómo actualizar Redis en CentOS 6.5

  1. Primero, asegúrese de que estén instalados los siguientes repositorios EPELy 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. Verifique la versión de Redis en el REMIrepositorio: (a partir de junio de 2015, la versión es 2.8.13 )

    yum --enablerepo=remi info redis
    
  3. Luego instala la dependencia relacionada ( jemalloc) desde el EPELrepositorio:

    sudo yum --enablerepo=epel install jemalloc
    
  4. Antes de la instalación, debe detener el viejo demonio Redis:

    sudo service redis stop
    
  5. Luego instale la versión más reciente de Redis:

    sudo yum --enablerepo=remi install redis
    
  6. Edite el archivo de configuración de Redis si es necesario:

    sudo vi /etc/redis.conf
    
  7. Reinicie el demonio Redis y haga que se inicie automáticamente al reiniciar:

    sudo service redis start
    sudo chkconfig redis on
    
  8. Finalmente, verifique la versión de Redis instalada actualmente:

    redis-cli info | grep redis_version
    

¡Hecho!

Rockallita
fuente
Esto es genial, gracias! Me tuve que editar mis /etc/redis.confeliminación de todos vm-y hash-antepone directivas
Pruett
Gracias, no me di cuenta de que estaba disponible en remi. A partir del 22 de octubre de 2015, su v3.0.5 e instaló perfectamente (w / cPanel) rpms.famillecollet.com/enterprise/6/remi/x86_64/repoview/… . Si usa PHP, no olvide agregar el módulo a través de pecl install redis.
dhaupin
También agregaría un paso (n opcional) allí después del paso 1, editando /etc/yum.repos.d/remi-safe.repoagregando una línea includepkgs=redispara que solo el paquete redis se actualice desde el remi repo cuando sea el momento de ejecutarlo yum update.
Dale Anderson
Todavía funciona en 2019.
rolkos
7

El paquete de redis de EPEL está un poco desactualizado, en RHEL6 puede usar el Repositorio de Remi: http://rpms.famillecollet.com/ . Están actualizados, también con los últimos lanzamientos de las versiones 3.0 y 2.8.

Eche un vistazo aquí para obtener una descripción de los últimos paquetes.

Petre
fuente
//, sin embargo, el repositorio de Remi intentará actualizar cualquier otro paquete, si hay un yum update, ¿verdad?
Nathan Basanese
1
//, ¿Cómo puedo evitar ese problema?
Nathan Basanese
@NathanBasanese, vale la pena hacer esto en una pregunta separada (indudablemente, más personas también tendrán la misma), pero en aras de la gratificación instantánea, agregue una includepkgs=redislínea a la [remi-safe]sección /etc/yum.repos.d/remi-safe.repopara asegurarse de que solo se actualice el paquete redis.
Dale Anderson