К основному контенту

Спящий режим в Ubuntu

Спящий режим Ubuntu - это режим энергосбережения, позволяющий отключить питание компьютера, сохранив при этом текущее состояние операционной системы. Это очень удобно: пользователь сможет включить компьютер и продолжить работу с приложениями, которые были запущены до отключения питания. Например, редактировать уже открытый текстовый документ или смотреть фильм с того же тайм-кода. Данный режим доступен как на ноутбуках, так и на настольных компьютерах. Мы будем рассматривать аспекты его использования в дистрибутиве Ubuntu 18.04 LTS.

Вообще, существует три разновидности спящего режима: режим ожидания (Suspend to RAM), режим гибернации (Hibernate, Suspend to disk) и гибридный режим (Hybrid sleep, Suspend to both). Первый режим доступен в Ubuntu по умолчанию, второй и третий - деактивированы из-за многочисленных жалоб пользователей. Мы рассмотрим все три режима для того, чтобы читатель мог выбрать наиболее подходящий для него, гарантированно работающий режим самостоятельно.

Содержание статьи: 1. Режим ожидания 2. Режим гибернации 3. Гибридный режим сна Заключение 1. Режим ожидания

Режим ожидания (Suspend to RAM) или простой спящий режим Ubuntu доступен в системе по умолчанию и предусматривает отключение питания компьютера с сохранением питания оперативной памяти. Благодаря этой особенности он работает на подавляющем большинстве компьютеров, хотя и имеет очевидный недостаток, связанный с затратами энергии. Конечно же, каждый случай индивидуален, ведь любой режим энергосбережения предполагает подготовку устройств силами операционной системы с последующей передачей управления прошивке материнской платы, поэтому сложно гарантировать корректную работу даже режима ожидания.

По умолчанию режим ожидания активируется при закрытии крышки ноутбука. Также он может активироваться с помощью функциональной клавиши ноутбука (обычно это клавиша с изображением полумесяца). Кроме того, его можно включить из системного меню, но не самым очевидным образом. Для этого нужно открыть системное меню, нажать клавишу Alt, после чего кнопка завершения работы будет заменена на кнопку перехода в режим ожидания Ubuntu (Рисунок 1).



Рисунок 1. Кнопки завершения работы и перехода в режим ожидания

Вы можете прямо сейчас нажать на эту кнопку и испытать режим ожидания в деле. Если после отключения питания компьютера и последующего нажатия кнопки включения вам удастся продолжить работу с ранее запущенными приложениями, то спящий режим работает корректно. Если же после некоторого ожидания вы видите лишь чёрный экран или элементы графического интерфейса системы оказываются неработоспособными, лучше отключить спящий режим Ubuntu. Для этого в первую очередь следует запустить приложение дли изменения параметров системы с помощью крайней левой круглой кнопки с пиктограммой инструментов в системном меню (Рисунок 2).



Рисунок 2. Кнопка для изменения параметров системы

После открытия окна приложения нужно перейти на вкладку Электропитание. Здесь следует убедиться в том, что в качестве значения параметра При нажатии кнопки выключения не установлено Перевести в режим ожидания, а также нажать на строку Автоматический режим ожидания и отключить переключатель При простое (Рисунок 3).



Рисунок 3. Отключение режима ожидания

В случае закрытия крышки ноутбука всё немного сложнее: нужно установить дополнительное приложение GNOME Tweaks с помощью команды:

sudo apt-get install gnome-tweaks

Далее нужно запустить это приложение (его имя в меню  Доп. настройки GNOME), перейти на вкладку Электропитание и отключить переключатель Режим ожидания при закрытии ноутбука (Рисунок 4).



Рисунок 4. Параметры электропитания в GNOME Tweaks

Теперь при закрытии крышки ноутбук не будет переходить в режим ожидания как в старые добрые времена GNOME 2.

Конечно же, редкое руководство по Linux обходится без описания консольных команд. Мы также рассмотрим команды, которые позволяют активировать режим ожидания из консоли. За управление режимами энергосбережения в Ubuntu отвечает системная служба logind из состава systemd, с которой можно взаимодействовать как посредством утилиты systemctl, так и посредством системной шины сообщений DBus. Это команда для перехода в режим ожидания с помощью утилиты systemctl:

systemctl suspend

А это вызов соответствующего метода DBus:

dbus-send --system --print-reply --dest="org.freedesktop.login1" /org/freedesktop/login1 org.freedesktop.login1.Manager.Suspend boolean:true 2. Режим гибернации

Режим гибернации (Hibernate, Suspend to disk) деактивирован в Ubuntu по умолчанию и предусматривает отключение питания компьютера с переносом данных из оперативной памяти в раздел подкачки. Разумеется, для корректной работы данного режима размер раздела подкачки должен превышать объём доступной оперативной памяти. Кроме того, данный режим нередко работает некорректно из-за проблем с прошивками материнских плат. Ещё один его недостаток - затраты времени на запись и чтение данных. Для активации режима гибернации необходимо добавить параметр ядра ОС и создать файл конфигурации Polkit.

Начнём с параметра ядра ОС. Он предназначен для передачи имени файла устройства раздела подкачки, в котором будут сохраняться данные состояния ОС. Чтобы узнать имя этого файла, можно воспользоваться следующей командой:

swapon --show

Необходимое имя должно находиться в столбце NAME (Рисунок 5).