Блог об openSUSE » TimeTracking http://sapfeer.ru Блог по созданию и настройке openSUSE безопасного хамелеона Sat, 22 Sep 2012 12:43:48 +0000 ru-RU hourly 1 http://wordpress.org/?v=3.4.2 Ограничение времени в SuSE с помощью timekpr http://sapfeer.ru/2010/03/31/579 http://sapfeer.ru/2010/03/31/579#comments Wed, 31 Mar 2010 07:33:33 +0000 SuSEuser http://sapfeer.ru/?p=579
пример работы timekpr

Пример работы timekpr

Многие наверное сталкивались с ситуацией, когда необходимо каким-то образом ограничить время работы пользователей за компьютером. Под WIN платформу существует множество решений, но большинство из них платные... А что же есть у нас, линуксоидов? Во время своих поисков я натыкался на блоги, в которых эта проблема решалась с помощью самописных скриптов, что меня абсолютно не устраивало, поскольку нужна была GUI программа, которая бы могла оповестить пользователя, например, об оставшемся времени. Оказалось, что у Gnome уже есть два проекта, решающих эту проблему, а именно - GChildCate и Nanny, Но! Эти проекты еще находятся на ранних стадиях разработки и у них даже нет еще stable версий :( Конечно я попытался собрать Nanny из исходных кодов, но он отказался у меня работать, постоянно выдавая ошибки. И я продолжил поиски, и вскоре я натолкнулся на Timekpr. Именно эту программу мне удалось настроить и заставить ее работать, правда пришлось немного пошаманствовать, так как проект еще находится в стадии разработки. А самое ужасное - я не смог найти по нему никакой внятной и более-менее понятной документации, поэтому опишу все здесь, чтобы вы не мучались, так же как я. И так, приступим:

1) Загружаем пакет с исходниками отсюда , распаковываем, не забудьте установить все необходимые зависимости, в основном это библиотеки python'a. После этого собираем и устанавливаем:

user@notebook:~> tar xf timekpr_0.3.2~ppa1~ubuntu2.tar.gz
user@notebook:~> cd stable
user@notebook:~/stable> sudo ./install.sh

В принципе все готово. Проверьте запускается ли у вас timekpr без ошибок или нет, без ошибок, в смысле он вобще запускается и вы видите ошибку об отсутствующей секции в /etc/security/time.conf. Если у вас так же как у меня, то продолжаем, если нет - устанавливайте дополнительные библиотеки python'a.

2) Начинаем настраивать. Как обычно бывает, если установка прошла быстро и гладко, то после нее возникнет большое количество проблем. Решаем их , пропсываем для начала в /etc/security/access.conf следующий текст

## TIMEKPR START

## TIMEKPR END

То же самое дописываем в /etc/security/time.conf. Отлично, дописали, timekpr должен запускаться из консоли под рутом, настраиватся.. Уже хорошо, но на этом проблемы не заканчиваются. У timekpr есть демон, который следит за количеством использованного времени, и его необходимо запускать при старте системы, в исходниках программы, позже, я нашел в папке debian и автоматический установщик, и скрипт автозапуска, но проблема в том, что они были для DEB систем. Нам это не подходит, поэтому пришлось все снова сделать самому. К этому посту я приложил свой самописный скрипт автозапуска для timekpr. Скачайте его, распакйте и положите в директорию /etc/init.d/. Попробуйте запустить, и проверьте запущен ли timekpr. Если все прошло успешно - можете переходить к заключительному шагу настройки.

3) У timekpr есть клиент программа, которая висит в трее и оповещает пользователей о количество оставшегося времени. Чтобы она работала надо выполнить команду(видимо это последствия development версии, что не все файлы имеют верный chmod):

user@notebook:~> sudo chmod +x /usr/bin/timekpr-client

Теперь вы можете ее запустить и в трее появится значок, и если на него нажать выскочит окошко с информацией об оставшемся времени. В принципе программа настроена и вполне работоспособна, но есть еще не большие проблемы с меню программ. Если проблема актуальна - переходим к следующему шагу.

4) В папке debian лежат два файл .desktop первый отвечает за запуск GUI тулзы настройки timekpr'a, а второй - за клиента. Скопируйте файл timekpr-client.desktop в папку /usr/share/applications/ . А вот с timekpr.desktop возникла у меня проблемка. Он использует команду gksu для запуска программы от рута, у меня ее не оказалось в системе, ставить не хотелось, поэтому я использовал программу от драйверов ATI, которая запускает amdcccle от рута - amdxdg-su отредактируйте timekpr.dekstop, замените

Exec=gksu /usr/bin/timekpr-gui
На
Exec=amdxdg-su -c /usr/bin/timekpr-gui

Если у вас видео карта не ATI или не установлены драйвера поищите любую доступную альтернативу :)

Теперь у вас есть полноценная система огранчения времени работы за компьютером, респект разработчикам timekpr'a! :)

]]>
http://sapfeer.ru/2010/03/31/579/feed 3