Новости:

Форуму исполнилось 12 лет!

Мы в матрице .
Мы в телеге .

Главное меню

Ограничение по времени

Автор fox, 24 декабря 2012, 09:20:59

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

fox

Опять я со своими вопросами :) .

Возникла необходимость купить сыну ноутбук. На него я установлю Slackware - это даже не обсуждается :) .
Но необходимо ограничить время работы за компьютером, скажем, двумя часами в день.
Есть ли такое ПО под Slackware, в котором возможно такое организовать или нужно программировать ?

Graf

#1
Готовой проги, думаю нет.
Но есть скрипты как такое сделать.
Оригинал статьи ТУТ .

Касаемо слаки ( проверено на Slackware32-14.0 ):
Скачиваем файл timercheck.tar.gz .
Распаковываем в /etc

# tar -xzf ./timercheck.tar.gz -C /etc


Получаем в /etc каталог timercheck со содержимым:

# ls -l /etc/timercheck

-rw-r--r-- 1 root root   43 дек.  25 19:00 limits
-rw-r--r-- 1 root root  622 дек.  25 18:30 prolong.sh
-rwxr-xr-x 1 root root  814 дек.  25 19:08 rc.timercheck
-rwxr-xr-x 1 root root 3757 дек.  25 18:28 timecheck.sh


Перенесём rc.timercheck куда ему полагается:

# mv /etc/timercheck/rc.timercheck /etc/rc.d/


И пропишем в /etc/rc.d/rc.local
/etc/rc.d/rc.timercheck start

Настройки:
отредактируем файл /etc/timercheck/limits на свой вкус

#user   duration        weekend-addon
graf    1:00    0:00

Где:

graf (первое значение) – имя пользователя,
1:00 (второе значение) – лимит времени работы,
0:00 (третье значение) – дополнительное время работы в выходные дни.

За 10 минут до истечения срока выдаст сообщение - "Внимание! Сеанс текущих суток будет завершён через 10 минут. Сохраните все данные и до завтра!"
Его можно заменить на свое, поправив 86 строку в скрипте timecheck.sh

Всё, теперь можно перегрузить компьютер или запустить скрипт вручную:

#  /etc/rc.d/rc.timercheck start

fox

Graf - спасибо Вам!
Проверял на себе под Slackware 14.0 64-bit.
Правда, сообщение за 10 минут до блокировки не вышло.
Все получилось неожидано :)

bormant

fox,
а выполненное от root-а
# su -l fox -c 'DISPLAY=:0 /usr/bin/notify-send "Внимание!" "Сеанс текущих суток будет завершён через 10 минут. Сохраните все данные и до завтра!" -t 10000 2>&1'
, где fox -- имя пользователя, нотификацию показывает?

Anton

Мне сказали, Слака — кака, пояснили, что я лох. Всё равно её не брошу, потому что на всех пох!

fox

Цитата: bormant от 28 декабря 2012, 14:11:12
fox,
а выполненное от root-а
# su -l fox -c 'DISPLAY=:0 /usr/bin/notify-send "Внимание!" "Сеанс текущих суток будет завершён через 10 минут. Сохраните все данные и до завтра!" -t 10000 2>&1'
, где fox -- имя пользователя, нотификацию показывает?

Извините за долгое молчание, затянувшиеся новогодние каникулы. :)

По поводу команды - ничего не показывает вообще, тишина :(
Мало того, почему-то разблокировка на следующий день не сработала, сын так и остался заблокированным.
Снял блокировку остановкой скрипта, удалением файлов, что в статье по ссылке и сменой пароля. (все от root)

fox

Цитата: Anton от 09 января 2013, 16:39:30
fox - какой строгий =)))

С полного согласия сына! ;)
А то уроки и прочее уйдут на второй план.

bormant

#7
Цитата: fox от 14 января 2013, 11:52:52
По поводу команды - ничего не показывает вообще, тишина :(
Хороший повод выполнить без перенаправления ошибок:
# su -l fox -c 'DISPLAY=:0 /usr/bin/notify-send "Внимание!" "Сеанс текущих суток будет завершён через 10 минут. Сохраните все данные и до завтра!" -t 10000'
Ожидается, что присутствует установленный пакет libnotify, X-ы установлены, активен графический сеанс ползателя fox, в эмуляторе терминала от рута (su -l) выполняется вышеозначенная команда. В терминал при этом ничего не выводится, но появляется системное всплывающее уведомление сообразно настройкам DE.

ps. В xfce это выглядит как балун, отображаемый в правом верхнем углу в течение 10 (-t 10000) секунд, см. прилагаемую картинку.

fox

Опять моя не внимательность! :blush_mini:
Я скопировал Ваш текст в консоль целиком, вместе со знаком "#" в результате ничего и не получил, извините.
После удаления лишнего знака "#", в трее появился значок в виде знака " i " в кругу, кликнув на него появилось и само сообщение которое "висело" пока я его не закрыл в ручную.

При работе скрипта ни значка, ни самого сообщения не появляется по прежнему, а так же не работает и разблокировка на следующий день. :(

Может дело в 64 битной версии?

Graf

Цитата: fox от 15 января 2013, 09:45:40
Может дело в 64 битной версии?

Да в скрипте чистый баш, там нет ничего особенного.
По поводу сообщения, думаю, проблемы где-то в настройках кед, а вот почему разблокировка не сработала - тут надо эксперементировать.
Чуток разгребусь, попробую на 64 слаке погонять.