Nginx-Installationsfehler in Ubuntu 16.04

57
: ~ $ sudo apt-get entferne nginx * && sudo apt-get installiere nginx-full *

Paketlisten lesen ... Fertig
Abhängigkeitsbaum erstellen       
Statusinformationen werden gelesen ... Fertig

Nach diesem Vorgang werden 5.579 KB zusätzlicher Speicherplatz verwendet.
Möchtest du weiter machen? [J / n] j
Erhalten Sie: 1 http://in.archive.ubuntu.com/ubuntu xenial-updates / universe amd64 nginx-full-dbg amd64 1.10.0-0ubuntu0.16.04.1 [3,789 kB]
3,789 kB in 33s (112 kB / s) abgerufen                                             
Auswahl des zuvor nicht ausgewählten Pakets nginx-common.
(Datenbank wird gelesen ... 189767 Dateien und Verzeichnisse sind derzeit installiert.)
Entpacken wird vorbereitet ... / nginx-common_1.10.0-0ubuntu0.16.04.1_all.deb ...
Nginx-common (1.10.0-0ubuntu0.16.04.1) wird entpackt ...
Auswahl des zuvor nicht ausgewählten Pakets nginx-full.
Entpacken wird vorbereitet ... / nginx-full_1.10.0-0ubuntu0.16.04.1_amd64.deb ...
Nginx-full (1.10.0-0ubuntu0.16.04.1) wird entpackt ...
Auswahl des zuvor nicht ausgewählten Pakets nginx-full-dbg.
Entpacken wird vorbereitet ... / nginx-full-dbg_1.10.0-0ubuntu0.16.04.1_amd64.deb ...
Nginx-full-dbg (1.10.0-0ubuntu0.16.04.1) wird entpackt ...
Trigger für ufw (0.35-0ubuntu1) werden verarbeitet ...
Regeln für Profil 'Apache Full' aktualisiert
Regeln für Profil 'Nginx HTTP' aktualisiert

Trigger für systemd (229-4ubuntu4) werden verarbeitet ...
Verarbeitungsauslöser für ureadahead (0.100.0-19) ...
Verarbeitungsauslöser für man-db (2.7.5-1) ...
Einrichten von nginx-common (1.10.0-0ubuntu0.16.04.1) ...
Nginx-full wird eingerichtet (1.10.0-0ubuntu0.16.04.1) ...
Der Auftrag für nginx.service ist fehlgeschlagen, da der Steuerprozess mit Fehlercode beendet wurde. Weitere Informationen finden Sie unter "systemctl status nginx.service" und "journalctl -xe".

invoke-rc.d: initscript nginx, Aktion "Start" fehlgeschlagen.

dpkg: Fehler beim Verarbeiten des Pakets nginx-full (--configure):
 Das nach der Installation installierte Unterprozess-Skript hat den Fehler-Exit-Status 1 zurückgegeben
dpkg: Abhängigkeitsprobleme verhindern die Konfiguration von nginx-full-dbg:
 nginx-full-dbg hängt von nginx-full ab (= 1.10.0-0ubuntu0.16.04.1); jedoch:
  Paket nginx-full ist noch nicht konfiguriert.

dpkg: Fehler beim Verarbeiten des Pakets nginx-full-dbg (--configure):

 Abhängigkeitsprobleme - unkonfiguriert lassen
Es wurde kein Apport-Bericht geschrieben, da die Fehlermeldung auf einen Folgefehler aufgrund eines früheren Fehlers hinweist.

                          Bei der Verarbeitung sind Fehler aufgetreten:
 Nginx-voll

 Nginx-Full-DBG

E: Unterprozess / usr / bin / dpkg hat einen Fehlercode zurückgegeben (1)
Mohit
quelle
Versuchen Sie es apt-get -f installohne Paket
Motte001
bereits geprüft, gleicher Fehler !! Bitte schauen Sie:: ~ $ sudo apt-get -f installiere nginx-full-dbg hängt von nginx-full ab (= 1.10.0-0ubuntu0.16.04.1); aber: Paket nginx-full ist noch nicht konfiguriert. dpkg: Fehler beim Verarbeiten des Pakets nginx-full-dbg (--configure): Abhängigkeitsprobleme - unkonfiguriert lassen Bei der Verarbeitung sind Fehler aufgetreten: nginx-full nginx-full-dbg E: Unterprozess / usr / bin / dpkg hat einen Fehlercode zurückgegeben (1)
Mohit
1
Haben Sie Apache auf Port 80 installiert und ausgeführt, bevor Sie nginx installieren? Bearbeiten Sie Ihre Frage umfassen die Ausgabe systemctl -l status nginxals auch
Thomas Ward
Hatten Sie auch eine andere Version von Nginx installiert? Ich sehe, dass Sie eine Entfernungsaufgabe ausgeführt haben, aber wenn die älteren Konfigurationen noch vorhanden sind, können sie die Installation unterbrechen, wenn sie veraltete Befehle oder ähnliches enthalten.
Thomas Ward
See "systemctl status nginx.service" and "journalctl -xe" for details.- Können Sie das bitte tun und die Ausgabe in Ihre Frage aufnehmen?
David Foerster

Antworten:

139

Das Herunterfahren von apache2 vor der Installation von nginx sollte dieses Problem beheben:

sudo service apache2 stop
Andrew Chan
quelle
3
Willkommen bei Ask Ubuntu! Ich empfehle , diese Antwort zu bearbeiten , um sie mit spezifischen Details zu erweitern. (Siehe auch Wie schreibe ich eine gute Antwort ?, um allgemeine Ratschläge zu erhalten, welche Arten von Antworten auf Ask Ubuntu als am wertvollsten erachtet werden.)
David Foerster
Dies gab mir den Hinweis, den ich brauchte. In meinem Fall habe ich einen Docker-Container verwendet, auf dem ein anderer
Nginx-
Ich habe das Gleiche getan, aber den Schuldigen mit gefunden netstat -tulpn | grep :80. In meinem Fall war Varnish so konfiguriert, dass er auf Port 80 lauscht. systemctl stop varnishDann habe ich Nginx installiert und das Problem für mich behoben. Warum Debian / Ubuntu - Pakete versuchen , sich selbst zu starten , bei der Installation über mich ... Ich würde lieber installieren, konfigurieren Sie es wie ich es mag, dann starten Sie es: P
geerlingguy
28

Andrew Chan hat mir die richtige Antwort gegeben. Um seine Antwort ein wenig zu erweitern, können Sie auf der Kommandozeile Folgendes tun:

Stoppen Sie Apache2

sudo systemctl stop apache2.service

verhindern, dass apache2 beim booten startet

sudo systemctl disable apache2.service

Installieren Sie Nginx neu

sudo apt-get install nginx

AR Winters
quelle
1
Ich würde vorschlagen, dass Sie Apache2 beim Booten nicht deaktivieren, wenn Sie es benötigen - es gibt viele Fälle, in denen Sie Apache nicht deaktivieren müssen, wenn Sie es so konfigurieren, dass es auf einem anderen Port empfangsbereit ist. Nachdem ich dies für einige Setups selbst gemacht habe, kann ich aus einiger Erfahrung sprechen (ich arbeite auch viel im Nginx-Paket, aus dem diese Erfahrung stammt)
Thomas Ward
7

Ich hatte gerade dieses Problem, aber die Lösung war etwas anders.

Nachdem ich eine einfache Fehlkonfiguration behoben hatte, konnte ich nginx aktualisieren.

Überprüfen Sie Ihr Nginx-Fehlerprotokoll :

sudo cat /var/log/nginx/error.log|less

Dann versuche es nochmal:

sudo apt-get update;sudo apt-get upgrade
Taiger
quelle
logs FTW, in meinem Fall war der 80er Port bereits belegt, was die Fehlerursache war
xliiv
6

In meinem Fall ist der Fehler, dass der Server IPv6 deaktiviert hat. Lösung:

Bearbeiten /etc/nginx/sites-enabled/defaultund kommentieren Sie IPv6 heraus:

listen [::]:80 default_server;

Nginx neu installieren:

apt purge nginx
apt autoremove
apt install nginx
user551419
quelle
@DavidFoerster mit apt 1.0, wurde ein neues binäres eingeführt , dass viele von den bekannten (sub-) Befehle speichert , die unter verteilt waren apt-get, apt-cacheund so weiter. Zum Beispiel apt updategleich apt-get update, apt search some-namegleich apt-cache search some-nameund so weiter. In einigen Fällen gab es einige Umformulierungen, apt full-upgradedie gleichwertig sind apt-get dist-upgrade. Die alten Binaries und ihre Befehle sind auch für diejenigen verfügbar, die sie mögen.
Henning Kockerbeck
@ HenningKockerbeck: Danke. Ich wusste es damals wirklich nicht und dachte, es sei ein Tippfehler, aber ich habe mich in der Zwischenzeit weitergebildet.
David Foerster
Arbeitete für mich, aber ich kann dies nicht in meinen Shell-Skripten für die Serverbereitstellung implementieren, das ist lächerlich Umweg ...
Menasheh
1

Als ich /var/log/nginx/error.log überprüfte, stellte ich fest, dass das Installationsprogramm / var / cache / nginx / microcache nicht öffnen konnte

Eine Verzeichnisliste zeigte, dass es kein / var / cache / nginx-Verzeichnis gab, also habe ich es erstellt und die Installation war erfolgreich.

Charles Oertel
quelle
1

In meinem Fall handelt es sich um eine falsch konfigurierte Datei in / etc / nginx / sites-enabled / Ich habe sie als .old-Dateien benannt, aber das spielt keine Rolle. Sie werden gelesen und können eine erfolgreiche Installation oder den Start dieses Dienstes verhindern. Gehen Sie vorsichtig mit Dateien in diesem Ordner um und lesen Sie die von @Taiger beschriebene Fehlerausgabe sorgfältig durch

Godot85
quelle
0

Entfernen Sie vor der Installation alle manuell hinzugefügten Symlinks von /sites-enabled.

Deto
quelle
0

In meinem Fall hat überhaupt nichts geholfen, außer diesem:

sudo fuser -k 80/tcp

service nginx start
Mansim
quelle