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

Я хочу транслировать видео с Raspberry Pi с помощью USB-камеры, используя mjpg-streamer . Вот командная строка для запуска его из оболочки bash:

./mjpg_streamer  -i "./input_uvc.so" -o "./output_http.so -w ./www -p 8000"

Это прекрасно работает.

Я создал служебный файл /lib/systemd/system/mjpg-streamer.service :

[Unit]
Description=USB camera streaming service
Requires=network-online.target
After=network-online.target

[Service]
Environment=LD_LIBRARY_PATH=/home/pi/mjpg-streamer
EnvironmentFile=./mjpg-streamer.conf
ExecStart=/home/pi/mjpg-streamer/mjpg_streamer ${ARG1} ${ARG2}
StandardOutput=null
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

Вот мой файл среды / lib / systemd / system / mjpg-streamer.conf :

ARG1=-i "./input_uvc.so" 
ARG2=-o "./output_http.so -w ./www -p 8000"

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

1
задан 28 June 2019 в 17:00

1 ответ

В итоге я пошел по пути, который предложил Томас Уорд.

ExecStart=/usr/local/bin/mjpg_streamer -i 'input_uvc.so -d /dev/video0' -o 'output_http.so -w /home/pi/mjpg-streamer/www -p 8000'
1
ответ дан 28 June 2019 в 17:00

Другие вопросы по тегам:

Похожие вопросы: