webentwicklung-frage-antwort-db.com.de

Installieren Sie Redis-Server unter Ubuntu 16.04 LTS minimal

Ich habe eine Frage und hoffe, dass mir jemand helfen kann. Ich besitze einen vServer auf OpenVZ-Basis (ich hasse die Kernel-Einschränkung) und kann Redis nicht installieren.

Was mache ich:

  • Neuinstallation von Ubuntu 16.04. LTS minimal
  • Melden Sie sich als root an
  • lauf: apt update
  • lauf: apt upgrade

(Ich weiß nicht, ob dies relevant ist, aber dies erscheint während des Prozesses:

Installieren der neuen Version der Konfigurationsdatei /etc/systemd/system.conf ... addgroup: Die Gruppe "systemd-journal" existiert bereits als Systemgruppe. Verlassen. [/usr/lib/tmpfiles.d/var.conf:14] Doppelte Zeile für Pfad "/ var/log", ignoriert. Fehler beim Überprüfen von Pfad/var/run/sshd: Zu viele Ebenen symbolischer Links Fehler beim Überprüfen von Pfad/var/run/Sudo: Zu viele Ebenen symbolischer Links Fehler beim Überprüfen von Pfad/var/run/Sudo/ts: Zu viele Ebenen von symbolischen Links (Datenbank lesen ... 16369 Dateien und Verzeichnisse derzeit installiert.)

  • lauf: apt install redis-server

Problem erscheint:

Redis-Server einrichten (2: 3.0.6-1) ...

fchownat () von/run/redis fehlgeschlagen: Ungültiges Argument

insserv: Warnung: Skript ist beschädigt oder ungültig: /etc/init.d/../rc2.d/S15ssh_gen_Host_keys

Job für redis-server.service ist fehlgeschlagen, weil ein Timeout überschritten wurde. Weitere Informationen finden Sie unter "systemctl status redis-server.service" und "journalctl -xe".

invoke-rc.d: Initscript-Redis-Server, Aktion "Start" fehlgeschlagen.

...

Prozess: 11845 ExecStopPost =/bin/run-parts --verbose /etc/redis/redis-server.p ost-down.d (Code = beendet, Status = 0/ERFOLG)

Prozess: 11839 ExecStartPost =/bin/run-parts --verbose/etc/redis/redis-server. post-up.d (Code = beendet, Status = 0/ERFOLG)

Prozess: 11837 ExecStart =/usr/bin/redis-server /etc/redis/redis.conf (Code = beendet, Status = 0/SUCCESS)

Prozess: 11833 ExecStartPre =/bin/run-parts --verbose /etc/redis/redis-server.p re-up.d (Code = beendet, Status = 0/ERFOLG)

systemd [1]: Erweiterter Schlüsselwert konnte nicht gestartet werden ....

systemd [1]: redis-server.service: Einheit eingegeben ....

systemd [1]: redis-server.service: Fehler bei r ....

Hinweis: Einige Linien wurden mit Ellipsen versehen. Verwenden Sie -l, um sie vollständig anzuzeigen.

dpkg: Fehlerverarbeitungspaket redis-server (--configure): Nach der Installation installierter Unterprozess hat den Fehler-Exit-Status 1 zurückgegeben

Verarbeitungsauslöser für libc-bin (2.23-0ubuntu10) ...

Verarbeitungsauslöser für systemd (229-4ubuntu21.9) ...

Verarbeitungsauslöser für ureadahead (0.100.0-19) ...

Bei der Verarbeitung sind Fehler aufgetreten: redis-server

E: Der Unterprozess/usr/bin/dpkg hat einen Fehlercode zurückgegeben (1)

W: Der Betrieb wurde unterbrochen, bevor er beendet werden konnte

  • lauf: systemctl status redis-server.service

redis-server.service - Erweiterter Schlüsselwertspeicher Geladen: geladen (/lib/systemd/system/redis-server.service; aktiviert; Hersteller-Voreinstellung: aktiviert) Aktiv: Aktivieren (Start-Post) seit Mo 2018-11-19 19:41:53 MEZ; Vor 54 Jahren Docs: http://redis.io/documentation , man: redis-server (1) Prozess: 11966 ExecStopPost =/bin/run-parts --verbose/etc/redis/redis- server.post-down.d (Code = beendet, Status = 0/SUCC
Prozess: 11978 ExecStartPost =/bin/run-parts --verbose /etc/redis/redis-server.post-up.d (Code = beendet, Status = 0/SUCCE
Prozess: 11976 ExecStart =/usr/bin/redis-server /etc/redis/redis.conf (Code = beendet, Status = 0/ERFOLG) Prozess: 11972 ExecStartPre =/bin/run-parts - verbose /etc/redis/redis-server.pre-up.d (Code = beendet, Status = 0/SUCCESS CGroup: /system.slice/redis-server.service └─11977/usr/bin/redis-server 127.0. 0,1: 6379

systemd [1]: Starten des erweiterten Schlüsselwertspeichers ...

run-parts [11972]: run-parts: Ausführen von /etc/redis/redis-server.pre-up.d/00_example

run-parts [11978]: run-parts: Ausführen von /etc/redis/redis-server.post-up.d/00_example

systemd [1]: redis-server.service: PID-Datei /var/run/redis/redis-server.pid nicht lesbar (

Danach kann ich Redis-Server nicht mehr starten (fehlgeschlagen, weil ein Timeout überschritten wurde). Was kann ich tun, um dieses Problem zu beheben? Ich habe in diesem Forum viele Themen zu Redis gesehen, aber die Lösungen haben mir nicht geholfen. Entschuldigung für mein schlechtes Englisch. Danke im Voraus.

3
Firehead

So beheben Sie Ihren Fehler: Installieren Sie Redis als Nicht-Root-Benutzer.

Sudo apt-get update
Sudo apt-get install build-essential tcl

Laden Sie den Quellcode herunter und extrahieren Sie ihn

cd /tmp

Laden Sie jetzt die neueste stabile Version von Redis herunter. Dies ist immer unter einer stabilen Download-URL verfügbar:

curl -O http://download.redis.io/redis-stable.tar.gz

Packen Sie den Tarball aus, indem Sie Folgendes eingeben:

tar xzvf redis-stable.tar.gz

Wechseln Sie in die gerade extrahierte Redis-Quellverzeichnisstruktur:

cd redis-stable

Erstellen und installieren Sie Redis

Abhängigkeiten kompilieren:

cd deps
Sudo make hiredis jemalloc linenoise lua geohash-int
cd ..

Kompilieren Sie die Redis-Binärdateien, indem Sie Folgendes eingeben:

make

Führen Sie nach dem Kompilieren der Binärdateien die Testsuite aus, um sicherzustellen, dass alles korrekt erstellt wurde. Sie können dies tun, indem Sie Folgendes eingeben:

make test

Dies dauert normalerweise einige Minuten. Sobald dies abgeschlossen ist, können Sie die Binärdateien auf dem System installieren, indem Sie Folgendes eingeben:

Sudo make install

Beginnen Sie mit dem Erstellen des Redis-Benutzers und der Gruppe. Dies kann in einem einzigen Befehl erfolgen, indem Sie Folgendes eingeben:

Sudo adduser --system --group --no-create-home redis

Jetzt können wir das Verzeichnis/var/lib/redis erstellen, indem wir Folgendes eingeben:

Sudo mkdir /var/lib/redis

Wir sollten dem Redis-Benutzer und der Gruppe das Eigentum an diesem Verzeichnis geben:

Sudo chown redis:redis /var/lib/redis

Passen Sie die Berechtigungen so an, dass normale Benutzer nicht auf diesen Speicherort zugreifen können:

Sudo chmod 770 /var/lib/redis

Redis starten

Starten Sie den systemd-Dienst, indem Sie Folgendes eingeben:

Sudo systemctl start redis

Überprüfen Sie, ob der Dienst keine Fehler aufwies, indem Sie Folgendes ausführen:

Sudo systemctl status redis

Quelle: https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-redis-on-ubuntu-16-04

1
mature