Installazione di Redis su centos 6.5


10

Sto cercando di installare Redis su Centos 6.5 (x64) con la seguente riga:

yum install redis

Ma sto ottenendo la seguente schermata:

[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

Come posso risolvere questo problema?


1
systemdnon è incluso in EPEL6. [1]: stackoverflow.com/questions/28347694/…
030

1
Oh, devo passare a centos 7 giusto?
Tolgay Toklar,

Questa è un'opzione, ma potresti provare prima la risposta di Michael Hampton. Non è incluso in EPEL6, ma è possibile installarlo su CentOS6 installando un altro pacchetto.
030,

1
Ho aggiunto un commento alla sua risposta, per favore guarda questo
Tolgay Toklar,

1

Risposte:


18

Hai installato il repository EPEL per EL7, ma in realtà stai eseguendo EL6. Rimuovere il epel-releasepacchetto, ad esempio, sudo yum search epel && sudo yum remove epel-releasee sostituirlo con il pacchetto corretto.

Secondo questa documentazione Redis potrebbe essere installato su CentOS6 emettendo i seguenti comandi:

// --- 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
Come posso sostituirlo? Puoi fare un esempio ?
Tolgay Toklar,

1
Aggiornamento: sto usando centos 6.6, è importante?
Tolgay Toklar,

1
Ho provato la seconda opzione: la chiave pubblica per jemalloc-3.6.0-1.el7.x86_64.rpm non è installata
Tolgay Toklar

1
@TolgayToklar Hai ancora installato il repository EPEL per EL7 e devi ancora rimuoverlo.
Michael Hampton,

1
yum clean metadata
Uday Hiwarale

18

Ecco la mia esperienza di successo nell'aggiornamento di Redis (2.4.10) su CentOS 6.5.

Come aggiornare Redis su CentOS 6.5

  1. Innanzitutto, assicurarsi che siano installati i seguenti repository EPELe 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. Controlla la versione di Redis in REMIrepository: (A partire da giugno 2015, la versione è 2.8.13 )

    yum --enablerepo=remi info redis
    
  3. Quindi installare la relativa dipendenza ( jemalloc) dal EPELrepository:

    sudo yum --enablerepo=epel install jemalloc
    
  4. Prima dell'installazione, è necessario arrestare il vecchio demone Redis:

    sudo service redis stop
    
  5. Quindi installare la versione più recente di Redis:

    sudo yum --enablerepo=remi install redis
    
  6. Modifica il file di configurazione di Redis se necessario:

    sudo vi /etc/redis.conf
    
  7. Riavvia il demone Redis e avvialo automaticamente al riavvio:

    sudo service redis start
    sudo chkconfig redis on
    
  8. Infine, controlla la versione di Redis attualmente installato:

    redis-cli info | grep redis_version
    

Fatto!


Questo è fantastico, grazie! Ho dovuto modificare la mia /etc/redis.confrimozione di tutte vm-e hash-direttive anteposte
pruett

Grazie, non mi rendevo conto che era disponibile in remi. A partire dal 22 ottobre 2015 la sua v3.0.5 e ha installato perfettamente (w / cPanel) rpms.famillecollet.com/enterprise/6/remi/x86_64/repoview/… . Se usi PHP non dimenticare di aggiungere il modulo tramite pecl install redis.
Dhaupin,

Vorrei anche aggiungere un passaggio (n opzionale) dopo il passaggio 1, modificando l' /etc/yum.repos.d/remi-safe.repoaggiunta di una riga in includepkgs=redismodo che solo il pacchetto redis venga aggiornato dal remi repo quando è il momento di eseguire yum update.
Dale Anderson,

Funziona ancora nel 2019.
rolkos

7

I pacchetti redis di EPEL sono in qualche modo obsoleti, su RHEL6 puoi usare il repository di Remi: http://rpms.famillecollet.com/ . Sono aggiornati, anche con le ultime versioni delle versioni 3.0 e 2.8.

Dai un'occhiata qui per una descrizione degli ultimi pacchetti.


//, il repository Remi tenterà di aggiornare tutti gli altri pacchetti, anche se, se esiste yum update, giusto?
Nathan Basanese,

1
//, Come posso evitare questo problema?
Nathan Basanese,

@NathanBasanese vale la pena che tu lo faccia in una domanda separata (più persone avranno sicuramente anche la stessa) ma per motivi di gratificazione istantanea, aggiungi una includepkgs=redisriga alla [remi-safe]sezione di /etc/yum.repos.d/remi-safe.repoper assicurarti che solo il pacchetto redis sia aggiornato.
Dale Anderson,
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.