Запуск systemd unit когда файлы в sys станут доступны

Настройки отображения темы Показывать по сообщений с сортировкой .
Выводить , отправленные .
Одна страница
Распечатать
4X_Pro
Создатель сайта
Всего сообщений: 4327
Зарегистрирован: 9 дек. 2015 г., 19:20
Рейтинг пользователя: 2275

0
#1

Кто-нибудь знает, что нужно прописать в systemd unit, чтобы он запускался тогда, когда будут созданы все необходимые файлы в /sys/class/drm/card-* ( в частности, нужен файл /sys/class/drm/card0-eDP-1/status, чтобы включать/выключать внутренниё дисплей ноутбука)? Пытался прописать что-нибудь вроде ConditionPathIsReadWrite=/sys/class/drm — не помогло, прописать Requires=udev.service (т.к. именно udev создаёт все необходимое, если правильно понимаю) — тоже нет. Перемещение в WantedBy=multi-user.target тоже не помогает. В итоге сейчас скрипт запускается с костылём sleep 1 в начале, и тогда всё проходит нормально, но хотелось бы найти нормальное решение.


Ребята, давайте жить спокойно!


4X_Pro
Создатель сайта
Всего сообщений: 4327
Зарегистрирован: 9 дек. 2015 г., 19:20
Рейтинг пользователя: 2275

0
#2

Как выяснислось, всё решалось достаточно просто: нужно в ConditionPathIsReadWrite было указывать путь не до каталога, а до конкретного файла:
ConditionPathIsReadWrite=/sys/class/drm/card0-eDP-1/status


Ребята, давайте жить спокойно!


Одна страница
Распечатать

У вас нет прав для отправки сообщений в эту тему.

Задать вопрос