ubuntu гибернация – отсутствует UUID файла подкачки и проблемы с питанием

Вопрос или проблема

Я пытаюсь добавить гибернацию в Ubuntu 18 на ноутбуке. Есть 3 диска: SSD M2, SSD и SD-карта. Ранее на SSD M2 была Windows 10, а на SSD – Ubuntu; теперь у меня только один Ubuntu на SSD M2. Я создал файл подкачки размером 10 ГБ:

fjod@fjod-HP-Laptop-15-db1xxx:~$ swapon --show       
NAME      TYPE SIZE USED PRIO
/swapfile file 9,8G   0B   -2

fjod@fjod-HP-Laptop-15-db1xxx:~$ ls -l /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root 15 фев  6 16:36 18f88db1-b367-45b1-9444-0f2ca150583b -> ../../nvme0n1p2
lrwxrwxrwx 1 root root 15 фев  6 16:36 513E-F188 -> ../../nvme0n1p1
lrwxrwxrwx 1 root root 10 фев  6 16:36 a1c2f79e-34ac-410e-b110-ba52f526face -> ../../sda1

fjod@fjod-HP-Laptop-15-db1xxx:~$ cat /proc/swaps
Filename                                Type            Size    Used    Priority
/swapfile                               file            10239996        0       -2
fjod@fjod-HP-Laptop-15-db1xxx:~$ grep swap /etc/fstab
/swapfile                                 none            swap    sw              0       0
/swapfile none swap sw 0 0
fjod@fjod-HP-Laptop-15-db1xxx:~$  cd / && ls -l swapfile
-rw------- 1 root root 10485760000 фев  6 16:33 swapfile
fjod@fjod-HP-Laptop-15-db1xxx:/$ cat /etc/fstab | grep -i swap
/swapfile                                 none            swap    sw              0       0
/swapfile none swap sw 0 0

Теперь мне нужно добавить его UUID, чтобы гибернация работала, так что:

fjod@fjod-HP-Laptop-15-db1xxx:/$ sudo blkid
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"
/dev/loop3: TYPE="squashfs"
/dev/loop4: TYPE="squashfs"
/dev/loop5: TYPE="squashfs"
/dev/loop6: TYPE="squashfs"
/dev/loop7: TYPE="squashfs"
/dev/nvme0n1: PTUUID="e5f2647b-98c1-45cd-93c1-4bdeb2bd11d1" PTTYPE="gpt"
/dev/nvme0n1p1: UUID="513E-F188" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="20210fff-3590-4c0f-826c-e64cb03894a8"
/dev/nvme0n1p2: UUID="18f88db1-b367-45b1-9444-0f2ca150583b" TYPE="ext4" PARTUUID="ce5ffbc2-5f80-4d12-9167-34d2b9676755"
/dev/sda1: UUID="a1c2f79e-34ac-410e-b110-ba52f526face" TYPE="ext4" PARTLABEL="kingston" PARTUUID="6e777b1f-a124-4821-8bae-c1b956e7e3fe"
/dev/loop8: TYPE="squashfs"
/dev/loop9: TYPE="squashfs"
/dev/loop10: TYPE="squashfs"
/dev/loop11: TYPE="squashfs"
/dev/loop12: TYPE="squashfs"
/dev/loop13: TYPE="squashfs"
/dev/loop14: TYPE="squashfs"
/dev/loop15: TYPE="squashfs"
/dev/loop16: TYPE="squashfs"
/dev/loop17: TYPE="squashfs"
/dev/loop18: TYPE="squashfs"
/dev/loop19: TYPE="squashfs"
/dev/loop20: TYPE="squashfs"
/dev/loop21: TYPE="squashfs"
/dev/loop22: TYPE="squashfs"
/dev/sdb1: TYPE="exfat"

fjod@fjod-HP-Laptop-15-db1xxx:/$ grep swap /etc/fstab
/swapfile                                 none            swap    sw              0       0
/swapfile none swap sw 0 0

Но я нигде не вижу его UUID. Что мне делать? Похоже, что у меня есть swapfile где-то на диске, но как указать гибернации на него?

————редактирование1——————-

используя этот учебник

fjod@fjod-HP-Laptop-15-db1xxx:~$ mount | grep "https://unix.stackexchange.com/"
/dev/nvme0n1p2 on / type ext4 (rw,relatime,errors=remount-ro)
fjod@fjod-HP-Laptop-15-db1xxx:~$ sudo blkid -g
[sudo] пароль для fjod: 
fjod@fjod-HP-Laptop-15-db1xxx:~$ sudo blkid -g
fjod@fjod-HP-Laptop-15-db1xxx:~$ sudo blkid 
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"
/dev/loop3: TYPE="squashfs"
/dev/loop4: TYPE="squashfs"
/dev/loop5: TYPE="squashfs"
/dev/loop6: TYPE="squashfs"
/dev/loop7: TYPE="squashfs"
/dev/nvme0n1: PTUUID="e5f2647b-98c1-45cd-93c1-4bdeb2bd11d1" PTTYPE="gpt"
/dev/nvme0n1p1: UUID="513E-F188" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="20210fff-3590-4c0f-826c-e64cb03894a8"
/dev/nvme0n1p2: UUID="18f88db1-b367-45b1-9444-0f2ca150583b" TYPE="ext4" PARTUUID="ce5ffbc2-5f80-4d12-9167-34d2b9676755"
/dev/sda1: UUID="a1c2f79e-34ac-410e-b110-ba52f526face" TYPE="ext4" PARTLABEL="kingston" PARTUUID="6e777b1f-a124-4821-8bae-c1b956e7e3fe"

так что id = 18f88db1-b367-45b1-9444-0f2ca150583b
смещение:

od@fjod-HP-Laptop-15-db1xxx:~$ sudo filefrag -v /swapfile                                                                                                                             
Тип файловой системы: ef53                                                                                                                                                                
Размер файла /swapfile составляет 10485760000 (2560000 блоков по 4096 байт)                                                                                                                    
 ext:     логический_смещение:        физическое_смещение: длина:   ожидаемое: флаги:                                                                                                            
   0:        0..    8191:   50290688..  50298879:   8192:                                                                                                                               
   1:     8192..   10239:   50302976..  50305023:   2048:   50298880:                                                                                                                   
   2:    10240..   14335:   50307072..  50311167:   4096:   50305024:                                                                                                                   
   3:    14336..   38911:   50472960..  50497535:  24576:   50311168:                                                                                                                   
   4:    38912..   45055:   50505728..  50511871:   6144:   50497536:  

в конце :

fjod@fjod-HP-Laptop-15-db1xxx:~$ cat /etc/initramfs-tools/conf.d/resume
resume=UUID=18f88db1-b367-45b1-9444-0f2ca150583b resume_offset=50290688

/etc/default/grub:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=18f88db1-b367-45b1-9444-0f2ca150583b resume_offset=50290688"

Я пробую гибернацию, но компьютер вообще не загружается.

————редактирование2————–

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

————-редактирование3———————–

Возврат из гибернации работает 50/50 и мучительно медленно. В конце концов, я не буду его использовать (вздох).

Вы используете этот учебник? В нем говорится, что вам нужен UUID корневого смонтированного раздела.

mount | grep "https://unix.stackexchange.com/"

Обратите внимание на ваш /dev/… для диска “https://unix.stackexchange.com/.”

sudo blkid -g
sudo blkid

UUID, который вы должны использовать, это тот, где находится ваш “/”, в вашем случае это, похоже, /dev/sda1 с UUID a1c2f79e-34ac-410e-b110-ba52f526face”.

Ответ или решение

Для решения вашей проблемы с режимом гибернации в Ubuntu 18 на ноутбуке необходимо учесть несколько важнейших аспектов настройки swap-файла и параметров загрузки системы. Рассмотрим все шаги подробно, чтобы обеспечить корректное функционирование режима гибернации.

1. Настройка swap-файла

Ваш swap-файл, как видно из команд, был успешно создан и активирован. Однако, поскольку это файл, а не раздел, он не имеет собственного UUID, который может быть использован напрямую в конфигурации для гибернации.

Это означает, что для правильной настройки гибернации необходимо указать offset вашего swap-файла, где размещены данные при гибернации. Вы уже правильно выполнили команду filefrag, которая дала вам физический адрес (offset) swap-файла:

resume_offset=50290688

2. UUID корневой файловой системы

Как указано в ответах на вашем форуме, для гибернации необходимо использовать UUID корневой файловой системы (раздела, на котором установлена операционная система). В вашем случае, это в основном /dev/nvme0n1p2, имеющий UUID:

18f88db1-b367-45b1-9444-0f2ca150583b

Тем не менее, некоторые пользователи также указывают UUID другого раздела (например, a1c2f79e-34ac-410e-b110-ba52f526face для /dev/sda1). Убедитесь, что вы используете именно тот UUID, который соответствует вашей корневой системе.

3. Конфигурация для гибернации

В файле /etc/initramfs-tools/conf.d/resume необходимо прописать следующее:

resume=UUID=ваш_UUID resume_offset=50290688

Убедитесь, что значение ваш_UUID верное (например, 18f88db1-b367-45b1-9444-0f2ca150583b).

В файле /etc/default/grub должно быть прописано:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=ваш_UUID resume_offset=50290688"

Сохраните изменения в этих двух файлах.

4. Обновление конфигурации

После внесения изменений не забудьте обновить конфигурацию initramfs и grub:

sudo update-initramfs -u
sudo update-grub

5. Проблемы с включением

Если после гибернации ноутбук не выключается или перезагружается, это может быть связано с неправильными настройками ACPI (Advanced Configuration and Power Interface). Попробуйте добавить следующие параметры к файлу grub, в зависимости от модели вашего ноутбука:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi=force"

6. Завершение конфигурации

После внесенных изменений перезагрузите систему и протестируйте режим гибернации. Если ситуация не улучшится, рекомендуется проверить журналы системы (например, journalctl -b -1 после перезагрузки) на наличие ошибок, связанных с ACPI или режимом гибернации.

Заключение

Настройка режима гибернации в Ubuntu с использованием swap-файла может быть немного сложной, но следуя указанным шагам и проверяя правильность конфигурации, вы сможете добиться нужного результата. Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться за помощью на специализированные форумы и сообщества.

Оцените материал
Добавить комментарий

Капча загружается...