3

Я делаю шатер с Raspberry Pi, где изображения для шатра находятся на USB-накопителе, а файл Python, который является шатер, находится на самом Raspberry Pi (RPi Zero W работает Raspbian). Я пытаюсь использовать systemd и файл .services в этом руководстве, чтобы запустить выделение сразу после загрузки Pi.

Тем не менее, я думаю, что программа работает до подключения USB или чего-то еще, потому что журналы говорят, что файлы на USB не могут быть найдены. Как заставить файл .service ждать, пока USB не будет смонтирован, прежде чем он запустит программу python?

Вот программа myscript.service:

[Unit]
Description=My Script Service
After=multi-user.target

[Service]
Type=idle
ExecStart=/usr/bin/python3 /home/pi/Documents/base.py > /home/pi/Documents/myscript.log 2>&1

[Install]
WantedBy=multi-user.target

USB, который я хочу ждать,

/media/pi/0850-9F0E/

Я слышал что-то вроде RequiresMountsFor работает, но я не знаю, как его использовать. Я новичок в технической части Linux.

1 ответ1

0

Мне потребовалось некоторое время, чтобы понять, но эта ветка дала мне ответ. Используйте systemctl status чтобы показать устройство. В вашем случае это будет что-то вроде media-pi-0850-9F0E.mount .

Просто скажите вашему сервису запускаться после того, как он смонтирован:

After=multi-user.target media-pi-0850-9F0E.mount

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .