Ответы:
Традиционно Ubuntu поддерживает довольно тупой метод приостановки и гибернации. Ни один из них не будет хорошо интегрироваться с другими приложениями, а иногда даже не будет работать на некоторых машинах. Новый метод не требует root и уведомляет все приложения, прослушивающие события power.
Начиная с Ubuntu 16.04, systemctl
необходимо использовать call (см. Команду Suspend в Ubuntu 16.04 )
systemctl suspend
а также
systemctl hibernate
Смотрите ответ здесь на этой странице от Адама Пецника относительно использования dbus . В идеале вы должны создать ~/bin/suspend
ярлык / скрипт, который облегчит использование этого действия.
Для использования поверх ssh вы должны изменить правила policykit, как описано Питером В. Мёрчем
В соответствии с Ubuntu Forum вы можете использовать следующие команды:
pmi action suspend
а также
pmi action hibernate
Для этого необходимо установить пакет интерфейса powermanagement (не тестировался).
sudo apt-get install powermanagement-interface
Я также нашел команды sudo pm-suspend
и sudo pm-hibernate
для работы на моем нетбуке.
apt-get install powermanagement-interface
запустить pmi.
apt-get install powermanagement-interface
Удобный для гномов способ - использовать dbus.
dbus-send --system --print-reply \
--dest="org.freedesktop.UPower" \
/org/freedesktop/UPower \
org.freedesktop.UPower.Suspend
У этой команды есть два преимущества pm-suspend
.
Он заблокирует ваш экран (после возобновления), если у вас выбрана эта опция в gnome.
Он не требует привилегий root, поэтому его легко добавить, например, как сочетание клавиш.
Как уже упоминалось в комментариях, обмен Suspend
в последней строке Hibernate
создает команду спящего режима:
dbus-send --system --print-reply \
--dest="org.freedesktop.UPower" \
/org/freedesktop/UPower \
org.freedesktop.UPower.Hibernate
Если вы выберете режим гибернации, Error org.freedesktop.UPower.GeneralError: not authorized
ваш пользователь может не получить доступ к нему. Отредактируйте или создайте /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
так, чтобы он содержал следующий раздел: (источник)
[Re-enable hibernate by default]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
Это было проверено на UbuntuGnome 14.04 .
Примечание: это в основном то же самое, что и ответ qbi, но оно обновлено для работы с более новыми версиями Ubuntu, а также включает hibernate.
Hibernate
, вы можете просто заменить последнюю строку наorg.freedesktop.UPower.Hibernate
Если вы хотите, чтобы ваш компьютер зависал в течение одного часа, потому что вы хотите лечь спать, слушая любимую радиостанцию, откройте терминал и введите:
sudo bash -c "sleep 1h; pm-suspend"
и ваш компьютер засыпает через 1 час. Когда вы проснетесь, он сохранит ваши открытые изображения и все ваши вещи.
Вы можете заменить 1h
тем, что хотите: h
часами, m
минутами, s
секундами, d
днями.
Доброй ночи!
Вообще-то, вы должны знать, что вам нужно знать, что вам нужно, чтобы узнать больше о том, что вам нужно радиовещание, а также о терминале и ленте:
sudo bash -c "sleep 1h; pm-suspend"
et votre ordinateur s'endormira dans und heure. Quand vous vous réveillerez, il aura conservé en mémoire vos приложения Overtes.
Vous remplacer может оплатить 1h
пар в.п. дие уоиз Voulez: h
налить ль Heures, m
влить ле минут, s
влить ль secondes, d
влить ль Jours.
Доброй ночи!
Приводит к сведению информацию о том, что все в порядке и в течение определенного времени, и в то же время, когда речь идет о радиопередаче, соло и терминале, опишите:
sudo bash -c "sleep 1h; pm-suspend"
y tu computadora se quedará dormida en 1 hora. Cuando despiertes, allí habrán quedado abiertas tus imágenes y todas tus cosas.
Puedes reemplazar 1h
por lo que desees: h
para horas, m
para minutos, s
para segundos, d
para días.
Спокойной ночи!
Для Ubuntu 12.04 LTS и Ubuntu 13.04
Чтобы получить спящий режим:
sudo pm-hibernate
Чтобы получить Suspend:
sudo pm-suspend
Вы можете использовать файл /sys/power/state
для этого. Сначала выясните, какие состояния поддерживаются:
user@linux:_> cat /sys/power/state
standby mem disk
root@linux:~> echo -n mem > /sys/power/state # suspend to ram
root@linux:~> echo -n disk > /sys/power/state # suspend to disk
или через dbus:
Согласно этой записи в панели запуска вышеупомянутый интерфейс был удален. Так что это не будет работать в Ubuntu.
/sys/power/state
этому. Кроме того, метод dbus был удален из Ubuntu, поэтому он больше не будет работать.
$ sudo echo -n mem > /sys/power/state
-bash: /sys/power/state: Permission denied
sudo -i
сначала, или трубу, чтобы sudo tee
понравиться так:echo mem | sudo tee /sys/power/state
Для выключения системы (14.04) из командной строки (или сочетания клавиш) используйте:
dbus-send --system --print-reply --dest="org.freedesktop.login1" /org/freedesktop/login1 org.freedesktop.login1.Manager.PowerOff boolean:true
Я выяснил это, поиграв с gdbus, который может перечислить доступные интерфейсы:
Чтобы перечислить услуги, доступные на автобусе:
dbus-send --system --dest=org.freedesktop.DBus --type=method_call --print-reply /org/freedesktop/DBus org.freedesktop.DBus.ListNames
Чтобы найти методы:
gdbus introspect --system --dest org.freedesktop.login1 --object-path /org/freedesktop/login1 --recurse
поскольку 15.04 Systemd является стандартной системой инициализации , так что новая команда будет использоваться:
systemctl suspend
systemctl suspend
приостанавливает работу компьютера, но она не приводит к блокировке экрана, хотя я установил флажок «Блокировка экрана, когда система переходит в спящий режим» в меню «Настройки» -> «Диспетчер питания» -> «Безопасность». У кого-нибудь есть идеи, почему?
systemctl suspend
прежнему приостанавливает работу компьютера. Теперь это также вызывает блокировку экрана, если и только если установлен флажок «Блокировка экрана, когда система переходит в спящий режим» в меню «Настройки» -> «Управление питанием» -> «Безопасность».
Ответ dbus-send Адама Петцника не сработал так, как я предполагал, на lucid; машина проснулась разблокированной, хотя gnome-power-manager настроен на блокировку экрана при пробуждении. Я хочу, чтобы экран был заблокирован при пробуждении, и обнаружил, что следующее делает это:
$ gnome-screensaver-command --lock && pmi action hibernate
Я полагаю, что это не зависит от конфигурации GNOME, но я не проверял это.
xscreensaver-command --lock
в зависимости от обстоятельств.
Новый интерфейс
... который работает в 15.10 Wily, и, возможно, Utopic и Vivid.
dbus-send --print-reply --system \
--dest=org.freedesktop.login1 \
/org/freedesktop/login1 \
org.freedesktop.login1.Manager.Suspend boolean:true
Полезно, что это не требует sudo, в отличие от pm-suspend
команды.
Вот как перевести удаленный компьютер в режим ожидания через ssh:
ssh -t 192.168.1.4 'sudo nohup &> / dev / null bash -c "(sleep 1; echo -n mem> / sys / power / state) &"' Пароль x@192.168.1.4: [sudo] пароль для x: Подключение к 192.168.1.4 закрыто.
/ sys / power / state работает в Ubuntu 13.10. pmi выдает ошибку Dbus.
Лично я экспериментировал с методом pmi. Однако, когда я попробовал это, я получил сообщение об ошибке: Error org.freedesktop.DBus.Error.Spawn.ChildExited: Launch helper exited with unknown return code 1
. Тем не менее, в третьем комментарии к этому сообщению об ошибке есть обходной путь , который, похоже, сработал для меня (я использую Ubuntu 13.03).
Обновление для тех, кто, как и я, все еще работает в системах KDE / Ubuntu 14.04. Чтобы заблокировать использование qdbus
и приостановить использование dbus
. Полная команда:
qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock && dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend
Для перехода в режим гибернации, т.е. приостановки на жесткий диск вместо ОЗУ, замените «Suspend» в конце команды на «Hibernate».
Чтобы просто заблокировать экран без приостановки, xscreensaver-command -lock
будет работать, ЕСЛИ вы введете только 1 дефис для опции «-lock», и только если запущена заставка. На самом деле не очень полезная команда. Использовать i3lock
проще, но тогда вы не получите аккуратный диалог входа в систему, чтобы вернуться к работе, как вы будете при использовании qdbus
.
16.04 у меня работает (с рабочим столом Gnome):
gnome-screensaver-command --lock && compsleep
Я также установил его в качестве пользовательского сочетания клавиш через панель настроек Gnome в качестве клавиш «Shift-Super-X».
systemctl suspend