Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
1 / 1 / 0
Регистрация: 11.08.2013
Сообщений: 64

Bash - нет такого процесса. Пишет при попытке перезагрузить nginx на ubuntu

29.07.2015, 11:24. Показов 4208. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
С конфигурационными файлами все в порядке.

Bash
1
2
3
root@maxserver:~# nginx -c /etc/nginx/nginx.conf -t**
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful


При попытке перечитать конфиг файл пишет такое.

Bash
1
2
root@maxserver:~# kill -HUP `cat /var/run/nginx.pid`
-bash: kill: (5289) - No such process


Если перезагружать то пишет fail

Bash
1
2
3
root@maxserver:~# sudo /etc/init.d/nginx restart
 * Restarting nginx nginx                                [fail] 
root@maxserver:~#

В чем может быть причина? Почему он сообщает, что bash - нет такого процесса?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.07.2015, 11:24
Ответы с готовыми решениями:

Windows Server 2003: Dropbox, при попытке подключения к интернету для синхронизации пишет, что нет соединенияи
Доброго времени суток,уважаемые форумчане! Прошу помощи в разрешении проблемы. Имеется компьютер с ОС Win 2003 Server на...

Python3. Пишет, что нет такого модуля
У меня macOS. В начало своего кода я добавил from colorama import init from colorama import Fore, Back, Style и когда запускаешь код...

В базе есть логин и пароль, но скрипт пишет, что такого пользователя нет
Доброго времени суток. Пишу скрипт авторизации (новичок), и столкнулся с проблемой. Не могу понять, где ошибка в sql запросе. В базе есть...

26
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
29.07.2015, 12:15
А сравните
Bash
1
2
pgrep -l ngnix 
cat /var/run/nginx.pid
0
1 / 1 / 0
Регистрация: 11.08.2013
Сообщений: 64
29.07.2015, 12:36  [ТС]
Bash
1
2
3
4
root@maxserver:/# pgrep -l ngnix
root@maxserver:/# cat /var/run/nginx.pid
5289
root@maxserver:/#

pgrep -l ngnix - не выдает идентификатор процесса, а
cat /var/run/nginx.pid - идентификатор процесса отображает

Что это может значить?
0
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
29.07.2015, 14:39
Цитата Сообщение от tfox Посмотреть сообщение
pgrep -l ngnix - не выдает идентификатор процесса
значит что такого процесса нет. Попробуйте
Bash
1
grep -h '[n]gnix' <(ps aux) <(service --status-all 2>&1)
0
1 / 1 / 0
Регистрация: 11.08.2013
Сообщений: 64
29.07.2015, 16:34  [ТС]
Цитата Сообщение от Marinero Посмотреть сообщение
grep -h '[n]gnix' <(ps aux) <(service --status-all 2>&1)
Возвращает пустую строку.

Добавлено через 18 секунд
Цитата Сообщение от Marinero Посмотреть сообщение
grep -h '[n]gnix' <(ps aux) <(service --status-all 2>&1)
Возвращает пустую строку.

Добавлено через 7 минут
Code
1
2
3
root@slovarik:/# grep -h '[n]gnix' <(ps aux) <(service --status-all 2>&1)
 
root@slovarik:/#
Ничего не понимаю.
Nginx вообще работает? Как заставить nginx перезагружаться без ошибок?
0
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
29.07.2015, 20:11
Bash
1
2
sudo service nginx status
grep -h '[n]ginx' <(ps aux) <(service --status-all 2>&1)
0
1 / 1 / 0
Регистрация: 11.08.2013
Сообщений: 64
29.07.2015, 22:27  [ТС]
Цитата Сообщение от Marinero Посмотреть сообщение
1
2
sudo service nginx status
grep -h '[n]ginx' <(ps aux) <(service --status-all 2>&1)
Выполнил две команды.

Code
1
2
3
4
5
6
7
8
9
10
root@maxserver:/# sudo service nginx status
 * nginx is not running
root@maxserver:/# grep -h '[n]ginx' <(ps aux) <(service --status-all 2>&1)
www-data 11700  0.0  0.3 3465836 31896 ?       S    Jul28   0:14 nginx: worker process
www-data 11701  0.0  0.4 3465836 32364 ?       S    Jul28   0:13 nginx: worker process
www-data 11702  0.0  0.3 3465836 31940 ?       S    Jul28   0:14 nginx: worker process
www-data 11703  0.0  0.3 3465836 31916 ?       S    Jul28   0:15 nginx: worker process
www-data 11704  0.0  0.3 3465836 25504 ?       S    Jul28   0:00 nginx: cache manager process
 [ - ]  nginx
root@maxserver:/#
Насколько я понимаю.
Первая команда сообщает, что nginx не запущен. Но сайты при этом работают.
Вторая команда сообщает, что какие то процессы nginx работают.

Я ничего не понимаю. Nginx вроде работает и вроде не работает?

Добавлено через 3 минуты
Code
1
2
3
4
5
root@maxserver:/# sudo service nginx start
root@maxserver:/# sudo service nginx stop
root@maxserver:/# sudo service nginx restart
 * Restarting nginx nginx         [fail] 
root@maxserver:/#
Получается говоришь nginx старт он молчит. Говоришь стоп он тоже молчит. Говоришь рестарт он отвечает fail

Я в шоке. Как его поднять?
0
Диванный эксперт
Эксперт С++
 Аватар для Max Dark
2550 / 2064 / 971
Регистрация: 09.10.2013
Сообщений: 4,793
Записей в блоге: 4
29.07.2015, 22:29
Хм... А если
Bash
1
sudo systemctrl status nginx
0
1 / 1 / 0
Регистрация: 11.08.2013
Сообщений: 64
29.07.2015, 22:32  [ТС]
Цитата Сообщение от Cra3y Посмотреть сообщение
sudo systemctrl status nginx
Пишет вот это.

Code
1
2
3
root@:maxserver/# sudo systemctrl status nginx
sudo: systemctrl: command not found
root@maxserver:/#
0
 Аватар для Amet13
1362 / 1074 / 110
Регистрация: 16.03.2012
Сообщений: 4,543
29.07.2015, 23:58
Цитата Сообщение от tfox Посмотреть сообщение
systemctrl
systemctl

Bash
1
tail /var/log/nginx/error.log
0
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
30.07.2015, 00:00
Цитата Сообщение от tfox Посмотреть сообщение
Я ничего не понимаю. Nginx вроде работает и вроде не работает
nginx запущен, но не как сервис, а как процесс.
0
1 / 1 / 0
Регистрация: 11.08.2013
Сообщений: 64
30.07.2015, 09:27  [ТС]
Marinero, а как его запустить в качестве сервиса?
0
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
30.07.2015, 09:35
Давайте посмотрим
Bash
1
cat /etc/init.d/nginx
0
1 / 1 / 0
Регистрация: 11.08.2013
Сообщений: 64
30.07.2015, 10:00  [ТС]
Цитата Сообщение от Marinero Посмотреть сообщение
Давайте посмотрим
Код BashВыделить код
1
cat /etc/init.d/nginx

Выполнил, получается



Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
root@maxserver:~# cd /
root@maxserver:/# cat /etc/init.d/nginx
#!/bin/sh
 
### BEGIN INIT INFO
# Provides:   nginx
# Required-Start:    $local_fs $remote_fs $network $syslog $named
# Required-Stop:     $local_fs $remote_fs $network $syslog $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the nginx web server
# Description:       starts nginx using start-stop-daemon
### END INIT INFO
 
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/nginx
NAME=nginx
DESC=nginx
 
# Include nginx defaults if available
if [ -r /etc/default/nginx ]; then
    . /etc/default/nginx
fi
 
test -x $DAEMON || exit 0
 
. /lib/init/vars.sh
. /lib/lsb/init-functions
 
PID=$(awk -F'[ \t;]+' '/[^#]pid/ {print $2}' /etc/nginx/nginx.conf)
if [ -z "$PID" ]
then
    PID=/run/nginx.pid
fi
 
# Check if the ULIMIT is set in /etc/default/nginx
if [ -n "$ULIMIT" ]; then
    # Set the ulimits
    ulimit $ULIMIT
fi
 
#
# Function that starts the daemon/service
#
do_start()
{
    # Return
    #   0 if daemon has been started
    #   1 if daemon was already running
    #   2 if daemon could not be started
    start-stop-daemon --start --quiet --pidfile $PID --exec $DAEMON --test > /dev/null \
        || return 1
    start-stop-daemon --start --quiet --pidfile $PID --exec $DAEMON -- \
        $DAEMON_OPTS 2>/dev/null \
        || return 2
}
 
test_nginx_config() {
    $DAEMON -t $DAEMON_OPTS >/dev/null 2>&1
}
 
#
# Function that stops the daemon/service
#
do_stop()
{
    # Return
    #   0 if daemon has been stopped
    #   1 if daemon was already stopped
    #   2 if daemon could not be stopped
    #   other if a failure occurred
    start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PID --name $NAME
    RETVAL="$?"
 
    sleep 1
    return "$RETVAL"
}
 
#
# Function that sends a SIGHUP to the daemon/service
#
do_reload() {
    start-stop-daemon --stop --signal HUP --quiet --pidfile $PID --name $NAME
    return 0
}
 
#
# Rotate log files
#
do_rotate() {
    start-stop-daemon --stop --signal USR1 --quiet --pidfile $PID --name $NAME
    return 0
}
 
#
# Online upgrade nginx executable
#
# "Upgrading Executable on the Fly"
# http://nginx.org/en/docs/control.html
#
do_upgrade() {
    # Return
    #   0 if nginx has been successfully upgraded
    #   1 if nginx is not running
    #   2 if the pid files were not created on time
    #   3 if the old master could not be killed
    if start-stop-daemon --stop --signal USR2 --quiet --pidfile $PID --name $NAME; then
        # Wait for both old and new master to write their pid file
        while [ ! -s "${PID}.oldbin" ] || [ ! -s "${PID}" ]; do
            cnt=`expr $cnt + 1`
            if [ $cnt -gt 10 ]; then
                return 2
            fi
            sleep 1
        done
        # Everything is ready, gracefully stop the old master
        if start-stop-daemon --stop --signal QUIT --quiet --pidfile "${PID}.oldbin" --name $NAME; then
            return 0
        else
            return 3
        fi
    else
        return 1
    fi
}
 
case "$1" in
    start)
        [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
        do_start
        case "$?" in
            0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
            2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
        esac
        ;;
    stop)
        [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
        do_stop
        case "$?" in
            0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
            2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
        esac
        ;;
    restart)
        log_daemon_msg "Restarting $DESC" "$NAME"
 
        # Check configuration before stopping nginx
        if ! test_nginx_config; then
            log_end_msg 1 # Configuration error
            exit 0
        fi
 
        do_stop
        case "$?" in
            0|1)
                do_start
                case "$?" in
                    0) log_end_msg 0 ;;
                    1) log_end_msg 1 ;; # Old process is still running
                    *) log_end_msg 1 ;; # Failed to start
                esac
                ;;
            *)
                # Failed to stop
                log_end_msg 1
                ;;
        esac
        ;;
    reload|force-reload)
        log_daemon_msg "Reloading $DESC configuration" "$NAME"
 
        # Check configuration before reload nginx
        #
        # This is not entirely correct since the on-disk nginx binary
        # may differ from the in-memory one, but that's not common.
        # We prefer to check the configuration and return an error
        # to the administrator.
        if ! test_nginx_config; then
            log_end_msg 1 # Configuration error
            exit 0
        fi
 
        do_reload
        log_end_msg $?
        ;;
    configtest|testconfig)
        log_daemon_msg "Testing $DESC configuration"
        test_nginx_config
        log_end_msg $?
        ;;
    status)
        status_of_proc -p $PID "$DAEMON" "$NAME" && exit 0 || exit $?
        ;;
    upgrade)
        log_daemon_msg "Upgrading binary" "$NAME"
        do_upgrade
        log_end_msg 0
        ;;
    rotate)
        log_daemon_msg "Re-opening $DESC log files" "$NAME"
        do_rotate
        log_end_msg $?
        ;;
    *)
        echo "Usage: $NAME {start|stop|restart|reload|force-reload|status|configtest|rotate|upgrade}" >&2
        exit 3
        ;;
esac
 
:
root@maxserver:/#
0
 Аватар для Amet13
1362 / 1074 / 110
Регистрация: 16.03.2012
Сообщений: 4,543
30.07.2015, 10:02
Почему вы наотрез отказываетесь смотреть логи? Религия не позволяет?
0
1 / 1 / 0
Регистрация: 11.08.2013
Сообщений: 64
30.07.2015, 10:27  [ТС]
Цитата Сообщение от Amet13 Посмотреть сообщение
Почему вы наотрез отказываетесь смотреть логи? Религия не позволяет?
В этих логах, ничего полезного я не увидел. В основном там спам или попытки брут-форса к PHPmyAdmin.
И еще в логах есть следы Вордпресса. Wordpress пытается запустить свой стандартный скрипт "крон", который проверяет наличие обновлений. Но получает в ответ 404 ошибку.
Думаю, что все это не имеет прямого отношения к nginx, который не хочет стартовать как сервис.

access_log /var/log/nginx/access.log;


error_log /var/log/nginx/error.log;
0
1 / 1 / 0
Регистрация: 11.08.2013
Сообщений: 64
30.07.2015, 10:33  [ТС]
access_log /var/log/nginx/access.log;

error_log /var/log/nginx/error.log;
Вложения
Тип файла: docx access.docx (21.8 Кб, 1 просмотров)
Тип файла: docx error.docx (21.7 Кб, 1 просмотров)
0
1 / 1 / 0
Регистрация: 11.08.2013
Сообщений: 64
30.07.2015, 11:07  [ТС]
Еле добавил эти логи. Зачем на айтишном форуме такие жесткие ограничения в 15 000 символов? Людям же надо как то логи выкладывать.

Добавлено через 31 минуту
Просматривал логи. Заметил такую закономерность.
При выполнении следующих команд.

Code
1
2
3
4
5
6
7
8
9
Last login: Thu Jul 30 09:57:41 2015 from 154.112.153.137
root@maxserver:~# nginx -c /etc/nginx/nginx.conf -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
root@maxserver:~# kill -HUP `cat /var/run/nginx.pid`
-bash: kill: (5289) - No such process
root@maxserver:~# sudo /etc/init.d/nginx restart
 * Restarting nginx nginx     [fail] 
root@maxserver:~#
В access_log ничего не добавляется. Но вот в error_log пишутся такие строки:

Code
1
2
3
4
5
6
2015/07/30 10:39:58 [emerg] 7127#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2015/07/30 10:39:58 [emerg] 7127#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2015/07/30 10:39:58 [emerg] 7127#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2015/07/30 10:39:58 [emerg] 7127#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2015/07/30 10:39:58 [emerg] 7127#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2015/07/30 10:39:58 [emerg] 7127#0: still could not bind()
Наверное из-за этих ошибок, я не могу перезагрузить nginx или перечитать конфиг.
0
 Аватар для Amet13
1362 / 1074 / 110
Регистрация: 16.03.2012
Сообщений: 4,543
30.07.2015, 11:26
Лучший ответ Сообщение было отмечено tfox как решение

Решение

Цитата Сообщение от tfox Посмотреть сообщение
Зачем на айтишном форуме такие жесткие ограничения в 15 000 символов?
Затем, что никто не будет читать эти 15000 символов.
Bash
1
2
man tail
man grep
Попробуйте сделать все по порядку.
Для начала проверьте кто слушает 80 порт:
Bash
1
2
lsof -i :80 или
netstat -tulpan | grep ":80"
Смотрим запущенные процессы nginx:
Bash
1
pgrep nginx -l
если выводятся процессы, то кикайте их:
Bash
1
pkill nginx
проверяете дальше, остались ли запущенные процессы:
Bash
1
pgrep nginx -l
если остались, убивайте через kill -9, иначе идем дальше.
После того, как убиты процессы nginx смотрим состояние:
Bash
1
2
3
service nginx status или
systemctl status nginx.service (я не в курсе что там сейчас в убунте с systemd)
nginx -t
Если статус показывает, что nginx не запущен и нет ошибок в конфиге, то запускаем его:
Bash
1
2
service nginx start или
systemctl start nginx.service
Параллельно в другой терминальной сессии смотрим логи:
Bash
1
tail -f /var/log/nginx/error.log
Если перезапуск сервиса пишет ок и в логах ошибок нет, проверяем слушает ли nginx порты:
Bash
1
2
lsof -i :80
lsof -i 443 если настроены виртхосты для SSL
либо через netstat:
Bash
1
2
netstat -tulpan | grep ":80"
netstat -tulpan | grep ":443"
1
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
30.07.2015, 12:38
А покажите
Bash
1
awk -F'[ \t;]+' '/[^#]pid/ {print $2}' /etc/nginx/nginx.conf
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.07.2015, 12:38
Помогаю со студенческими работами здесь

При попытке установки ХР в разделе форматирования пишет диски не доступны.
При попытке установки ХР в разделе форматирования пишет диски не доступны. Менял шлейф толку ноль, тыкал оперативку так же нечего....

При включение компьютера звука нет, нажимаю перезагрузить звук появляется.
С недавнего времени появились проблемы со звуком. При включение компьютера звука нет, нажимаю перезагрузить звук появляется. (либо...

Программы самоудаляются. Но при попытке установить их пишет, что уже установлена
Проблема такая, программы самоудаляются. Но при попытке установить их пишет, что уже установлена. Папки так же удаляются. Что делать??

Вытяжка Gunter&Hauer Agnessa60RW, пишет "Err" при попытке открыться
Вытяжка Gunter&amp;Hauer Agnessa60RW Проблема такая: включая движок, либо просто нажав кнопку открытия &quot;двери&quot;(по другому не знаю...

При попытке переустановки пишет exiting pxe rom и ничего не происходит
Ребят проблема,при попытке переустановить виндовс с 8 на 7 (через флешку) ставя легаси в биосе.началась загрузка виндовс 7 и в пунктах где...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru