Как включить спящий режим?

419

В Ubuntu 12.04 и новее спящий режим по умолчанию отключен в policykit . Как я могу включить это обратно?

    
задан Dima 12.01.2012 в 00:10
источник

10 ответов

335

Если этот ответ не работает в Ubuntu 13.10, см. здесь для альтернативного ответа

Вы можете ознакомиться с официальной документацией здесь . Спящий режим был отключен 12.04 для машин, которые не сертифицированы с помощью Ubuntu.

Чтобы включить спящий режим, вам нужно проверить, работает ли он правильно, запустив sudo pm-hibernate в терминале. Система попытается спящий режим. Если вы снова можете запустить систему, тогда вы более или менее безопасны для добавления переопределения.

Чтобы сделать это, начните редактирование:

sudo nano /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

Или в 14.04 и позже:

[Re-enable hibernate by default for login1]
  Identity=unix-user:*
  Action=org.freedesktop.login1.hibernate
  ResultActive=yes

[Re-enable hibernate for multiple users by default in logind]
  Identity=unix-user:*
  Action=org.freedesktop.login1.hibernate-multiple-sessions
  ResultActive=yes

Сохраните, нажав Ctrl - O , затем введите , а затем выйдите из nano, нажав Ctrl - X .

Перезагрузка и спящий режим вернулись!

Или запустите killall unity-panel-service , чтобы просто сбросить меню.

Затем некоторым пользователям потребуется запустить sudo update-grub , чтобы получить доступ к опции hibernate в меню питания. Некоторым пользователям также может потребоваться, по крайней мере, выйти из системы, а затем войти в систему, чтобы заставить его отображаться в меню питания (в правом верхнем углу).

    
ответ дан Dima 13.04.2017 в 12:24
источник
45

Сначала вам нужно проверить, что ваш компьютер поддерживает спящий режим. Протестируйте его командой:

 sudo pm-hibernate
 # or for newer Ubuntus like 17.04
 sudo systemctl hibernate

Ubuntu 16.04 и выше

Для включения в интерфейсе вам необходимо запустить sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla и заполнить:

[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultActive=yes

Ubuntu 14.04 и 15.04

Для включения в интерфейсе вам нужно будет запустить sudo nano /etc/polkit-1/localauthority.conf.d/52-enable-hibernation.conf для Ubuntu 14.04 и 15.04 и заполнить:

[Re-enable hibernate by default]
  Identity=unix-user:*
  Action=org.freedesktop.upower.hibernate
  ResultActive=yes

[Re-enable hibernate by default for login1]
  Identity=unix-user:*
  Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
  ResultActive=yes

У него есть несколько строф, так как у вас может быть несколько пользователей (так что это не зависит от нескольких пользователей или upower в качестве менеджера вместо login1)

p.s .: официальная последняя документация Ссылка

    
ответ дан morhook 23.06.2014 в 19:17
источник
32

Кроме того, для тех, кто хочет отключить кнопку suspend (по разным причинам), действуйте аналогично ...

Выберите любое имя файла, но это одно слово verbose / convention:

sudoedit /etc/polkit-1/localauthority/50-local.d/com.ubuntu.disable-suspend.pkla

Заполните это следующим образом:

[Disable suspend by default]
Identity=unix-user:*
Action=org.freedesktop.upower.suspend
ResultActive=no

Ctrl + O , Введите , Ctrl + X

Не нужно перезапускать, оно должно исчезнуть, как только вы войдете в меню выключения.

    
ответ дан nacs 23.06.2012 в 00:56
источник
14

Еще одна вещь:

Если вы хотите добавить параметр спящего режима на панель XFCE , вы должны щелкнуть правой кнопкой мыши свое имя (topright) и выбрать properties .

После этого появится всплывающее окно:

Убедитесь, что вы проверили Hibernate, как я.

    
ответ дан mreq 01.04.2013 в 08:04
источник
14

Во-первых, я рекомендую вам проверить, поддерживает ли ваш ноутбук спящий режим, потому что причина, по которой гибернация отключена по умолчанию, связана с тем, что иногда она имеет фатальные результаты на некоторых машинах. Проверьте свою машину на

Ctrl + Alt + T , а затем sudo pm-hibernate

Ваш компьютер должен находиться в спящем режиме. Пробудите свою машину после спячки и наблюдайте, не ошибается ли она, или если она действует нормально. Если вы испытываете какие-либо отклонения после спячки, я советую вам не продолжать следующую процедуру. Однако, если он работает нормально, продолжайте активировать спящий режим на

sudo gedit /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla

Отредактируйте открытый файл и добавьте следующие строки:

[Re-enable hibernation]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

После этого перезагрузите компьютер, и после входа в систему вы увидите параметр спящего режима в верхнем правом углу настроек.

    
ответ дан kelvinelove 10.10.2013 в 14:13
источник
6

Если ответ с /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla не работает, как в моем случае, не забудьте удалить файл:

sudo rm /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla

И попробуйте использовать TuxOnIce .

Сначала убедитесь, что у вас достаточно свопа. Он должен быть того же размера или больше, что и объем вашей оперативной памяти. Использовать команду

free

правило Swap > Памятная записка Если это не так, увеличьте размер свопа. Затем установите TuxOnIce с помощью

sudo add-apt-repository ppa:tuxonice/ppa
sudo apt-get update
sudo apt-get install tuxonice-userui linux-generic-tuxonice linux-headers-generic-tuxonice

Затем вы можете попробовать выполнить спящий тест:

sudo pm-hibernate

Не забудьте сохранить свою работу, прежде чем делать это.

Если все пойдет хорошо, ваш компьютер выключится. После его включения вы получите свой рабочий стол в состоянии, которое вы оставили в нем до спячки.

    
ответ дан Dee 10.10.2013 в 13:49
источник
5

Включение спящего режима с помощью скрипта

Я перевел выше ответы на скрипты bash . Это делает установку на нескольких машинах менее утомительной.

Скрипт enable-hibernate :

#!/bin/bash
#http://askubuntu.com/a/94963/164341
cat << '_EOF_' |sudo tee /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
[Enable Hibernate]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
_EOF_
clear
echo
echo 'Hibernate enabled.'
echo

Скрипт disable-suspend :

#!/bin/bash
#http://askubuntu.com/a/154821/164341
cat << '_EOF_' |sudo tee /etc/polkit-1/localauthority/50-local.d/com.ubuntu.disable-suspend.pkla
[Disable suspend by default]
Identity=unix-user:*
Action=org.freedesktop.upower.suspend
ResultActive=no
_EOF_
clear
echo
echo 'Suspend disabled.'
echo

Примечание. Не забывайте, что chmod +x оба сценария делают их исполняемыми.

    
ответ дан Serge Stroobandt 18.02.2014 в 15:27
источник
4

Простая команда, которая делает то же самое, что и принятый ответ, кроме неинтерактивного:

cat <<EOF | sudo tee /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
EOF
    
ответ дан kiri 24.10.2013 в 03:52
источник
2

В 12.04 я успешно включил функцию спящего режима в меню индикатора для спящего режима. Но все же мне не удалось успешно вернуться из спящего режима. Для устранения этой проблемы я выполнил следующие шаги:

Включить спящий режим в 12.04

Чтобы включить Hibernate, я выполнил этот ответ от Dima.

После включения спящего режима я мог бы спячки. Но проблема в том, что я не могу успешно вернуться из спящего режима. Каждый раз, когда я запускаю свой компьютер из спящего режима, он загружается как обычная загрузка. Итак, я должен был сделать это, чтобы вернуться из спящего режима.

Исправления для возможности возобновления спящего режима

Есть два способа исправить это.

1. Редактирование файла /etc/initramfs-tools/conf.d/resume

  1. Сначала получите UUID раздела подкачки.

     sudo blkid | grep swap
    

    Это приведет к строке, подобной этой:

    /dev/sda12: UUID="a14f3380-810e-49a7-b42e-72169e66c432" TYPE="swap"
    

    Фактическая строка не будет соответствовать этому. Скопируйте значение UUID между двойными кавычками "..." .

  2. Открыть файл резюме

    gksudo gedit /etc/initramfs-tools/conf.d/resume
    

    И в этом файле добавьте строку, подобную этой

    RESUME=UUID=a14f3380-810e-49a7-b42e-72169e66c432
    

    Не забудьте заменить фактическое значение UUID, которое вы получите с шага 1. Сохраните файл и выйдите из gedit

  3. Затем в терминале выполните эту команду

    sudo update-initramfs -u
    

Теперь вы можете вернуться из спящего режима

2. Редактирование файла /etc/default/grub .

  1. Откройте терминал и выполните команду ниже, чтобы открыть его

    gksudo gedit / etc / default / grub

  2. Будет строка типа GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" . Отредактируйте строку, чтобы вставить RESUME=UUID=<your-uuid-value-here> после слова splash .

    Например, в моем случае строка выглядит так после редактирования

     GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=a14f3380-810e-49a7-b42e-72169e66c432" 
    

    Убедитесь, что вы использовали свое значение UUID, которое вы получаете из команды sudo blkid | grep swap .

  3. Затем выполните эту команду

     sudo update-grub
    

Это также позволит вам успешно вернуться из спящего режима.

Протестировано на двух установках Ubuntu, оба работали

    
ответ дан Anwar 19.09.2012 в 10:51
источник
0

У меня Ubuntu Gnome 17.04 amd64 на моем ноутбуке. Для включения спящего режима я сделал следующее:

$ sudo apt-get install hibernate ( источник )

Это также установило libx86-1 uswsusp vbetool

Тогда я мог бы успешно спящий с sudo systemctl hibernate . В моем пути нет исполняемого файла pm-hibernate .

$ sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla

Вставить: ( источник )

[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.handle-hibernate-key;org.freedesktop.login1;org.freedesktop.login1.hibernate-multiple-sessions;org.freedesktop.login1.hibernate-ignore-inhibit
ResultActive=yes

Установлен Ссылка

    
ответ дан ominug 29.04.2017 в 20:21
источник

Ознакомьтесь с другими вопросами по меткам