Гібернація все ще відсутня в меню в 13.10 після включення через polkit. Як увімкнути?


52

Я знаю, що починаючи з 12.04, нам потрібно додати правило політика, щоб увімкнути сплячку (див. Питання Як увімкнути сплячку? Та Офіційну документацію ).

Я можу успішно перевести свій ноутбук у режим сплячки за допомогою, sudo pm-hibernateабо sudo s2disk, таким чином, правило діє і працює, але запис у сплячому режимі все ще відсутній у меню.

Я можу сказати, переглянувши джерело пакету індикаторних сесій (але не розуміючи весь код), що в коді все ще є запис зі сплячого режиму, і він повинен відображатися, коли система здатна до сплячки. Будь ласка, заспокойтесь, якщо вас це розлютило. Це дуже навряд чи змова , а скоріше помилка / регресія на більш глибокому рівні, що може статися, коли ви переміщуєте код або замінюєте його.

Питання: Що потрібно зробити в 13.10, щоб правильно сказати, indicator-sessionщо система може перезимувати?


Можливий дублікат: Зимова сплячка все ще недоступна - Ніякої активності, оскільки в той час розроблялася пікантність, тому вийшла за рамки AskUbuntu.

Пов’язаний звіт про помилку: https://bugs.launchpad.net/ubuntu/+source/indicator-session/+bug/1232814


Моє питання про те саме: askubuntu.com/questions/361058
pileofrocks

@pileofrocks Вибачте, сьогодні, мабуть, не звернув уваги на вашу.
LiveWireBT

Твоє висловлюється кращим чином, але технічніше (я поставив запитання, коли я ще не знав про помилку), якщо інший повинен бути закритий, то він повинен бути зроблений мною. : P
pileofrocks

Відповіді:


62

14.04 і пізніше

Мітч вказує у своїй відповіді за 14.04 та 16.04, що слід перевірити, 10-vendor.d/com.ubuntu.desktop.pklaперш ніж щось змінювати. Також перевірте, чи захищено безпечне завантаження, і якщо це повертає опцію меню.

Повторне ввімкнення опції сплячки в меню

Щоб знову ввімкнути опцію сплячки в меню, /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pklaслід змінити її таким чином, щоб вона виглядала так, як виглядає наступна в пікантності (13.10):

[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
ResultActive=yes

Потім перезавантажте або запустіть killall indicator-session-serviceсеанс, і у вас має бути повернутись до режиму сплячого функціонування / опції меню. Створіть файл, якщо він ще не існує.

Дослідження з повідомлення про помилку

Цитування з публікації Джеффірі То в звіті про помилку Launchpad # 1232814 :

Для Saucy індикатор-сеанс було оновлено, щоб використовувати logind (org.freedesktop.login1) замість upower.

Якщо ви перевірите /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla, ви побачите, що сплячий режим вимкнено за замовчуванням як у користувачеві, так і під час входу.

Отже, перший крок для повторного ввімкнення опції "Зимовий режим" - це відредагувати /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
ResultActive=yes

Після перезавантаження меню сеансу екрана входу повинно мати опцію сну.

[...]

Вся подяка та заслуга переходить до Джеффірі!

Чому сплячку було відключено?

Звіт про помилку на панелі запуску, який пропонує відключити призупинення / сплячку замість того, щоб відстежувати, яке обладнання "сертифікує" для яких режимів живлення. Стверджується, що це більш масштабований підхід.

Ще одна річ, яку слід зазначити, це те, що використання захищеного завантаження UEFI та сплячки здається можливим, але може бути ризиком обійти попереднє. ( 1 , 2 ) Нагадування, коли ви використовуєте сплячий режим, ви зберігаєте все в оперативній пам'яті на диску без шифрування, сюди входять паролі для зашифрованих файлових систем та контейнерів.

У якийсь момент з 16.04 мені довелося вимкнути безпечний завантажувач, щоб мати можливість перезимувати свої ноутбуки. У моєму випадку я використав uswsusp і тестуючи s2disk, повернув повідомлення нижче. Це може дати вам підказку, що ваша проблема, чому ви не можете перезимувати, хоча все інше на місці, пов’язана із безпечним завантаженням:

s2disk: Could not open the snapshot device. Reason: Operation not permitted 

Однак, будь ласка, розумійте, що тут не можна скаржитися, і будь ласка.

Пов'язані питання


3
Дякую за метод, але я все ще не маю успіху після перезавантаження та після "killall індикатор-сеанс-сервіс". Ти ж згадав "або робиш інше усунення несправностей після перезавантаження", хоча я гадаю, що я в цій категорії. Дуже дивно знайти таку важливу поведінку, яка все ще не підтримується після стількох ітерацій цієї операційної системи, але це все те, що я маю на даний момент. Я просто перехрещу пальці і приклеюсь до судо вечора-сплячки.
cdaddr

3
Пару питань: чому в світі відключена сплячка? А чи виконувати вищезазначені параметри сплячки в налаштуваннях живлення? Мені не потрібна сплячка в меню передач, але щоб мій ноутбук перезимував у критичних рівнях акумулятора. Дякую за відповідь!
Oxwivi

1
Я не в змозі перезимувати навіть після цього !! :( допоможіть!
Зимова

1
@constantius Так, ви повинні створити його.
LiveWireBT

1
@SalmanPK Тоді ви можете задати інше питання. Також переконайтеся, що у вас достатньо SWAP.
Сет

2

Якщо у вас все ще виникають проблеми з перезимуванням, перегляньте коментар № 58 до цього звіту про помилку :

Я знайшов вирішення проблеми в gnome 13.10: просто встановіть сплячий режим:

sudo apt-get install hibernate

Єдина проблема полягає в тому, що apport видасть три помилки при запуску після нормального відключення живлення. Для цього ви можете відключити apport:

sudo -H gedit /etc/default/apport

Потім змінити enabled=0.

Щоб змінити налаштування зі сплячого режиму, редагуйте файли в /etc/hibernate.

Встановлення гібернаційного пакету, здається, внесе правильні зміни, і він дуже добре працював для мене в ubuntu gnome 13.10 x64


1

Якщо ви дотримувались попередніх кроків, і це все ще не спрацювало, пропоную змінити /etc/pm/sleep.d/20_custom-ehci_hcdна:

[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
ResultActive=yes

щоб він працював, виконайте вказані вище кроки, щоб увімкнути сплячий режим. Це справді працювало для мене.

Зрештою у вас буде відредаговано два файли, які " [Re-enable hibernate ... ]" Спробуйте цей. Це буде точно працювати, якщо ви використовуєте ubuntu 13.10


1

Я хотів би додати тут одне, що AFAICR, це неімменований розділ swap. Якщо розділ swap не змонтований, опція сплячки не відображатиметься / не вмикається незалежно від конфігурації сплячки.

І якщо swap-розділ не автоматизується, сеанс, який перебуває у сплячому режимі, буде втрачено.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.