Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
  1. По необходимости полностью отключить

    свопинг

    подкачку:

    Command

    sudo -i
    sysctl -w vm.swappiness=1
    echo vm.swappiness=1 >> /etc/sysctl.d/local.conf
    exit


  2. Создать на дисковом разделе, на котором размещена корневая файловая система, файл достаточного размера, например, с именем /swap (в примере создаётся файл размером 16Гигабайт):

    Command

    sudo -i
    fallocate -l 16g /swap
    mkswap /swap
    echo "/swap swap swap defaults 0 0" >> /etc/fstab
    swapon /swap
    exit


  3. Определить идентификатор (UUID) дискового раздела, на котором размещен созданный файл:

    Command
    sudo findmnt -no UUID -T .gitconfig

    В результате выполнения команды будет выдана строка с идентификатором вида

    Информация
    880d582e-5797-4d06-9e33-71da00a7aca2


  4. Определить смещение файла

    Информация
    filefrag -v /swap


    В результате выполнения команды будет выдана информация вида:

    Информация
    Filesystem type is: ef53
    File size of /swap is 4294967296 (1048576 blocks of 4096 bytes)
    ext: logical_offset: physical_offset: length: expected: flags:
    0:     0.. 0: 38912.. 38912: 1:
    1:     1.. 22527: 38913.. 61439: 22527: unwritten
    2:     22528.. 53247: 899072.. 929791: 30720: 61440: unwritten

    где нужное смещение находится в первой строке с числами (выделено жирным шрифтом).


  5. В файл /etc/initramfs/config.d/resume внести запись с параметрами восстановления (ранее полученные UUID и смещение):

    Информация
    RESUME=UUID=880d582e-5797-4d06-9e33-71da00a7aca2 resume_offset=38912


  6. В файл /etc/default/grub добавить аналогичные параметры восстановления, например:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet net.ifnames=0 UUID=880d582e-5797-4d06-9e33-71da00a7aca2 resume_offset=38912"
    ...


  7. Обновить ramfs и grub:

    Command
    sudo update-grub
    sudo update-initramfs -u -k all



  8. Перезагрузить систему.


Информация

Рекомендации по выбору размера файла (или дискового раздела) подкачки, достаточного для успешного сохранения образа памяти различаются: в Интернете встречаются значения от половины раздела оперативной памяти до двукратного размера оперативной памяти. При этом в файле /etc/power/image_size хранится значение размера, в который ядро пытается уместить сохраняемый образ памяти. По умолчанию это значение равно 2/5 размера оперативной памяти, но может быть изменено администратором системы даже до нуля, и, как указано в документации (https://www.kernel.org/doc/Documentation/power/interface.txt), ядро не будет отказываться уходить в спящий режим, а будет пытаться уместить образ в указанный размер.

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