Есть ли приложение для Ubuntu, которая заблокирует компьютер после определенного количества времени (например, 30 минут). Мне нужен он, чтобы дети ограничили время, они смотрят мультфильмы. Например, 30 минут, смотря и затем блокировки ПК, требующие, чтобы родитель разблокировал его.
Поскольку используемые Глаза Windows I Ослабляют приложение, оно показывает черный экран и зеленый индикатор выполнения (время, оставленное разблокировать ПК), и требует, чтобы пароль переопределил блокировку.
Называют намного превосходящую программу multi-timer
был создан: таймер для установки различных предупреждений simultaneosly
Хотя существуют приложения сторонних производителей, чтобы сделать это, можно создать собственное. Сводка шагов:
lock-screen-timer
lock-screen-timer
lock-screen-timer
как исполняемый файлОтредактируйте 1 (19 ноября 2016): Окончательная версия. Предстоящие предупреждения блокировки в 15, 10, 5, 3, 2 и 1 минута (минута), оставаясь использующий сообщение и звук. Используйте zenity для получения числа минут (значения по умолчанию к 30).
Отредактируйте 2 (ноябрь 20,2016): изменение Кода для уничтожения предыдущего сценария сна.
Редактирование 3 (Jan 20,2017): Пересмотрите уничтожающий предыдущий код сценария. Добавьте информационное сообщение, если предыдущая версия уже работала и завершилась.
Отредактируйте 4 (февраль 4,2017): Выполненный в цикле для нескольких обратных отсчетов, не имея необходимость повторно нажимать значок на рабочем столе. т.е. ночь Прачечной - 16 минут для промывания цикла (смягчитель матрицы), 13 минут для загрузки сушилки, 58 минут для вынимания из сушилки.
Отредактируйте 5 (февраль 11,2017): Запишите минуты, оставаясь в /tmp/lock-screen-timer-remaining
. Это позволяет другим программам отображать количество времени, прежде чем экран будет заблокирован.
Отредактируйте 6 (август 07,2017): изменение /tmp/
рабочий файл к ~/.
поддерживать многочисленных пользователей в сети.
Править: Обратите внимание, что сценарий зависит от ogg123 для проигрывания звука напоминания. Эта программа является частью пакета vorbis-инструмента из репозитория вселенной. Сценарий, как представлено здесь также пытается использовать hotplugtv сценарий, найденный здесь.
Отредактируйте 8 (ноябрь 12,2017): Добавьте WSL (Windows 10 Subsystem для Linux) поддержка. Обратите внимание, что необходимо добавить VcXsrv
и ubuntu-desktop
или xubuntu-desktop
(предпочтенный) для использования Linux GUI в WSL. Системный лоток Windows 10 / дисплей оставлений времени области уведомлений требует дополнения что indicator-sysmonitor
делает в Linux. Будущее powershell.exe
сценарий планируется поддержку области уведомлений Windows 10.
Отредактируйте 9 (февраль 19,2018): Зафиксируйте анимацию, отсутствующую \
от вращающейся пиццы "|,/, ─, \" последовательность.
lock-screen-timer
Откройтесь Terminal
использование Ctrl+Alt+T и типа:
gedit lock-screen-timer
lock-screen-timer
Переключитесь назад на этот экран и скопируйте следующий код путем выделения его и нажатия Ctrl+C:
#!/bin/bash
# NAME: lock-screen-timer
# PATH: $HOME/bin
# DESC: Lock screen in x minutes
# CALL: Place on Desktop or call from Terminal with "lock-screen-timer 99"
# DATE: Created Nov 19, 2016. Last revision May 30, 2018.
# UPDT: Updated to support WSL (Windows Subsystem for Linux)
# Remove hotplugtv. Replace ogg with paplay.
# Cohesion with multi-timer. New sysmonitor indicator style.
# NOTE: Time defaults to 30 minutes.
# If previous version is sleeping it is killed.
# Zenity is used to pop up entry box to get number of minutes.
# If zenity is closed with X or Cancel, no screen lock timer is launched.
# Pending lock warning displayed on-screen at set intervals.
# Write time remaining to ~/.lock-screen-timer-remaining
MINUTES="$1" # Optional parameter 1 when invoked from terminal.
# if no parameters set default MINUTES to 30
if [ $# == 0 ]; then
MINUTES=30
fi
DEFAULT="$MINUTES" # When looping, minutes count down to zero. Save deafult for subsequent timers.
# Check if lock screen timer already running
pID=$(pgrep -f "${0##*/}") # All PIDs matching lock-screen-timer name
PREVIOUS=$(echo "$pID" | grep -v ^"$$") # Strip out this running copy ($$$)
if [ "$PREVIOUS" != "" ]; then
kill "$PREVIOUS"
rm ~/.lock-screen-timer-remaining
zenity --info --title="Lock screen timer already running" --text="Previous lock screen timer has been terminated."
fi
# Running under WSL (Windows Subsystem for Linux)?
if cat /proc/version | grep Microsoft; then
WSL_running=true
else
WSL_running=false
fi
while true ; do # loop until cancel
# Get number of minutes until lock from user
MINUTES=$(zenity --entry --title="Lock screen timer" --text="Set number of minutes until lock" --entry-text="$DEFAULT")
RESULT=$? # Zenity return code
if [ $RESULT != 0 ]; then
break ; # break out of timer lock screen loop and end this script.
fi
DEFAULT="$MINUTES" # Save deafult for subsequent timers.
if [[ $MINUTES == 0 ]] || [[ $MINUTES == "" ]]; then
break ; # zero minutes considered cancel.
fi
# Loop for X minutes, testing each minute for alert message.
(( ++MINUTES ))
while (( --MINUTES > 0 )); do
case $MINUTES in 1|2|3|5|10|15|30|45|60|120|480|960|1920)
notify-send --urgency=critical --icon=/usr/share/icons/gnome/256x256/status/appointment-soon.png "Locking screen in ""$MINUTES"" minute(s)." ;
if [[ $WSL_running == true ]]; then
powershell.exe -c '(New-Object Media.SoundPlayer "C:\Windows\Media\notify.wav").PlaySync();'
else
paplay /usr/share/sounds/freedesktop/stereo/complete.oga ;
fi
;;
esac;
# Record number of minutes remaining to file other processes can read.
echo "Lock screen in: $MINUTES Minutes" > ~/.lock-screen-timer-remaining
sleep 60
done
rm ~/.lock-screen-timer-remaining # Remove work file others can see our progress with
if [[ $WSL_running == true ]]; then
# Call lock screen for Windows 10
rundll32.exe user32.dll,LockWorkStation
else
# Call screen saver lock for Ubuntu versions > 14.04.
dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock
fi
done # End of while loop getting minutes to next lock screen
exit 0 # Closed dialog box or "Cancel" selected.
Затем переключитесь назад к пустому gedit
окно и вставка код с помощью Ctrl+V. Сохраните файл и выйдите из редактора назад к командной строке.
lock-screen-timer
как исполняемый файлТеперь мы должны сделать исполняемый файл сценария путем ввода:
chmod +x lock-screen-timer
Прежде, чем назвать сценарий от GUI, мы назовем его от терминала, таким образом, мы будем видеть, отображены ли какие-либо сообщения об ошибках:
~/lock-screen-timer
Вам предлагают число минут:
Определите желаемый номер минут и нажмите "OK" для запуска таймера. Когда существует 15, 10, 5, 3, 2 и 1 минута (минута) уехала, системный звук слышат, и пузырь сообщения кажется советующим, когда экран будет заблокирован. После того, как экран заблокирован, необходимо ввести пароль для разблокирования экрана.
Наутилус определяет то, что происходит, когда мы дважды щелкаем по исполняемому сценарию, когда это - окно экрана файлов или ссылка на на рабочем столе. Нормальное поведение состоит в том, чтобы отредактировать использование сценария gedit
. Мы хотим изменить это поведение, таким образом, что оно выполняется.
Запустите Наутилус и перейдите к каталогу, содержащему lock-screen-timer
. Щелкните левой кнопкой по нему однажды, чтобы дать ему фокус. Мышь при наведении курсора по верхней панели меню до меню "File Edit..." появляется, используйте:
Edit
выпадающее менюProperties
опцияBehavior
вкладкаExecutable Text Files
Run executable text files when they are opened
От предыдущего раздела lock-screen-timer
все еще фокусируется. В противном случае перейдите к сценарию и щелчку левой кнопкой по нему однажды, чтобы дать ему фокус. Затем используйте:
Make Link
.Link to lock-screen-timer
.Теперь можно дважды щелкнуть по настольной ссылке ярлыка, и скрипт запущен. Диалоговое окно, кажется, получает минуты числа. Две кнопки представлены Отмена и хорошо. Если Вы нажимаете X
для закрытия окна, это совпадает с Отменой выбора.
После того, как таймер работает, и Вы дважды щелкаете по нему снова, первая под управлением копия "уничтожается". Можно теперь запустить новый экранный обратный отсчет блокировки или нажать Cancel ни для какого обратного отсчета.
В то время как экранный таймер блокировки работает, он записывает, сколько минут остается в файл ~/.lock-screen-timer-remaining
. Можно посмотреть на этот файл с watch
команда или дисплей это на системном лотке Ubuntu / панель индикатора приложения как показано наверху этого ответа. Для отображения времени, оставаясь в области уведомлений следуйте инструкциям в этом Вопросы и ответы: (Bash может отобразиться в systray как индикатор приложения?).
Вы можете использовать что-то вроде Мкахава , которое используется для администрирования интернет-кафе.