| Summary: | в sysvinit не работает stop | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | wd |
| Component: | mini_httpd | Assignee: | Grigory Ustinov <grenka> |
| Status: | NEW --- | QA Contact: | qa-sisyphus |
| Severity: | minor | ||
| Priority: | P5 | CC: | antohami, bozhchenkopa, grenka |
| Version: | unstable | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
|
Description
wd
2026-05-27 18:31:41 MSK
/var/run и /var/lock у вас симлинки на /run и /run/lock, соответственно? да, как было из коробки Подтверждаю воспроизведение на Sisyphus Версии пакетов: mini_httpd-1.30-alt1.1.x86_64 webserver-common-control-1.4-alt1.noarch webserver-common-1.4-alt1.noarch Init-скрипт ищет процесс mini_httpd с признаком --expect-user root, но mini_httpd после старта переключается на пользователя nobody. Из-за этого start-stop-daemon не находит процесс при stop, и скрипт ошибочно сообщает что сервис не запущен, хотя он работает. Нужно либо убрать --expect-user root из скрипта, либо заменить на --expect-user nobody Убедиться, что ожидается именно пользователь root: # grep -n "expect-user" /etc/rc.d/init.d/mini_httpd 28: start_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root -- mini_httpd -i "$PIDFILE" $HTTPD_OPTS 34: stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root mini_httpd 46: stop_daemon --expect-user root -HUP mini_httpd 62: status --pidfile "$PIDFILE" --expect-user root mini_httpd Посмотреть реального пользователя процесса: # ps -eo user,pid,cmd | grep -v grep | grep mini_httpd nobody 1633 /bin/mini_httpd -i /var/run/mini_httpd.pid -d /var/www/html -p 80 -h localhost Временное решение - отредактировать инит-скрипт самостоятельно: # sed -i.bak 's/--expect-user root/--expect-user nobody/g' /etc/rc.d/init.d/mini_httpd && systemctl daemon-reload После этого, start и stop будут работать корректно |