У меня довольно простой тестовый сервис. В конечном счете, я буду запускать демона node
, но пока отлаживаю эту проблему с помощью env
...
$ systemctl cat http-endpoints
# /etc/systemd/system/http-endpoints.service
[Unit]
Description=HTTP endpoints for triggering events
After=network.target
[Service]
Type=simple
;PassEnvironment=RUNTIME_DIRECTORY
RuntimeDirectory=endpoints
Environment=TEST=asdf
ExecStart=/usr/bin/env
[Install]
WantedBy=default.target
Я пытаюсь использовать функцию RuntimeDirectory=
systemd. Я ожидаю переменную окружения RUNTIME_DIRECTORY
.
Она не устанавливается.
systemd[1]: Started HTTP endpoints for triggering events.
env[26794]: LANG=en_US.UTF-8
env[26794]: PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
env[26794]: INVOCATION_ID=fb24db240f454722b847ab7cefd5eb59
env[26794]: JOURNAL_STREAM=9:8063338
env[26794]: TEST=asdf
Я попробовал несколько вещей.
Если я установил ее вручную, Environment=RUNTIME_DIRECTORY=/run/endpoints
, это работает. Но эта конфигурация не обязательна.
Каталог /run/endpoints
создается должным образом (и быстро удаляется, потому что env
выходит, но это не проблема).
$ systemd --version
systemd 237
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid