Как приостановить с помощью сочетания клавиш?


11

Я хотел бы приостановить свою систему xubuntu (14.04) с помощью сочетания клавиш без ввода пароля суперпользователя ( sudo ). Я ищу командную строку, которую я могу преобразовать в ярлык.

Пока что я попробовал два решения:

Команда Xfce:

xfce4-session-logout --suspend

Проблема: система не блокирует сеанс. Мне не нужно вводить свой пароль для пробуждения, и я хочу это сделать.

Dbus :

dbus-send --print-reply --system --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend

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

Есть ли третье решение, которое 1. спрашивает пароль во время пробуждения и 2. не портит интернет-соединение?

На самом деле графический ярлык по умолчанию (из меню) работает нормально. Я просто не знаю, какая командная строка называется.

Ответы:


8

Я написал сценарий. Кажется, делать то, что вы просите:

#!/usr/bin/env zsh
# Custom suspend
#
# (That 'zsh' up there can be switched to 'bash', or 
# pretty much any shell - this doesn't do anything too fancy.)
#
# Dependencies are mostly xfce stuff:
#
#   xbacklight
#   xflock4
#   xfce4-session-logout

# Set how dim we want the screen to go (percentage, out of 100)
dim=5

# Pack up your toys
previous_dimness=$(xbacklight -get)

# Turn down the lights
xbacklight -set $dim

# Lock the door (this requires a password to get back in)
xflock4

# And go to sleep
xfce4-session-logout --suspend

# When we wake up, turn the lights back on
xbacklight -set $previous_dimness

1
+1 за замечательные комментарии. Я думаю, что я буду использовать этот скрипт при установке Ubuntu.
Wildcard

Извините, но где мне разместить этот скрипт? Как мне подключить его с помощью сочетания клавиш (например, Ctrl + Alt + S)? Я использую Lubuntu
hipoglucido

Технически вы можете поместить сценарий в любом месте. У меня есть каталог bin / в моем домашнем каталоге только для личных сценариев, которые я хочу использовать. В этом случае путь к сценарию: / home / <имя пользователя> / bin / custom-suspend. Вы должны убедиться, что сценарий является исполняемым. Один из способов сделать это - запустить следующую команду: $ chmod + x / home / <username> / bin / custom-suspend. Чтобы создать ярлык в LXDE (который использует Lubuntu), вы должны найти что-то вроде «клавиатура» из меню «Пуск», которое должно показать вам приложение конфигурации клавиатуры.
Джон Картер

4

Вы можете очень просто отправить команду, чтобы сначала заблокировать экран, а затем приостановить его:

xscreensaver-command -lock ; xfce4-session-logout --suspend

Для использования xscreensaver-command, запуститеxscreensaver-command --help


Это работает из командной строки (хотя экран блокировки не нужен, так как это автоматически с приостановкой), но не как сочетание клавиш (по крайней мере, с Ubuntu 12.04). Кстати, приложение Xfce для блокировки экрана - xflock4 (без аргументов), которое по умолчанию связано с control-alt-delete.
BobDoolittle

xscreensaver-commandкажется, пропал в 15.10.
Джесси Глик

@JesseGlick - просто установите xscreensaverпакет
Уилф

2

Как ни странно, xfce4-session-logout --suspendработает просто отлично, и моя система - xubuntu 14.04. Он также блокирует сеанс, хотя я включил опцию «Блокировка экрана перед сном», зайдите в «Настройки» -> «Сеанс и запуск» -> «Дополнительно» и проверьте, включен ли он там.


Это работает из командной строки (хотя экран блокировки не нужен, так как это автоматически с приостановкой), но не как сочетание клавиш (по крайней мере, с Ubuntu 12.04).
BobDoolittle

ну, это должно работать в x Ubuntu, а не Ubuntu. Я не уверен, почему у вас даже есть xfce4-session-logoutкоманда.
Ufos

Мы говорим о Xfce, который можно добавить в любой дистрибутив Ubuntu. Xubuntu - это просто удобный дистрибутив, который добавляет пакеты Xfce и настраивает их как рабочий стол. Вы можете начать с Ubuntu и добавить / настроить его самостоятельно. Различие xubuntu / ubuntu - красная сельдь.
BobDoolittle

У меня нормально работает, с блокировкой экрана, в Xubuntu 15.10.
Джесси Глик

0

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

dbus-send --print-reply --system --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend

В первый раз попросите меня сделать исполняемый файл и после этого работать очень хорошо.

Я использую WICD для подключения к Интернету, и он работает хорошо после пробуждения!


Xubuntu 15.10:Error org.freedesktop.DBus.Error.UnknownMethod: Method "Suspend" with signature "" on interface "org.freedesktop.UPower" doesn't exist
Джесси Глик

0

Если вы на ноутбуке и просто хотите нажать клавишу. Вы можете использовать кнопку питания. Поведение может быть установлено в настройках питания:

  1. Откройте диспетчер настроек (или по команде: xfce4-settings-manager)
  2. Открыть настройки Power Manager
  3. В общем: установите, когда кнопка питания нажата, чтобы спросить
  4. Закрыть настройки Power Manager

Если у вас установлены сценарии ACPI, отключите или обновите сценарий кнопки питания из

/etc/acpi/events/, and change the action field to /bin/true:
# EXAMPLE
event=button/power.*
#action=/usr/lib/acpid/power_button
action=/bin/true

Ссылка: https://wiki.xfce.org/tips#solution_2

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.