Приветствую!
Задача - необходим запуск службы до того как пользователь авторизуется (пользователь вообще авторизовываться не будет).
rc.local выполняется после того как пользователь войдет в систему. на skeleton времени не хватает.
Можно как-то, например, для rc.local изменить уровень выполнения(?)?
Выглядит это так - пользователь включает ПК, запускается debian 7.x без X-ов, в момент предложения авторизации (либо далее в любой удобный момент без авторизации пользователя) запускается нужная служба.
Цитата: os_arc.local выполняется после того как пользователь войдет в систему
Откуда дровишки? rc.local запускается между окончанием загрузки и авторизацией. Но если там что-то тяжёлое, оно может продолжать работать до выхода из системы.
Цитата: os_aВыглядит это так - пользователь включает ПК, запускается debian 7.x без X-ов, в момент предложения авторизации (либо далее в любой удобный момент без авторизации пользователя) запускается нужная служба.
cron & tab
Спасибо, точно ошибался - rc.local запускается там где надо.
Немного усложню вопрос. Служба стартанула как положено до авторизации, однако у пользователя есть возможность её случайно убить сочетанием клавиш. Необходимо проверять - запущена ли служба. Если нет - передергивать службу. Создал скрипт_ик; в крон добавил запускать скрипт каждую минуту. Однако крон при выполнении ругается "No MTA installed, discarding output".
сам скрипт:
#!/bin/bash
if ! ps -A | grep avreg-mon then
/usr/bin/avreg-mon -f
fi
скрипт запускаю под пользователем - запускается. Почему в кроне нет?
откуда знаешь что не запускается в кроне?
Цитата: os_a от 11 декабря 2014, 09:43:03No MTA installed, discarding output
это информационное сообщение - не ошибка.
Цитата: os_a от 11 декабря 2014, 09:43:03#!/bin/bash
if ! ps -A | grep avreg-mon then
/usr/bin/avreg-mon -f
fi
либо ставь
; между
grep avreg-mon и
then, либо переноси then на новую строку, иначе - ошибка в коде.
Цитата: endru от 11 декабря 2014, 10:17:13
откуда знаешь что не запускается в кроне?
Скажем так. Задача состоит в следующем: если пользователь закрыл avreg-mon - он (avreg-mon) через минуту сам должен запустился. Вот и все. Это основная на данный момент задача. Скрипт кроном запускается, это вижу в логах, и так же в логах то самое информационное сообщение. погуглив по этому сообщению понимаю что дело в коде в скрипте.
Цитировать
либо ставь ; между grep avreg-mon и then, либо переноси then на новую строку
поставил, не запускается. т.е. я как пользователь отключаю avreg-mon, на мониторе после запуска скрипта он не появляется. а должен.
p.s. avreg-mon - локальный просмотрщик изображения с видео камер.
погуглите autologin
https://wiki.debian.org/ru/Step-by-step
ИМХО правильнее сделать автовход и прописать запуск вашего скрипта в профиль
я делал и так :
nano /etc/inittab
#1:2345:respawn:/sbin/getty 38400 tty1
1:2345:respawn:/sbin/my_script
2:23:respawn:/sbin/getty 38400 tty2
в первой консоли запускается мой скрипт