Я установил runit-2.1.2
на свой ящик ubuntu,
И я создал очень простую потоковую
службу, как показано ниже,
mkdir -p /etc/sv/streaming/
echo 'echo "streaming" >> /var/log/streaming.log' > /etc/sv/streaming/run
Затем,
создана символическая ссылка на / etc / service / streaming
,
ln -s /etc/sv/streaming /etc/service/streaming
Как я вижу ниже, символическая ссылка создана,
root@moby:/# ll /etc/service/streaming
lrwxrwxrwx 1 root root 17 Dec 2 00:27 /etc/service/streaming -> /etc/sv/streaming/
Ожидал 5 секунд, ничего не происходит.
Я также пробовал вручную, как показано ниже,
root@moby:/# sv status /etc/service/streaming
warning: /etc/service/streaming: unable to open supervise/ok: file does not exist
Я использую ubuntu 16.04
root@moby:/# cat /etc/*release | grep RELEASE
DISTRIB_RELEASE=16.04
Мне кажется, что runit
вообще не работает.
root@moby:/# ps -ef | grep runsvdir
root 1976 7 0 00:58 ? 00:00:00 grep --color=auto runsvdir
Я не знаю сценарий для запуска runit,
root@moby:/# service runit start
runit: unrecognized service
или
root@moby:/# service sv status
sv: unrecognized service
Могут ли пользователи runit
помочь мне узнать, что здесь происходит?
Я решил эту проблему, добавив следующие файлы, вдохновленные конфигурацией для ранее запущенного сервера runit
в Ubuntu 16.04 LTS:
vagrant @ vagrant: / usr / bin $ ls -l runvdir-start *
-rwxr-xr-x 1 root root 544 19 августа 05:04 runvdir-start
содержимое:
#!/bin/sh
PATH=/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin
exec env - PATH=$PATH \
runsvdir -P /etc/service 'log: ...........................................................................................................................................................................................................................................................................................................................................................................................................'
и
vagrant @ vagrant: / usr / bin $ ls -l /lib/systemd/system/runit.service
-rw-r - r-- 1 корень root 143 19 августа 05:07 /lib/systemd/system/runit.service
[Unit]
Description=Runit service supervision
[Service]
ExecStart=/usr/bin/runsvdir-start
Restart=always
[Install]
WantedBy=multi-user.target
Вы можете подтвердить пути с помощью , который запускает vdir
, и это после apt-get install runit
.
У меня была такая же проблема на ubuntu 18.04. При выполнении команды «sv status dir_name»
невозможно открыть supervise / ok: файл не существует
Runvdir также не отображается в выводе «grep». Я решил проблему, установив пакет runit-systemd . Используйте следующую команду для установки в системах Ubuntu и Debian
sudo apt install runit-systemd
Я нашел это решение из другого вопроса askubuntu
Надеюсь, это поможет