Назад | Перейти на главную страницу

Сохранение переменных / etc / среды для неинтерактивного пользователя

Тестирование ОС: RHEL7

Требуемые ОС: RHEL, производные инструменты и AIX

У меня есть пользователь, созданный следующим образом:

sudo groupadd madt
sudo useradd -r -g madt -s /bin/false madt

Этот пользователь используется в systemd обслуживание следующим образом:

[Unit]
Description=MicroStrategy Mobile Access Distribution Tool
After=syslog.target

[Service]
User=madt
ExecStart=/usr/bin/java -jar /opt/pandera/mobile-registration/mobile-access-distribution-tool-1.0.0.jar --spring.config.location=/opt/pandera/mobile-registration/
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

Приложение Java требует наличия переменной среды. Я установил переменную в /etc/environment и подтвердил, что он работает для root и всех других интерактивных пользователей.

Как я могу заставить пользователя madt распознавать мою переменную окружения?

Ты можешь использовать EnvironmentFile строку в вашем модуле systemd.

Например

EnvironmentFile=/etc/environment

Затем Systemd прочитает ваш файл и вставит переменные из файла в среду вашей программы.

Если вам нужно установить только одну переменную среды только для этого системного блока, просто используйте

Environment=VERBOSITY_LEVEL=1