Как я могу выйти из системы неактивные пользователи?

У меня есть некоторый киоск ПК, которые в значительной степени работают как гостевая сессия Ubuntu. Пользователям киоска домой смонтировали файловую систему объединения сверху его так, банка не изменяется, почти может все еще сохранить файлы при работе в машине (и взять их с ними использующий флеш-карту).

Пользователи иногда оставляют станции с частным материалом все еще на рабочем столе. Из-за этого я хочу их, вышел из системы, после - говорят - 10 минут неактивности (файловая система объединения будет освобождена на выходе из системы).

Любые идеи, если существует существующее решение (авторегистрируются только, регистрируют пользователя из активных терминальных сеансов).

4
задан 6 November 2014 в 21:08

2 ответа

Разочарованный autolog, я тоже написал свой собственный сценарий. Это на Github .

  • Это достаточно для нескольких пользователей, для сеансов X и TTY.
  • Я включил задание Upstart, предполагая, что сценарий размещен в /usr/bin/idlekiller

. Чтобы настроить его:

sudo apt-get install xprintidle
sudo wget https://raw.githubusercontent.com/murukeshm/scratchpad/master/linux/idlekiller/idlekiller.conf -O /etc/init/idlekiller.conf
sudo wget https://raw.githubusercontent.com/murukeshm/scratchpad/master/linux/idlekiller/idlekiller -O /usr/bin/idlekiller
sudo service idlekiller start
4
ответ дан 17 November 2019 в 14:06

Я записал свой собственный сценарий, чтобы сделать это. Существует инструмент, названный xprintidle, который дает Вам время простоя xsession. Необходимо установить его сначала

sudo apt-get install xprintidle

, Тогда создают сценарий, например, в /root/bin/idle_check.sh:

#!/bin/sh

DISPLAY=:0
TIMEOUT=600000 # 10min = 10 * 60 * 1000

if [ $(xprintidle) -gt $TIMEOUT ]; then
    notify-send -t 60000 -i system-shutdown-panel-restart -u critical "WARNING" \
        "This machine looks idle and will be logged out in 60s.\nTo prevent this, move the mouse!"
    sleep 60;
    if [ $(xprintidle) -gt $TIMEOUT ]; then
        pkill -u matthias
    fi
fi

я открыл корни crontab для создания, это проверять каждую минуту

sudo -i
crontab -e

и иметь его похоже на это

SHELL=/bin/bash
PATH=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11
*/1 * * * *   /root/bin/check_idle.sh > /dev/null 2>&1

Работы как очарование.

3
ответ дан 17 November 2019 в 14:06

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

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