Hibernate работал правильно, когда я использовал Ubuntu 17.04. После обновления до 17.10 я не мог возобновить работу из-за черного экрана после возобновления ( эта ошибка ).
После обновления до 18.04, если я пытаюсь запустить компьютер после спящего режима, он загружается так, как будто не было спящего режима.
Существуют изменения, сделанные к настройкам по умолчанию по сравнению с предыдущим LTS (16.04). В моем случае не работал спящий режим, пока я не имею, сделал несколько шагов, среди них увеличил размер файла подкачки, включил его, удостоверился, что политики позволили его и т.д.
Это может легко быть моим самым длинным ответом на всем StackExchange, таким образом, я пытался сделать заголовки описательными.
Было бы благоразумно смотреть на Ваши журналы (dmesg
мог бы помочь), и посмотрите, там ли что-нибудь. Существуют причины, когда несмотря на Вас говорящий систему быть в спящем режиме, это на самом деле не будет, или это приостановит к RAM, вместо этого (спят).
Взгляд на kern.log
и syslog
поиск любого в спящем режиме, связанные сообщения не причинили бы боль также. Разделы, запускающиеся с "проблемы", могут помочь Вам с конкретными вопросами.
Одно из решающих изменений - то, что теперь у Вас НЕТ раздела подкачки, но у Вас есть файл подкачки.
Файл подкачки не может работать на Ваше смешение аппаратных средств/драйверов/ОС и спящего режима.
Политики могут также выключить или запретить спящий режим.
Приостановите к RAM - RAM сохраняет данные, компьютер засыпает быстрее, использует больше энергии при приостановке просыпается быстрее. Некоторый вызов этот сон.
Приостановите к диску - иначе спящий режим. RAM сохраняется для свопинга (раздел или файл), компьютер засыпает медленнее, использует меньше энергии при спящем режиме, просыпается медленнее.
Для спящего режима Вам нужно к (упрощение здесь) сохраняют Вашу всю RAM к Вашему жесткому диску. Так, необходимо отложить достаточно пространства, чтобы сделать так. Если Вы не сделаете, то это перестанет работать, и Вы не будете в спящем режиме.
free -m
скажет Вам, сколько памяти Вы имеете, используйте и сколько находится в Вашей подкачке. df -h
скажет Вам, сколько дискового пространства Вы имеете на каждой точке монтирования и сколько используется, свободно и т.д. Это важно, так как можно хотеть позже указать, где файл подкачки будет расположен, или который раздел "обрезать", чтобы иметь достаточно пространства для подкачки.cat fstab
должен дать Вам информацию, если у Вас есть раздел подкачки или файл. Согласно Спящему режиму Ubuntu FAQ swapfile
может не всегда работать с некоторыми комбинациями аппаратных средств/драйверов.Если Вы не имеете достаточного количества пространства, следуете, Ubuntu подкачивают FAQ. Это говорит Вам, как увеличить файл подкачки, добавьте другого, проверьте, используется ли это и т.д. С командами и объяснениями. Действительно хороший ресурс.
В документах ядра говорится:
/sys/power/image_size управляет размером изображения, созданного приостановить к диску механизмом. Это может быть записано строка, представляющая неотрицательное целое число, которое будет использоваться в качестве верхнего предела размера изображения в байтах. Приостановить к диску механизм приложит все усилия, чтобы гарантировать, что размер изображения не превысит то число. Однако, если это окажется невозможным, то это попытается приостановить так или иначе использование наименьшего возможного изображения. В частности, если "0" будет записан в этот файл, то приостановить изображение будет как можно меньше. Чтение из этого файла отобразит предел размера текущего изображения, который устанавливается к 2/5 доступной RAM по умолчанию.
Так, попытайтесь настроить свой размер изображения. Как - задают другой вопрос.
Ядро поддерживает то, что перечислено в /sys/power/state
, так:
cat /sys/power/state
Позволенный (к моему знанию) записи там включают: mem
, standby
, freeze
, disk
. Объяснение:
mem
- имеет несколько значений, через какой точно в Вашей системе Вы узнаете cat /sys/power/mem_sleep
. Я имею: s2idle [deep]
standby
- Включение питания Приостанавливает (если поддерживается)freeze
- Приостановить для бездействия (STI)disk
- Приостановить к диску (STD), спящий режим. Это - Вы хотите. Затем мы должны проверить cat /sys/power/disk
. Если Вы имеете там disabled
затем погружение в Вашем BIOS, ища Защищенную загрузку - это - единственная идея, которую я могу предложить, и только вещь, которую я знаю, может вмешаться и выключить спящий режим. В то время как я знаю только о SecureBoot, может быть другая интерференция, таким образом смотрение на Ваш BIOS является хорошей идеей, даже если у Вас нет там "безопасной начальной загрузки".
Чтение здесь:
TBH, даже если Ваше ядро НЕ поддерживает спящий режим, можно попробовать его в другом отношении, прокрутить вниз для разделения Interfaces
.
Без определенного порядка:
Не используйте BTRFS и будьте в спящем режиме: поврежденные данные будут результатом.
Существуют случаи, когда люди предшествуют файлу подкачки и возвращаются для свопинга раздела. В конце концов, это работало над предыдущим LTS. Я не попробовал, так не предложит указатели.
/etc/fstab
к новому. Перезагрузка для наблюдения изменения взята хорошо (резервное копирование хранилища fstab
таким образом, можно легко вернуться на всякий случай.Тщательно читайте и решите, хотите ли Вы сделать это, но это - просто способ настроить Ваше ядро. Может быть легче быть в спящем режиме через systemd
и uswsusp
(см. Интерфейсы, ниже). Это может быть, который Вы - как я - в конечном счете решите, приостанавливают к RAM, достаточно, и Вы не хотите иметь 32 ГБ на файле подкачки (не настолько большой для людей с одним SSD в их ноутбуках, например). Но!
resume=
знать, которые делят Ваш файл подкачки, идет и resume_offset=
знать где в файле подкачки начинать возобновляться от.resume=
указать для свопинга раздела.resumedelay=
. Документы ядра о задержке возобновления от Спящего режима:
resumedelay = [СПЯЩИЙ РЕЖИМ] Задержка (в секундах) для приостановки прежде, чем попытаться считать файлы резюме
Обязательные параметры для своп-файла и спящего режима:
возобновитесь = [SWSUSP]
Specify the partition device for software suspend Format: {/dev/<dev> | PARTUUID=<uuid> | <int>:<int> | <hex>}
resume_offset = [SWSUSP]
Specify the offset from the beginning of the partition given by "resume=" at which the swap header is located, in <PAGE_SIZE> units (needed only for swap files). See Documentation/power/swsusp-and-swap-files.txt
Для resume=
выберите тот же стиль как root
элемент имеет в fstab
. Так, также /dev/sdaX
или UUID
или LVM. Для спящего режима в файл - обеспечивают раздел, где Ваш файл может быть найден.
Чтение:
Файл подкачки должен быть отформатирован правильно. Если Ваши журналы говорят Вам это, Вы или пытаются быть в спящем режиме в файл, или Ваш параметр резюме не является правильным.
Переключитесь, чтобы разделить или зафиксировать файл или интерфейс изменения, используемый для спящего режима.
См.: https://unix.stackexchange.com/questions/43508/debian-hibernate-problem-pm-swap-header-not-found
mkswap
привык к файлу формата, читайте больше на нем здесь
Тест: pm-hibernate
(если пополудни-utils пакет установлен), или systemctl hibernate
скажите Вам, что Нельзя. Настройка по умолчанию в Ubuntu начиная с IIRC 12.04.
Решение (решения): зависит от Вашей версии Polkit, Вашей версии Ubuntu и аромата... Посмотрите этот вопрос. Кроме того, ArchWiki на Polkit может помочь.
Для Монетного двора см.: https://forums.linuxmint.com/viewtopic.php? t=259912
Тест: cat /sys/power/disk
имеет disabled
. Журналы показывают "Отказавший для спящего режима системы через вошедший: глагол Сна, не поддерживаемый".
Решение: ищите свой BIOS и найдите проблематичную вещь. Выключите его.
Решение 2: попробуйте другой в спящем режиме интерфейс.
См.: Как активировать спящий режим в 16.04.1? (systemd).
Для меня это были несколько почти двух дней работы для компиляции этого. Надо надеяться, это поможет, Вы (и другие) решаете свою проблему быстрее. Существует неподвижная суть, которую я упустил, но это - 2:00, и я не испытываю желание писать больше теперь. Я, конечно, открыт для чьих-либо указателей для создания этого лучше, таким образом прокомментируйте далеко. Я отвечу, после того как я сплю, работаю и т.д.:-)
Я не определенный спящий режим к диску, является настолько большим. Я пошел со сном в конце. Но для меня проблема была с наличием файла на 32 ГБ только, чтобы смочь сделать спящий режим, так как я обычно стараюсь не подкачивать вообще. Мой начальный своп-файл был на уровне 2 ГБ, и это было главным образом пусто. YMMV. Тем не менее, удачи! И запускаются с журналов!
Используйте раздел подкачки UUID вместо, он - точка монтирования в параметре РЕЗЮМЕ resume=UUID=<#>
в обоих /etc/default/grub
и /etc/initramfs-tools/conf.d/resume
Создайте запись для раздела подкачки в /etc/fstab
без точки монтирования что-то вроде этого
# Entry for Swap :
UUID=# none swap sw 0 0
В /etc/default/grub
Я использовал отдельную запись для возобновления спящего режима
# FOR HIBERNATION
GRUB_CMDLINE_LINUX="resume=UUID=..."
Создайте policykit в местных властях (pkla)
sudo gedit /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
[Enable hibernate to be run via cron]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultAny=yes
После того обновления initramfs и GRUB
sudo update-initramfs -u -k all
sudo update-grub
Перезагрузка, откройте некоторые приложения и использование systemctl hibernate
(без sudo), чтобы видеть, работает ли это
Для меня это всегда работало, до 18.04 и после 18.04 я включил его, как находится во многих статьях, но это внезапно прекратило работать только вчера (хорошо работающий в течение 4-5 месяцев),
и вот... ОДНА ВЕЩЬ, которая получила его работающий снова...
Скажите grub2, где раздел подкачки:
Сначала узнайте, какой раздел это находится на использовании ниже команды:
cat /etc/fstab
Мой находится на sda7, как следующий вывод:
подкачка была на/dev/sda7 во время установки
Затем добавьте в Grub2 следующее дополнение к следующей строке, с помощью следующей команды:
sudo gedit/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT = "intel_pstate=disable возобновляют =/dev/sda7"
Важная часть resume=/dev/sda7
/dev/sda7 в моем случае
Затем Личинка Обновления со следующей командой, и после этого это начало работать отлично снова:
sudo update-grub
После многих попыток это было одной работавшей вещью, возможно, это было только из-за обновления ядра, которое завинтило его, однако это работало.
надежда это поможет кому-то, но я выполняю корму / человечность 19.04. В моей установке я смог быть в спящем режиме с помощью s2disk, или пополудни - в спящем режиме, но резюме перестало работать. Зафиксировать это, поскольку моя система загружается с помощью UEFI вместо личинки. Я просто должен был переустановить загрузчик. Чтобы проверить, выполняете ли Вы использование UEFI следующее:
[ -d /sys/firmware/efi ] && echo "Installed in UEFI mode" || echo "Installed in Legacy mode"
если в режиме UEFI, то я следовал этому руководству для переустановки загрузчика, он варьируется при использовании nvme диска или sata диска: https://support.system76.com/articles/bootloader/
удостоверьтесь, что в Ваших kernalboot опциях Вы указываете раздел или UUID того, где возобновиться от, например, что-то вроде этого:
resume=UUID=ed8347ed-2eb4-40bc-bc77-cc53b987ed88
Можно добавить это также: 1) тупик ядра sudo-a "resume=UUID =..." 2) отредактируйте/etc/initramfs-tools/conf.d/resume файл и добавьте: resume=UUID=ed8347ed-2eb4-40bc-bc77-cc53b987ed88
проверьте Вас/var/log/syslog файл на что-то вроде этого: 4 августа 22:26:42 поп-OS/usr/bin/kernelstub [19639]: kernelstub: копты ОТЛАДКИ: root=UUID=b37019a8-91f5-445f-94c1-7359a49ed5df ro подавляют шумы loglevel=0 systemd .show_status=false resume=UUID=ed8347ed-2eb4-40bc-bc77-cc53b987ed88
Если резюме отсутствует, или неправильно затем необходимо будет обновить ядро начальной загрузки снова.
Кроме установки подкачки возобновляют точку в личинке, упомянутой в ответе Sam73, я нашел, что моя Ubuntu 18.04 также должна установить laptop-mode-tools
:
$sudo apt install laptop-mode-tools
затем изменение ENABLE_LAPTOP_MODE_ON_AC=1
в файле конфигурации:
$sudo vim /etc/laptop-mode/laptop-mode.conf
запустите режим ноутбука с:
$sudo laptop_mode start
P.S. Вы могли проверить, запускается ли ноутбук или не с
$cat /proc/sys/vm/laptop_mode
Если это печатает 0
, laptop_mode
не работает, иначе, это указывает, что хорошо работает.