Я хотел бы команду, которую я мог отобразить на кнопку или выполнить в своей сети.
До сих пор я знаю команду sudo pm-suspend
но я не мог сделать pmi action suspend
работа над любыми 12.04, ни 14.04:
Error org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Hal was not provided by any .service files
Я также использовал этот, предположительно, более чистый метод: dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend
Но все эти методы имеют тот же очевидный результат. Когда я бужу свой компьютер, дает ли на 12,04 или 14.04, некоторый незаконченный бизнес незначительный сбой средство запуска единицы, и я должен взаимодействовать с ним для "фиксации его".
Этого не происходит, если я приостанавливаю от единицы GUI. И при этом этого не происходит от моего ноутбука, где существует специальный ключ сна. Также существует другое четкое различие для метода GUI и вышеупомянутых в чистом методе GUI (incl мой ноутбук), у меня есть уведомление, которое никогда не появляется с "грязными" методами.
Таким образом, что функция/программа/сценарий единица звонит, когда она приостанавливает правильно? И как я мог отобразить его на ключ/событие/жест?
Приостановка от индикатора сессии в правом верхнем углу экрана может копироваться со следующим dbus
команда.
qdbus com.canonical.Unity /com/canonical/Unity/Session com.canonical.Unity.Session.Suspend
я использовал этот dbus сервис прежде в других сценариях и другом ответе на askubuntu. Например, это использовалось, чтобы решить, что определенный пользователь выбора делает для запущения пользовательского скрипта после входа в систему в этом сообщении: , Как я могу выполнить локальную команду (для запущения скрипта) на (незадолго до), выходят из сессии Единицы?
Точная команда для приостановки системы как щелчка из графического меню в 14,04 сделала бы:
dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 "org.freedesktop.login1.Manager.Suspend" boolean:true