В Ubuntu 16.04 LTS я бы предложил использовать systemctlболее новую версию, потому что systemdдля управления используются новые системы .
Безопасная команда для запуска заключается в том, systemctl suspendчто машина немедленно приостанавливается, если какой-либо процесс не запрашивает питание системы (например, видеоплеер, показывающий фильм, активная запись компакт-дисков, другой зарегистрированный пользователь, выполняющий какие-либо действия и т. Д.).
Если вы хотите немедленно принудительно приостановить работу и игнорировать все «ингибиторы», просто добавьте, -iкак описано в выходных данных вышеупомянутой команды.
Если вы хотите немедленно заблокировать заставку и приостановить работу системы во всех случаях, вы можете запустить
loginctl lock-session && systemctl suspend -i
Это лучше , чем использовать сырье dbusдля отправки сообщений , поскольку использования loginctlи systemctlпозволяет избегать жесткого кодирования любой информации о скринсейвере или менеджере сеансов.
apt-get install halно теперь работал хорошо.