Tags: Mobile web edit Mobile edit |
|
Line 164: |
Line 164: |
|
| |
|
| Подробные инструкции о том, как это сделать, можно найти в этом [https://github.com/zfsonlinux/pkg-zfs/wiki/HOWTO-use-a-zvol-as-a-swap-device руководстве по ZoL]. | | Подробные инструкции о том, как это сделать, можно найти в этом [https://github.com/zfsonlinux/pkg-zfs/wiki/HOWTO-use-a-zvol-as-a-swap-device руководстве по ZoL]. |
| =Автоматизированное управление подкачкой с помощью systemd-swap=
| |
| {{note|Использование systemd-swap с btrfs/zfs или с поддержкой гибернации требует специальных действий, выходящих за рамки данной статьи}}
| |
|
| |
| Можно автоматически управлять размером файла подкачки с помощью {{ic|systemd-swap}}. Он может создавать файлы подкачки динамически, основываясь на потребностях памяти. Это также простой способ включить/управлять [[Swap/ru#.D0.98.D1.81.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_zswap_.D1.81_systemd-swap|zswap]].
| |
|
| |
| ==Установка и настройка systemd-swap==
| |
|
| |
| Сначала установите и включите {{ic|systemd-swap}}:
| |
| pamac install systemd-swap
| |
| sudo systemctl enable systemd-swap.service
| |
|
| |
|
| |
| Далее включите динамическое управление подкачкой, создав файл {{ic|/etc/systemd/swap.conf.d/myswap.conf}} со следующими параметрами:
| |
| zswap_enabled=0
| |
| zram_enabled=0
| |
| swapfc_enabled=1
| |
|
| |
|
| |
| Если Вы предпочитаете одну команду для создания этого файла, то должны использовать:
| |
| sudo bash -c 'echo -e "zswap_enabled=0\nzram_enabled=0\nswapfc_enabled=1" > /etc/systemd/swap.conf.d/myswap.conf'
| |
|
| |
| ==Удаление другой подкачки==
| |
|
| |
| Для того чтобы systemd-swap работал эффективно - необходимо удалить все имеющиеся у вас традиционные устройства подкачки.
| |
|
| |
|
| |
| Для отображения текущих устройств подкачки можно использовать команду {{ic|swapon}}. Например, на моей тестовой машине отображается следующее:
| |
| swapon
| |
| NAME TYPE SIZE USED PRIO
| |
| /swapfile file 4G 0B -2
| |
| /dev/sda3 partition 8.4G 0B -3
| |
|
| |
|
| |
| В этом примере есть два устройства подкачки: файл подкачки и раздел подкачки. Чтобы отключить их - мы можем использовать команду {{ic|swapoff}}.
| |
| sudo swapoff /swapfile
| |
| sudo swapoff /dev/sda3
| |
|
| |
|
| |
| Далее нам нужно удалить их.
| |
| Раздел подкачки нужно будет удалить с помощью вашего любимого инструмента разметки. Файл подкачки можно удалить просто удалив его как обычный файл.
| |
| sudo rm /swapfile
| |
|
| |
|
| |
| Нам также нужно удалить все строки, связанные с подкачкой, из {{ic|/etc/fstab}}. Отредактируйте файл с помощью [[Special:MyLanguage/Viewing_and_editing_configuration_files|подходящего текстового редактора]] и удалите или закомментируйте строки для раздела подкачки. В приведенном выше примере мы удалим эти строки:
| |
| UUID=c2430cf1-8ea9-4422-a5c5-5a38779194c3 swap swap defaults,noatime 0 2
| |
| /swapfile none swap defaults 0 0
| |
|
| |
|
| |
| При настроенной гибернации также потребуется отредактировать {{ic|/etc/default/grub}}. Найдите и удалите опцию {{ic|<nowiki>resume=UUID=...</nowiki>}} или замените UUID на новое правильное значение. В приведенном выше примере мы удалим этот текст:
| |
| resume=UUID=c2430cf1-8ea9-4422-a5c5-5a38779194c3
| |
| Затем запустите:
| |
| sudo update-grub
| |
| Если вы полностью удаляете спящий режим - удалите {{ic|resume}} из строки {{ic|HOOKS}} в {{ic|/etc/mkinitcpio.conf}} и запустите:
| |
| sudo mkinitcpio -P
| |
|
| |
|
| |
| Далее следует перезагрузиться. После перезагрузки при запуске {{ic|swapon}} вы должны увидеть что-то похожее на следующее:
| |
| NAME TYPE SIZE USED PRIO
| |
| /var/lib/systemd-swap/swapfc/1 file 512M 0B -2
| |
|
| |
|
| |
| systemd-swap будет добавлять и удалять файлы подкачки в соответствии с потреблением памяти.
| |
|
| |
| {{note|Если вы не удалите существующий раздел подкачки - он будет автоматически активирован systemd, даже если вы удалили его из fstab}}
| |
|
| |
|
| |
| ==Использование zswap с systemd-swap==
| |
|
| |
| zswap - это сжатая подкачка, хранящаяся в оперативной памяти. zswap хранит наиболее часто используемые страницы в оперативной памяти и записывает менее используемые страницы в пространство подкачки на диске. При больших рабочих нагрузках это приводит к увеличению производительности подкачки и снижению износа SSD.
| |
|
| |
| Чтобы включить zswap с помощью systemd-swap просто измените инструкции выше и установите параметр ядра Linux zswap_enabled=1
| |
| =Настройка и соображения по производительности= | | =Настройка и соображения по производительности= |
|
| |
|
Line 264: |
Line 193: |
| * Документация ядра Linux про [https://www.kernel.org/doc/Documentation/vm/zswap.txt zswap] | | * Документация ядра Linux про [https://www.kernel.org/doc/Documentation/vm/zswap.txt zswap] |
| * Доументация ядра Linux про [https://www.kernel.org/doc/Documentation/sysctl/vm.txt swappiness и vfs_cache_pressure] | | * Доументация ядра Linux про [https://www.kernel.org/doc/Documentation/sysctl/vm.txt swappiness и vfs_cache_pressure] |
| * [https://github.com/Nefelim4ag/systemd-swap страница systemd-swap]
| |
| * Руководство по ZFS в Linux по [https://github.com/zfsonlinux/pkg-zfs/wiki/HOWTO-use-a-zvol-as-a-swap-device разделам Swap] | | * Руководство по ZFS в Linux по [https://github.com/zfsonlinux/pkg-zfs/wiki/HOWTO-use-a-zvol-as-a-swap-device разделам Swap] |
|
| |
|
|
| |
|
| [[Category:Contents Page{{#translation:}}]] | | [[Category:Contents Page{{#translation:}}]] |