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.