Приостановите команду в Ubuntu 16.04

В Ubuntu 14.04 я раньше использовал следующую команду для приостановки компьютера как пользователь без полномочий пользователя root:

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

К сожалению, в Ubuntu 16.04 это больше не работает, и я получаю сообщение об ошибке:

Ошибка org.freedesktop. DBus. Ошибка. UnknownMethod: Никакой такой метод Не 'Приостанавливает'

По-видимому, были некоторые изменения поэтому, какова была бы корректная команда теперь?

23
задан 24 May 2016 в 23:59

2 ответа

Согласно Wiki Debian, с systemd это - новая команда:

systemctl suspend

Примечание: Эта команда все еще требует полномочий пользователя root, если существует открытая сессия другого пользователя. Это также не работает в Кроне. В обоих случаях Вы необходимо будет создать дополнительные настройки.

33
ответ дан 23 November 2019 в 01:28

Метод приостановки по-прежнему доступен на D-Bus, если необходимо:

dbus-send \
  --system \
  --print-reply \
  --dest=org.freedesktop.login1 \
  /org/freedesktop/login1 \
  org.freedesktop.login1.Manager.Suspend \
  boolean:true

логическое: true - это параметр user_interaction :

Логические параметры user_interaction могут использоваться для контролировать, должен ли PolicyKit интерактивно запрашивать у пользователя учетные данные для аутентификации, если это необходимо.

Источник

2
ответ дан 27 February 2020 в 11:57

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

Похожие вопросы: