LINUX.ORG.RU

Киндер контроль


0

0

Есть комп с убунту и есть киндер, который злоупотребляет оным. Необходимо что бы в 11 часов вечера тачка вырубалась и не загружалась до 7 утра. Что лороветяне мне посоветуют ?

Поставить в крон на выполнение раз в минуту скрипт, который будет проверять время и гасить машину при необходимости. Этот же скрипт запихать в /etc/rcX.d

friday ★★★
()

> Что лороветяне мне посоветуют ?

Ремень.

Uncle_Theodore ★★
()

забирать в 11 вечера кабель питания :-) или ты дома не ночуешь?

gods-little-toy ★★★
()
Ответ на: комментарий от sergej

Проблему надо решать от ее причины, а не бороться со следствиями.
Если киндер умный, то придумает как обойти все ваши наивные способы защиты (кстати, пароль надо уж тогда на Биос ставить, а не на загрузчик). А если тупой -- то вместо сидения с 11 до 7 за компьютером, будет вылазить в форточку и гоп-стопом заниматься или травку в подворотне курить в то же время.
Почему киндер не хочет спать ночью как все нормальные сапиенсы? Днем отсыпается? Как он потом в школе сидит или в университете? Вот отсюда и танцуйте. А не кабель воруйте.

Uncle_Theodore ★★
()

если серьезно - необходимость использования технических средств для такого тривиала показывает что ребенок не под контролем. Использование их - тоже плохо, дите укрепляется в мысли что ему никто не указ, и если на что-то тянет - то можно.

ремень - лучше чем крон джоб, но, вобщем, тоже - признание неэффективности воспитательных методов.

gods-little-toy ★★★
()
Ответ на: комментарий от gods-little-toy

> ремень - лучше чем крон джоб, но, вобщем, тоже - признание неэффективности воспитательных методов.

Не нравится ремень, вот вам другой, осень воспитательный метод.
Проникновенно глядя в клаза киндеру, говорите: Твое сидение за машиной ночью вредит твоему здоровью/работе/учебе (нужное подчеркнуть). Если ты сам не можешь контролировать свои соблазны, я тебе один раз помогу. Если еще хоть раз я узнаю, что ты сидел за машиной в неположенное время, ты ее лишаешься на неделю. Если это повторится -- лишишься насовсем. А сейчас марш на кухню посуду мыть, маме помощь нужна. И паркет заодно натри.

Главное, если сказал -- именно так и сделать.
Развивает гражданскую отвтственность. :)

Uncle_Theodore ★★
()
Ответ на: комментарий от Uncle_Theodore

>Твое сидение за машиной ночью вредит твоему здоровью/работе/учебе (нужное подчеркнуть).

Цитата: "Ой, что уже мне нельзя за компьютером посидеть ? Я же никому не мешаю. Я же тихонько фильм смотрю".

>Развивает гражданскую отвтственность. :)

у некоторых она отсуствует

Вовсяком случае что именнно надо делать с кроном ? Как выглядит эта ежеминутная проверка времени ?

unrealix
() автор топика
Ответ на: комментарий от Uncle_Theodore

>придумает как обойти все ваши наивные способы защиты (кстати, пароль надо уж тогда на Биос ставить, а не на загрузчик)

киндер даже пароль свой не осилил :)

>будет вылазить в форточку

с 7го этажа ?

unrealix
() автор топика

Заходишь в 11 вечера в комнату и говоришь: "Сынку, пора спать", затем выключаешь компьютер и забираешь кабель питания.

Хотя лучше всё же попытаться договориться и не забирать кабель.

Demon37 ★★★★
()
Ответ на: комментарий от unrealix

>киндер даже пароль свой не осилил :)

ну вот и решение твоей проблемы. пока не осилит - за компом не работает. на моего подействовало.

mic ★★★★★
()

/etc/security/time.conf здесь задаешь период времени (7:00-23:00) 
когда юзер может логиниться в систему.

В крон /etc/cron.d/killuser2300 ставишь что-то вроде: 
0 23 * * * root pkill -u $USERNAME ; sleep 3; pkill -9 -u $USERNAME



P.S. 2all : Говорящие о воспитании и морали лучше идите в толкс.

sdio ★★★★★
()
Ответ на: комментарий от sdio

> P.S. 2all : Говорящие о воспитании и морали лучше идите в толкс.
Подход настоящего программиста - это решать _настоящую_ задачу заказчика, а не то, что заказчик думает про свою задачу (и не то, как он ее формулирует).

svu ★★★★★
()
Ответ на: комментарий от svu

Смотря с чем пришел заказчик. Если он спрашивает "Как отучить ребенка от компа" -- это одно, а если "Как выключать по расписанию" -- это другое.

sdio ★★★★★
()
Ответ на: комментарий от svu

Вопросы воспитания несомненно обсудить нужно, но техническое решение это не отменяет.

Дочь начала злоупотреблять играми, с временем согласна но "ещё немножко", "не усмотрела" и т.д. Рассердился и сделал тупое poweroff после часа логина. В виндосе тоже нашёл какую-то приблуду.

Через некоторое время она и говорит "виндос предупреждает а линукс сразу", говорю ей "хочешь всё выключу, будешь класть рядом часы и сама следать за временем" -- "нет, оставь так".

Техническое решение тоже нужно, несомненно.

sin_a ★★★★★
()
Ответ на: комментарий от sin_a

>"виндос предупреждает а линукс сразу"

Сделано людьми для людей.

".. а дальше не уточнил" (ц) Жванецкий.

ansi ★★★★
()
Ответ на: комментарий от sdio

Я об этом и говорю. Заказчик пришел не с проблемой, а уже с готовым сценарием ее решения (такое случается почти всегда). Задача правильного разработчика - узнать, в чем суть проблемы и, если нужно, предложить более оптимальное решение, даже если оно не согласуется с "заготовкой" заказчика. Конечно, это требует доверия со стороны заказчика и некоторой отваги со стороны разработчика...

svu ★★★★★
()
Ответ на: комментарий от ansi

Мне просто надоело и лень было прилаживать xmessage.

В любом случае у неё есть выбор использовать автоматику или класть часики и выключать самой.

Вот лень на часы смотреть - а так всё равно приходится, воспитательный момент.

sin_a ★★★★★
()
Ответ на: комментарий от unrealix

>>Твое сидение за машиной ночью вредит твоему здоровью/работе/учебе (нужное подчеркнуть).

> Цитата: "Ой, что уже мне нельзя за компьютером посидеть ? Я же никому не мешаю. Я же тихонько фильм смотрю".


Мда. Проблема глубже, чем я думал. Родители тоже ничего не слышат из того, что им говорят... Наследственность. :D Еще раз прочитайте предложенную фразу.

Твое сидение за машиной ночью вредит ***ТВОЕМУ*** здоровью/работе/учебе (нужное подчеркнуть).

При чем тут "никому не мешаю"? :)
Пожразумевается: "Я несу ответственность за твое здоровье и учебу. Поэтому, делай, что тебе говорят."

> Вовсяком случае что именнно надо делать с кроном ? Как выглядит эта ежеминутная проверка времени ?


Что-то типа вот этого.
http://ubuntuforums.org/showthread.php?t=168781

Uncle_Theodore ★★
()
Ответ на: комментарий от Uncle_Theodore

> Пожразумевается: "Я несу ответственность за твое здоровье и учебу.

Да, это правильно.

Только совсем идеально, если получится не "я несу, говорю" а "мне в общем всё равно, но через столько времени ты останешься без глазок, пищеварения, простуженным и т.д.".

sin_a ★★★★★
()
Ответ на: комментарий от Uncle_Theodore

>При чем тут "никому не мешаю"? :)

засрать мозги :)

>"Я несу ответственность за твое здоровье и учебу. Поэтому, делай, что тебе говорят."

приблизительный ответ: "Ой, что уже мне нельзя за компьютером посидеть ? Я же никому не мешаю. Я же тихонько фильм смотрю". ;)

Во всяком случае, как заметили вверху, я сказал в чём мне помочь и именно это я хочу услышать.

Автору который написал пример для крона: дык если так то тачка вырубится,а киндер потом её опять врубит и будет сидеть как ни в чём не бывало. Кроме того что бы оно вырубалось в 23-00 мне надо тчо бы оно и не врубалось до 7 утра методом проверки времени каждые 3 минуты. Как это сделать ?

unrealix
() автор топика
Ответ на: комментарий от unrealix

> нельзя за компьютером посидеть ?

В каком возрасте он намерен начать носить очки с сантиметровыми линзами?

> тачка вырубится,а киндер потом её опять врубит

Ежеминутный крон, проверка who, date...

В сочетании с файлом хранящим текущую дату и файлом где лежит increase (или как он там пишется) можешь тонко регулировать игровое время.

sin_a ★★★★★
()
Ответ на: комментарий от unrealix

> я не настолько экстрасенс

А насколько Вы программист? ;)

dt=`date | awk '{print $4;}'`; if [ ${dt:0:2} -ge 11 ]; then echo "shutdown"; fi

Че-то как-то разочаровала меня Ваша семейка... :( Уйду я от вас.

Uncle_Theodore ★★
()
Ответ на: комментарий от Uncle_Theodore

>dt=`date | awk '{print $4;}'`; if [ ${dt:0:2} -ge 11 ]; then echo "shutdown"; fi

Вы б еще на жабе бедному ребенку скрипты писали.

if [ `date +%H` -ge 11 ]; then echo "shutdown"; fi

sabonez ★☆☆☆
()
Ответ на: комментарий от Uncle_Theodore

Требование было ко мне, по готовому решению которым я бахвалился.

Это там чикагщина так способствует рацвету снобизма?

sin_a ★★★★★
()
Ответ на: комментарий от unrealix

готовый рецепт:

в рутовый crontab добавляешь:

00 23 * * * /sbin/shutdown -h now 1>/dev/null 2>&1

в /etc/rc.d/rc.local добавляешь:

curtime=`date +%H`
if [ "$curtime" -lt "7" ]; then
shutdown -h now
fi

Глобально и надежно. Ежели киндер не осилит параметров загрузки ядра (типа single или init=/bin/sh), то нормально. А ежели осилит - то пусть сидит. Человек из него получится :)

Komintern ★★★★★
()
Ответ на: комментарий от Uncle_Theodore

>Меня разозлило требование "готовое решение в студию!"

а меня увиливание от ответа на мой вопрос

unrealix
() автор топика
Ответ на: комментарий от sin_a

> Это там чикагщина так способствует рацвету снобизма?

Отож! :D
Так делать не принято. Готовое решение можно требовать с человека, которому платишь деньги. Если хочешь получить что-то на халяву, дай возможность людЯм потрендеть, и сделай вид, будто они "направляют" тебя к правильному решению, которое ты потом "обнаружишь" сам.
Это сетевая этика, а не снобизм.
Впрочем, может, кому-то нравится, что его держат за мальчика на побегушках. ;)

Uncle_Theodore ★★
()
Ответ на: комментарий от Uncle_Theodore

Ребята, давайте жить дружно!;)

ЗЫ По теме - невозможно придумать полностью защищенное решение. Дети по определению сообразительней родителей - через месяц-другой парнишка освоит загрузку в single user и отполирует кронтаб. Дальше будет гонка вооружений, в которую вы ГАРАНТИРОВАННО проиграете - если не технически (однажды купите закрытую железку или просто отберете комп), то педагогически (потеряв остатки доверия ребенка).

svu ★★★★★
()
Ответ на: комментарий от unrealix

#!/bin/bash
#

### presets
#
#

#today=/root/check_user_time/today
#usertime=/root/check_user_time/usertime

today=tmp/today
usertime=tmp/usertime

username=test

time_limit=6

### routines
#
#

check_date () {
    if [ "`date +%D`" != "`cat $today`" ]
    then
        date_up
        clear_time
        exit
    fi
}

date_up () {
    echo `date +%D` > $today
}

clear_time () {
    echo > $usertime
}

check_user () {
    if [ -z  "`who|grep $username`" ]
    then
        exit
    else
        echo $[`cat $usertime`+1] > $usertime
    fi
}

check_limit () {
    if [ $time_limit -gt `cat $usertime` ]
    then
        exit
    else
        /sbin/poweroff
    fi
}

###
#
#

check_date

check_user

check_limit

sin_a ★★★★★
()
Ответ на: комментарий от sin_a

Написано конечно размашисто, можно и подсократить и упростить при желании :)

А можно и развить идею, добавив разрешение на периоды суток, в случае нескольких детей можно вызывать с параметром и делать раздельные расписания.

sin_a ★★★★★
()
Ответ на: комментарий от sin_a

И, да, это не рабочий вариант, как несложно заметить (ребенок с мамой один ноутбук делят, лень туда к ним лезть). Но вроде без заметных ошибок, думаю несложно разобраться и причесать (по моему туда я только скопировал и поправил переменные).

sin_a ★★★★★
()
Ответ на: комментарий от Uncle_Theodore

> Готовое решение можно требовать с человека, которому платишь деньги

Если я спрашиваю совета а кто-то говорит что у него уже есть готовое изделие но он мне его не даст, то к такому человеку я отнесусь с подозрением. Как минимум.

sin_a ★★★★★
()
Ответ на: комментарий от unrealix

> это пихать в крон в 23-00 ?

Это в рутовый крон и запуском раз в минуту.

Прежде чем применять разберись как работает.

sin_a ★★★★★
()
Ответ на: комментарий от svu

> проиграете <...> потеряв остатки доверия ребенка

Так с этого начинать нужно.

А если у калитки на заборе крючок, то он не для людей а для скотины. Такой инструментарий - это так, типа контрольный, в голову.

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

sin_a ★★★★★
()
Ответ на: комментарий от unrealix

Строго говоря, это вообще не твоя задача. Этот скрипт считает время пользователя и при превышении лимита останавливает машину. Но с другой стороны, если он отыграет днем, то ночью время всё равно кончится.

Время указано всего 6 минут, там в начале, это как раз для проверки работы перед запуском. И местоположение файлов, в которых считается время, нужно правильное указать.

sin_a ★★★★★
()

>киндер, который злоупотребляет оным
запрет не поможет, вобще бесполезно.

Запретишь играть, включит телевизор. Зомбоящик выключишь, уидёт играть с друзьями/у друзей. Надо ставить renice ребёнку на дела, которые он делает. Если у него приоритет уроков никакой, то запрет играть это вообще не решение, а инициатива сбоку, влияющая лишь косвенно. Надо ему прямо ткнуть, что уроки важнее.

darkshvein ☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.