Swap je místo na disku, které se používá, když je množství fyzické paměti RAM plné. Když v systému Linux dojde RAM, neaktivní stránky se přesunou z RAM do odkládacího prostoru.
Odkládací prostor může mít formu buď vyhrazeného odkládacího oddílu nebo odkládacího souboru. Při spuštění CentOS na virtuálním počítači obvykle není k dispozici odkládací oddíl, takže jedinou možností je vytvořit odkládací soubor.
Tento článek popisuje kroky pro přidání odkládacího souboru v systémech CentOS 8.
Vytvoření a aktivace odkládacího souboru #
Chcete-li přidat odkládací prostor v systému CentOS 8, proveďte následující kroky jako uživatel root nebo uživatel s právy sudo.
-
Začněte vytvořením souboru, který bude sloužit jako odkládací prostor:
sudo fallocate -l 1G /swapfileV tomto příkladu vytváříme odkládací soubor o velikosti 1G. Pokud potřebujete další swap, nahraďte
1Gs požadovanou velikostí.Pokud
fallocatenástroj není ve vašem systému dostupný nebo se vám zobrazí chybová zprávafallocate failed: Operation not supported, použijteddpříkaz k vytvoření odkládacího souboru:sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576 -
Nastavte oprávnění k souboru tak, aby pouze uživatel root mohl číst a zapisovat odkládací soubor:
sudo chmod 600 /swapfile -
Dále v souboru nastavte odkládací oblast Linuxu:
sudo mkswap /swapfileSetting up swapspace version 1, size = 1024 MiB (1073737728 bytes) no label, UUID=0abdb8ba-57d6-4435-8fd8-5db9fc705045 -
Aktivujte swap provedením následujícího příkazu:
sudo swapon /swapfile -
Ověřte, že je swap aktivní, pomocí
swaponnebofreepříkaz, jak je znázorněno níže:sudo swapon --showNAME TYPE SIZE USED PRIO /swapfile file 1024M 507.4M -1sudo free -htotal used free shared buff/cache available Mem: 488M 158M 83M 2.3M 246M 217M Swap: 1.0G 506M 517M -
Udělejte změnu trvalou přidáním položky swap do
/etc/fstabsoubor:sudo nano /etc/fstabVložte následující řádek:
/etc/fstab/swapfile swap swap defaults 0 0
Úprava hodnoty swappiness #
Swappiness je vlastnost linuxového jádra, která definuje, jak často bude systém používat odkládací prostor. Swappiness může mít hodnotu mezi 0 a 100. Nízká hodnota přiměje jádro pokusit se vyhnout swapování, kdykoli je to možné, zatímco vyšší hodnota způsobí, že jádro bude využívat odkládací prostor agresivněji.
Výchozí hodnota swappiness na CentOS 8 je 30. Aktuální hodnotu swappiness můžete zkontrolovat zadáním následujícího příkazu:
cat /proc/sys/vm/swappiness 30
Zatímco hodnota swappiness 30 je v pořádku pro stolní počítače a vývojové stroje, pro produkční servery možná budete muset nastavit nižší hodnotu.
Chcete-li například nastavit hodnotu swappiness na 10, zadejte:
sudo sysctl vm.swappiness=10
Chcete-li, aby tento parametr byl trvalý po restartování, připojte následující řádek do /etc/sysctl.conf soubor:
vm.swappiness=10
Optimální hodnota swappiness závisí na zátěži vašeho systému a na způsobu využití paměti. Tento parametr byste měli upravovat po malých krocích, abyste našli optimální hodnotu.
Odebrání odkládacího souboru #
Chcete-li deaktivovat a odebrat odkládací soubor, postupujte takto:
-
Deaktivujte odkládací prostor zadáním:
sudo swapoff -v /swapfile -
Odeberte položku swap
/swapfile swap swap defaults 0 0z/etc/fstabsoubor. -
Smažte aktuální soubor odkládacího souboru pomocí
rm:sudo rm /swapfile