
Ich verwende Ubuntu 16.02. Wenn ich es versuche sudo service apache2 restart
, heißt es:
Job for apache2.service failed because the control process exited with error code. See "systemctl status apache2.service" and "journalctl -xe" for details.
Dann gebe ich ein: journalctl -xe
und fordere an:
-- -- Die Einheit apache2.service hat mit dem Start begonnen. 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 1: /etc/apache2/envvars: envvars: nicht gefunden 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 49: /etc/apache2/envvars: envvars: nicht gefunden 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 1: /etc/apache2/envvars: envvars: nicht gefunden 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 49: /etc/apache2/envvars: envvars: nicht gefunden 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: * Apache httpd-Webserver apache2 wird gestartet 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: * 11. Jan 02:30:46 aleksandr-VirtualBox apache2[8177]: * Der Apache2-Konfigurationstest ist fehlgeschlagen. 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: Die Ausgabe des Konfigurationstests war: 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 1: /etc/apache2/envvars: envvars: nicht gefunden 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 49: /etc/apache2/envvars: envvars: nicht gefunden Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: (2)Keine solche Datei oder kein solches Verzeichnis: AH02291: Auf das Verzeichnis '/etc/apache2/logs/' für das Hauptfehlerprotokoll kann nicht zugegriffen werden Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: AH00014: Konfigurationsprüfung fehlgeschlagen 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: Aktion „configtest“ fehlgeschlagen. 11. Jan 02:30:46 aleksandr-VirtualBox apache2[8177]: Das Apache-Fehlerprotokoll enthält möglicherweise weitere Informationen. Jan 11 02:30:46 aleksandr-VirtualBox systemd[1]: apache2.service: Kontrollprozess beendet, Code=exited Status=1 11. Januar 02:30:46 aleksandr-VirtualBox sudo[8171]: pam_unix(sudo:session): Sitzung für Benutzer root geschlossen 11. Januar 02:30:46 aleksandr-VirtualBox systemd[1]: LSB konnte nicht gestartet werden: Apache2-Webserver. -- Betreff: Die Unit apache2.service ist ausgefallen -- Definiert durch: systemd -- Unterstützung: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- – Die Einheit apache2.service ist fehlgeschlagen. -- -- Das Ergebnis ist fehlgeschlagen. 11. Jan 02:30:46 aleksandr-VirtualBox systemd[1]: apache2.service: Einheit ist in den Fehlerzustand gewechselt. 11. Jan 02:30:46 aleksandr-VirtualBox systemd[1]: apache2.service: Fehlgeschlagen mit dem Ergebnis „Exitcode“. 11. Januar 02:33:09 aleksandr-VirtualBox dhclient[792]: DHCPREQUEST von 192.168.56.101 auf enp0s8 an 192.168.56.100 Port 67 (xid=0x204f076f) 11. Januar 02:33:09 aleksandr-VirtualBox dhclient[792]: DHCPACK von 192.168.56.101 von 192.168.56.100 Jan 11 02:33:09 aleksandr-VirtualBox NetworkManager[619]: [1484073189.4253] Adresse 192.168.56.101 Jan 11 02:33:09 aleksandr-VirtualBox NetworkManager[619]: [1484073189.4260] plen 24 (255.255.255.0) Jan 11 02:33:09 aleksandr-VirtualBox NetworkManager[619]: [1484073189.4266] Serverkennung 192.168.56.100 11. Januar 02:33:09 aleksandr-VirtualBox NetworkManager[619]: [1484073189.4273] Leasingzeit 1200 Jan 11 02:33:09 aleksandr-VirtualBox NetworkManager[619]: [1484073189.4279] dhcp4 (enp0s8): Status geändert bound -> bound 11. Januar 02:33:09 aleksandr-VirtualBox dbus[590]: [system] Aktivieren über systemd: Dienstname = "org.freedesktop.nm_dispatcher" Einheit = "dbus-org.freedesktop.nm-dispatcher.service" 11. Jan 02:33:09 aleksandr-VirtualBox systemd[1]: Network Manager Script Dispatcher Service wird gestartet... -- Betreff: Die Einheit NetworkManager-dispatcher.service hat mit dem Start begonnen -- Definiert durch: systemd -- Unterstützung: -- -- Die Einheit NetworkManager-dispatcher.service wurde gestartet. 11. Jan 02:33:09 aleksandr-VirtualBox dhclient[792]: gebunden an 192.168.56.101 – Erneuerung in 559 Sekunden. 11. Januar 02:33:09 aleksandr-VirtualBox dbus[590]: [system] Dienst „org.freedesktop.nm_dispatcher“ erfolgreich aktiviert 11. Jan 02:33:09 aleksandr-VirtualBox systemd[1]: Network Manager Script Dispatcher Service gestartet. -- Betreff: Die Einheit NetworkManager-dispatcher.service ist fertig gestartet -- Definiert durch: systemd -- Unterstützung: -- – Die Einheit NetworkManager-dispatcher.service ist fertig gestartet. -- -- Das Startergebnis ist fertig. 11. Januar 02:33:09 aleksandr-VirtualBox nm-dispatcher[8205]: req:1 'dhcp4-change' [enp0s8]: neue Anfrage (1 Skript) 11. Jan 02:33:09 aleksandr-VirtualBox nm-dispatcher[8205]: req:1 'dhcp4-change' [enp0s8]: Starten Sie die Ausführung geordneter Skripts …
Und wenn systemctl status apache2.service
es angefordert wird:
* apache2.service - LSB: Apache2-Webserver Geladen: geladen (/etc/init.d/apache2; fehlerhaft; Vendor-Vorgabe: aktiviert) Drop-In: /lib/systemd/system/apache2.service.d `-apache2-systemd.conf Aktiv: Fehlgeschlagen (Ergebnis: Exitcode) seit Mittwoch, 11.01.2017, 02:30:46 +08; vor 33 Minuten Dokumentation: man:systemd-sysv-generator(8) Prozess: 8023 ExecStop=/etc/init.d/apache2 stop (Code=beendet, Status=0/ERFOLGREICH) Prozess: 2236 ExecReload=/etc/init.d/apache2 neu laden (Code=beendet, Status=0/ERFOLGREICH) Prozess: 8177 ExecStart=/etc/init.d/apache2 start (Code=beendet, Status=1/FEHLER) 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 1: /etc/apache2/envvars: envvars: nicht gefunden 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 49: /etc/apache2/envvars: envvars: nicht gefunden Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: (2)Keine solche Datei oder kein solches Verzeichnis: AH02291: Auf das Verzeichnis '/etc/apache2/logs/' für das Hauptfehlerprotokoll kann nicht zugegriffen werden Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: AH00014: Konfigurationsprüfung fehlgeschlagen 11. Januar 02:30:46 aleksandr-VirtualBox apache2[8177]: Aktion „configtest“ fehlgeschlagen. 11. Jan 02:30:46 aleksandr-VirtualBox apache2[8177]: Das Apache-Fehlerprotokoll enthält möglicherweise weitere Informationen. Jan 11 02:30:46 aleksandr-VirtualBox systemd[1]: apache2.service: Kontrollprozess beendet, Code=exited Status=1 11. Januar 02:30:46 aleksandr-VirtualBox systemd[1]: LSB konnte nicht gestartet werden: Apache2-Webserver. 11. Jan 02:30:46 aleksandr-VirtualBox systemd[1]: apache2.service: Einheit ist in den Fehlerzustand gewechselt. 11. Jan 02:30:46 aleksandr-VirtualBox systemd[1]: apache2.service: Fehlgeschlagen mit dem Ergebnis „Exitcode“.
Was ist falsch? Wo ist ein Interrupt? Bitte helfen Sie!
Antwort1
Es gibt zwei Fehler:
1.Aus irgendeinem Grund /etc/apache2/envvars
fehlt Ihr:
aus
journalctl -xe
:Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 1: /etc/apache2/envvars: envvars: not found Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 49: /etc/apache2/envvars: envvars: not found Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 1: /etc/apache2/envvars: envvars: not found Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 49: /etc/apache2/envvars: envvars: not found ... Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 1: /etc/apache2/envvars: envvars: not found Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 49: /etc/apache2/envvars: envvars: not found
aus
systemctl status apache2.service
:Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 1: /etc/apache2/envvars: envvars: not found Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 49: /etc/apache2/envvars: envvars: not found
In meinem System hat diese Datei die folgenden Berechtigungen:
$ ls -l /etc/apache2/envvars
-rw-r--r-- 1 root root 1782 мар 19 2016 envvars
Und sein Inhalt ( $ cat /etc/apache2/envvars
) ist:
# envvars - default environment variables for apache2ctl
# this won't be correct after changing uid
unset HOME
# for supporting multiple apache2 instances
if [ "${APACHE_CONFDIR##/etc/apache2-}" != "${APACHE_CONFDIR}" ] ; then
SUFFIX="-${APACHE_CONFDIR##/etc/apache2-}"
else
SUFFIX=
fi
# Since there is no sane way to get the parsed apache2 config in scripts, some
# settings are defined via environment variables and then used in apache2ctl,
# /etc/init.d/apache2, /etc/logrotate.d/apache2, etc.
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
# temporary state file location. This might be changed to /run in Wheezy+1
export APACHE_PID_FILE=/var/run/apache2/apache2$SUFFIX.pid
export APACHE_RUN_DIR=/var/run/apache2$SUFFIX
export APACHE_LOCK_DIR=/var/lock/apache2$SUFFIX
# Only /var/log/apache2 is handled by /etc/logrotate.d/apache2.
export APACHE_LOG_DIR=/var/log/apache2$SUFFIX
## The locale used by some modules like mod_dav
export LANG=C
## Uncomment the following line to use the system default locale instead:
#. /etc/default/locale
export LANG
## The command to get the status for 'apache2ctl status'.
## Some packages providing 'www-browser' need '--dump' instead of '-dump'.
#export APACHE_LYNX='www-browser -dump'
## If you need a higher file descriptor limit, uncomment and adjust the
## following line (default is 8192):
#APACHE_ULIMIT_MAX_FILES='ulimit -n 65536'
## If you would like to pass arguments to the web server, add them below
## to the APACHE_ARGUMENTS environment.
#export APACHE_ARGUMENTS=''
## Enable the debug mode for maintainer scripts.
## This will produce a verbose output on package installations of web server mod ules and web application
## installations which interact with Apache
#export APACHE2_MAINTSCRIPT_DEBUG=1
Sie können es manuell erstellen: sudo nano /etc/apache2/envvars
, fügen Sie den obigen Inhalt ein, speichern Sie ctrl+ ound beenden Sie ctrl+ x.
2.In Ihrem System /etc/apache2/logs
fehlt außerdem der Ordner:
aus
journalctl -xe
:Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: (2)No such file or directory: AH02291: Cannot access directory '/etc/apache2/logs/' for main error log
aus
systemctl status apache2.service
:Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: (2)No such file or directory: AH02291: Cannot access directory '/etc/apache2/logs/' for main error log
Dies ist nicht der Standardprotokollordner. Er wird in Ihrer benutzerdefinierten Konfiguration definiert und muss erstellt werden:
$ sudo mkdir /etc/apache2/logs
Antwort2
Ich habe die .conf-Dateien in „Sites-Available“ gelöscht, die Link-Dateien in „Sites-Enabled“ jedoch nicht.
Jetzt habe ich alle Dateien in Sites-enabled gelöscht
Apache2-Server neu gestartet (sudo service apache2 restart)
hat bei mir funktioniert
hoffe, das hilft jemandem :)
Antwort3
Ich hatte das gleiche Problem. Ich bekam den gleichen Fehler mit sudo service apache2 restart
und lief sudo systemctl status apache2.service
und die rote Linie warFailed to start LSB: Apache2 web server.
Lösung
Führen Sie den folgenden Befehl aus:
sudo apache2ctl configtest
Es wird nach Fehlern gesucht (ich glaube, Syntaxfehler) und dann können Sie den Fehler debuggen.
Antwort4
In meinem Fall mache ich Folgendes:
Deinstallieren und entfernen Sie Apache2
sudo service apache2 stop
sudo apt-get purge apache2
sudo apt-get autoremove
whereis apache2
sudo rm -rf /etc/apache2
Apache2 neu installieren
sudo apt-get install apache2
sudo apache2ctl configtest
Es läuft für mich