Всем дня!
Передо мной возникла следующая задача: в системе Ubuntu 10.04 запретить пользователю включать компьютер с 12 часов ночи до 10 часов утра? Казалось бы, чего проще: настраиваем cron так, чтобы он каждую минуту в заданном интервале времени запускал shutdown -h. По крайней мере, это первое, что мне пришло в голову. Но, с другой стороны, выключать компьютер молча как-то не кофильфо. И я задался вопросом: как бы сделать так, чтобы на экран юзеру вылезало сообщение вида «Вы включили компьютер в неразрешённое время! Через минуту он будет выключен!»
Вот в общих чертах то, что попробовал:
- Пробовал заставить crontab водводить на экран окно терминала перед запуском shutdown. Не помогло: окно выводится, шатдаун запускается, но в этом окне никаких надписей! Я наивно думал, что широковещательное сообщение, рассылаемое shutdown, выводится на ВСЕ терминалы. Оказалось, что нет. На все, кроме запущенного кроном :)
- Пробовал запускать окно gnome-terminal или xterm и выводить через него сообщение с помощью echo или printf. Опять не получилось: xterm -e, нампример, отлично выводит сообщение, вот только сразу после выхода окно закрывается.
- Пробовал различные планировщики. Не нашёл ни одного (включая самый известный - kalarm), в котором можно было бы задать интервалы точно так же, как задаёт маска crontab, которую я использовал: «*/1 0-10 * * *».
- Пробовал ещё кучу вариаций на тему crontab, но все безуспешно, поэтому не буду здесь пеерчислять.
Чего не пробовал:
Программировать. К сожалению, пока что программированием я не владею, так что не имею возможности написать простенькую форму (окошко) с большой красной надписью, которую можно было бы запускать тем же кронтабом, хотя такой вариант был бы самым предпочительным.
В итоге я остановился вот на чём: нарисовал картинку с большой красной надписью и приказал Крону выводить её на экран стандартной гномовской утилитой просмотра одновременно с запуском «shutdown -h +1» :)
Подскажите, уважаемые знатоки: может, есть какой-то более.. «кошерный» способ? :)