Nginx не запускается с момента обновления Ubuntu (16.04)

я недавно обновил свой сервер Ubuntu до версии 16.04. С тех пор я не могу запустить службу сервер nginx.

результаты service nginx restart:

Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.

что говорит мой системный журнал (cat /var/log/syslog):

May 20 17:03:53: Stopped A high performance web server and a reverse proxy server.
May 20 17:03:53: Starting A high performance web server and a reverse proxy server...
May 20 17:03:53: nginx.service: Failed at step EXEC spawning /usr/sbin/nginx: No such file or directory
May 20 17:03:53: nginx.service: Control process exited, code=exited status=203
May 20 17:03:53: Failed to start A high performance web server and a reverse proxy server.
May 20 17:03:53: nginx.service: Unit entered failed state.
May 20 17:03:53: nginx.service: Failed with result 'exit-code'.

результаты cat /lib/systemd/system/nginx.service:

# Stop dance for nginx
# =======================
#
# ExecStop sends SIGSTOP (graceful stop) to the nginx process.
# If, after 5s (--retry QUIT/5) nginx is still running, systemd takes control
# and sends SIGTERM (fast shutdown) to the main process.
# After another 5s (TimeoutStopSec=5), and if nginx is alive, systemd sends
# SIGKILL to all the remaining processes in the process group (KillMode=mixed).
#
# nginx signals reference doc:
# http://nginx.org/en/docs/control.html
#
[Unit]
Description=A high performance web server and a reverse proxy server
After=network.target

[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t -q -g 'daemon on; master_process on;'
ExecStart=/usr/sbin/nginx -g 'daemon on; master_process on;'
ExecReload=/usr/sbin/nginx -g 'daemon on; master_process on;' -s reload
# Use TERM instead of QUIT to prevent Nginx from leaving stale Unix socket and failing the next start (https://trac.nginx.org/nginx/ticket/753)
ExecStop=-/sbin/start-stop-daemon --quiet --stop --retry TERM/5 --pidfile /run/nginx.pid
# Give Passenger a chance to clean up before being killed by systemd.
ExecStop=/bin/sleep 1
TimeoutStopSec=5
KillMode=mixed

[Install]
WantedBy=multi-user.target

там действительно нет файла /usr/sbin/nginx, так что я пробовал apt install nginx, но вот результат :

Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 nginx : Depends: nginx-core (>= 1.10.0-0ubuntu0.16.04.4) but it is not going to be installed or
                  nginx-full (>= 1.10.0-0ubuntu0.16.04.4) but it is not going to be installed or
                  nginx-light (>= 1.10.0-0ubuntu0.16.04.4) but it is not going to be installed or
                  nginx-extras (>= 1.10.0-0ubuntu0.16.04.4) but it is not going to be installed
         Depends: nginx-core (< 1.10.0-0ubuntu0.16.04.4.1~) but it is not going to be installed or
                  nginx-full (< 1.10.0-0ubuntu0.16.04.4.1~) but it is not going to be installed or
                  nginx-light (< 1.10.0-0ubuntu0.16.04.4.1~) but it is not going to be installed or
                  nginx-extras (< 1.10.0-0ubuntu0.16.04.4.1~) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

обновление 1 :

Résults из systemctl status nginx.service после запуска updatedb:

● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Sat 2017-05-20 17:41:49 CEST; 1min 30s ago
     Docs: man:nginx(8)
  Process: 11212 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=1/FAILURE)
  Process: 11210 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)

May 20 17:41:48 ns3031916.ip-178-32-217.eu nginx[11212]: nginx: [emerg] listen() to [::]:80, backlog 511 failed (98: Address already in use)
May 20 17:41:48 ns3031916.ip-178-32-217.eu nginx[11212]: nginx: [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in use)
May 20 17:41:48 ns3031916.ip-178-32-217.eu nginx[11212]: nginx: [emerg] listen() to [::]:80, backlog 511 failed (98: Address already in use)
May 20 17:41:49 ns3031916.ip-178-32-217.eu nginx[11212]: nginx: [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in use)
May 20 17:41:49 ns3031916.ip-178-32-217.eu nginx[11212]: nginx: [emerg] listen() to [::]:80, backlog 511 failed (98: Address already in use)
May 20 17:41:49 ns3031916.ip-178-32-217.eu nginx[11212]: nginx: [emerg] still could not bind()
May 20 17:41:49 ns3031916.ip-178-32-217.eu systemd[1]: nginx.service: Control process exited, code=exited status=1
May 20 17:41:49 ns3031916.ip-178-32-217.eu systemd[1]: Failed to start A high performance web server and a reverse proxy server.
May 20 17:41:49 ns3031916.ip-178-32-217.eu systemd[1]: nginx.service: Unit entered failed state.
May 20 17:41:49 ns3031916.ip-178-32-217.eu systemd[1]: nginx.service: Failed with result 'exit-code'.

как новичок, я очень запутался в этом беспорядке, и мне действительно нужна помощь.

большое спасибо за ваше время.

20
задан William Mai
18.01.2023 9:47 Количество просмотров материала 3263
Распечатать страницу

1 ответ

проблема решена here:

https://askubuntu.com/questions/917147/nginx-wont-start-since-ubuntu-upgrade-16-04/917152#917152

копировать / вставить ответ Томаса Уорда, который решил мою проблему:

таким образом, у вас есть две вещи, которые находятся в конфликте и привели его, кажется к двоичным файлам nginx, уходящим каким-то образом: Xenial версия репозитория, и nginx PPA. Как сопровождающий обоих, позвольте мне объяснить конфликт.

в Xenial мы выпустили 1.10.0 сразу после выпуска в качестве обновления. Этот обновление подтолкнуло нас к "стабильной" ветке, но не динамически загружаемые модули, созданные и доступные. Это было связано время, но и строить конфликты, которые возникли во время испытаний. Мы в конце концов получил поддержку динамического модуля, в пикантности.

в PPA мы всегда клонировали напрямую из Debian. Это значит, мы всегда имел поддержку 'динамического модуля' Debian, который конфликтует с в Xenial пакеты и привело в некоторых установка и обновление рознь.


здесь есть небольшой конфликт - вы не можете смешивать и сочетать nginx-core (который является ароматом по умолчанию, установленным для nginx пакета в В Ubuntu) и ППД, как это иногда делает вещи disappearify. Тот проблема в том, что нам нужно удалить существующий пакет Ubuntu а затем установить только ППА.

чтобы решить эту проблему, вы будете сначала нужно создать резервную копию nginx конфигурации, которые необходимо сохранить для сайтов. То есть сделать копию вашего /etc/nginx/ sites-available / каталог где-то еще (даже в домашний каталог вашего пользователя в порядке, нам просто нужна копия сайта настойки.) Кроме того, нам понадобится резервная копия данных вашего сайта, поэтому скопируйте это где-нибудь еще (не в стандартном docroot, поэтому это не испортится).

после того как вы сделаете копию, вам придется удалить существующую nginx пакеты. Это можно сделать с помощью следующей команды:

sudo apt-get remove nginx nginx-common nginx-doc nginx-core nginx-full nginx-extras nginx-light

после завершения, запустите sudo apt-get update опять как раз сделать конечно, у нас есть самые современные номера версий.

установите nginx от PPA -sudo apt-get install nginx nginx-full nginx-common должны сделать это.

вы больше не должны получать не удалось начать ошибки. Убедиться конфигурации вашего сайта все еще на месте, и не получили перезаписанный. Если они сделали, восстановить из резервных копий мы взял ранее сайт config и данные сайта. В противном случае, все готово.

0
отвечен William Mai 2023-01-19 17:35

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх