Выполнение исполняемых файлов при подключении или отключении пользователя
Выполнение исполняемых файлов при подключении или отключении пользователя
Начиная со STAL версии 2.0 добавлена поддержка выполнения внешних исполняемых файлов, определенных администратором, при:
- подключении пользователя в сессию;
- отключении пользователя от сессии;
- запуске сессии пользователя;
- закрытии (останове) сессии пользователя.
Для мониторинга перечисленных выше событий существует служба stal-watchdog, запускаемая сразу после установки STAL.
Для выполнения внешних исполняемых файлов (например, xx-scripts.sh) администратору нужно:
- создать каталог
/etc/stal/sessions.d/:
sudo mkdir /etc/stal/sessions.d/
- перейти в созданный каталог:
cd /etc/stal/sessions.d/
- создать в нем подкаталоги
created,connected,disconnected,closed:
sudo mkdir created sudo mkdir connected sudo mkdir disconnected sudo mkdir closed
- поместить нужные исполняемые файлы в соответствующие каталоги:
- для выполнения при подключении пользователя в сессию -
/etc/stal/sessions.d/сonnected; - для выполнения при отключении пользователя от сессии -
/etc/stal/sessions.d/disconnected; - для выполнения при запуске сессии пользователя -
/etc/stal/sessions.d/created; - для выполнения при закрытии (останове) сессии пользователя -
/etc/stal/sessions.d/closed.
- для выполнения при подключении пользователя в сессию -
В исполняемых файлах можно использовать переменные среды, приведенные в таблице.
Переменные среды, доступные для использования в исполняемых файлах
| Переменная | Назначение |
|---|---|
SESSION_LOGIN | Имя пользователя |
SESSION_HOME | Рабочий каталог пользователя |
SESSION_XAUTHFILE | Служебная переменная X11 сессии пользователя |
SESSION_DISPLAY | Служебная переменная X11 сессии пользователя |
SESSION_UID | Идентификатор пользователя |
SESSION_GID | Идентификатор группы пользователя |
SESSION_SYSTEMD_ID | Идентификатор сессии в системе управления службами Программный номер сессии STAL синхронизирован с номером сессии Для получения номера сессии можно выполнить команду: sudo loginctl list-sessions Для получения статуса сессии можно выполнить команду: sudo loginctl session-status <номер сессии> |
SESSION_SEAMLESS | Режим seamless |
SESSION_MOUNTED | Указывает, что профиль пользователя смонтирован |
SESSION_COUNTS | Количество программных сессий пользователя |