Я у меня есть небольшой блок Atom, на котором я запускаю Xubuntu (18.04.3 LTS Ubuntu с Xfce), и у меня есть lighttpd, и я собираюсь настроить номер порта в файле conf (чтобы избежать столкновения с Apache на порту 80) .
Я могу запустить lighttpd с помощью 'service lighttpd start', но когда я выполняю 'service --status-all', lighttpd не отображается (как + или -). Я могу ps и посмотреть процесс и Я могу netstat и видеть, что мой порт работает (и я могу перейти к этому порту и увидеть свою индексную страницу).
Lighttpd не должен отображаться как --status-all службы, если его можно запустить с помощью команды службы ?
Есть какая-то обстановка или место что --status-all извлекает информацию о настроенной службе? (где-то текстовая таблица или что-то в этом роде)?
У меня есть работающая конфигурация, но теперь я бы хотел: а) заставить его вести себя как сервис (включая отображение в запросах статуса) б) Получите автозапуск с машиной
Так чего мне не хватает, чтобы это произошло?
В Ubuntu (и, вероятно, других дистрибутивах, использующих systemd) двоичный файл службы
является помощником, который запускает сценарий инициализации System V (из /etc/init.d
) или системный блок . Согласно странице руководства для двоичного файла службы :
Существование модуля systemd с тем же именем, что и у сценария в /etc/init.d, приведет к тому, что модуль будет иметь приоритет над init. d.
При установке lighttpd
он включает в себя как сценарий инициализации System V, так и модуль systemd:
ubuntu@primary:~$ dpkg -S /lib/systemd/system/lighttpd.service
lighttpd: /lib/systemd/system/lighttpd.service
ubuntu@primary:~$ dpkg -S /etc/init.d/lighttpd
lighttpd: /etc/init.d/lighttpd
В вашем случае происходит то, что вы фактически запустили модуль systemd. Двоичный файл службы
не показывает статус для модулей systemd.
Вы можете увидеть его в списке status
или list-units
для подкоманды для systemctl
с помощью:
sudo systemctl list-units
Вы также можете получить статус отдельного устройства, используя:
sudo systemctl status lighttpd