Как ограничить использование компьютера?

Предположим, что кто-то страдает бессонницей из-за плохой привычки болтать по IRC каждую ночь до 3:00. Это полностью разрушает жизнь этого человека, потому что он не может проснуться вовремя, чтобы присутствовать на своих экзаменах, потому что он будет полностью истощен каждый день и будет чувствовать депрессию.

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

Знаете ли вы о таком программном обеспечении, которое в идеале будет:

  • Будет препятствовать использованию компьютера в определенных временных диапазонах, скажем, 11 вечера - 6 утра
  • Изящно выключит компьютер в начале этого временного диапазона (не убив все приложения) и выключит его, если пользователь попытается снова включить его
  • Предупреждает за 10 минут
  • Может ли быть иногда отключено, если я дам одноразовый пароль этому человеку?

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

Спасибо за совет.

2 ответа

Решение

См. Ограничение доступа пользователей в системах Linux.

Идея состоит в том, чтобы использовать Linux-PAM для управления синхронизированным доступом пользователей к сервисам:

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

В файле /etc/security/time.confвот синтаксис для правила:

services;ttys;users;times

  1. Первое поле - services - это логический список имен сервисов PAM.
  2. Второе поле - tty - это логический список имен терминалов.
  3. Третье поле - пользователи - это логический список пользователей или сетевая группа пользователей.
  4. Четвертое поле - времена - указывает применимое время.

Вот пример типичного набора правил:

login ; * ; !bobby ; MoTuWeThFr0800-2000
login ; * ; !root ; !Al0000-2400
http ; * ; !bobby ; MoTuWeThFr0800-2000
http ; * ; !root; !Al0000-2400

Эти правила ограничивают вход пользователя в систему с 08:00 до 2000, а также ограничивают доступ к Интернету в эти часы. Root сможет войти в систему в любое время и просматривать Интернет все время.

Самый простой способ (мне нравится принцип KISS) - попросить кого-нибудь в доме (соседа по комнате, члена семьи и т. Д.) Отключить маршрутизатор и поставить шнур питания в их комнату ночью. (или просто поместите роутер в эту комнату и "легкую в использовании с пальцем на ногу").

Есть также другое программное обеспечение для родительского контроля (с разным уровнем успеха), доступное для Linux. Только не говорите им пароль.. (конечно, если у них есть root....)

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