Otázka: Chtěl bych do svého systému Linux přidat více odkládacího prostoru. Můžete na jasných příkladech vysvětlit, jak zvětšit swapovací prostor?
Odpověď: Můžete buď použít vyhrazený oddíl pevného disku k přidání nového odkládacího prostoru, nebo vytvořit odkládací soubor na existujícím souborovém systému a použít jej jako odkládací prostor.
Kolik odkládacího prostoru systém aktuálně využívá?
Příkaz Free zobrazí odkládací prostor. free -k zobrazí výstup v KB.
# free -k total used free shared buffers cached Mem: 3082356 2043700 1038656 0 50976 1646268 -/+ buffers/cache: 346456 2735900 Swap: 4192956 0 4192956
Příkaz Swapon s volbou -s zobrazí aktuální odkládací prostor v KB.
# swapon -s Filename Type Size Used Priority /dev/sda2 partition 4192956 0 -1
Swapon -s je stejný jako následující.
# cat /proc/swaps Filename Type Size Used Priority /dev/sda2 partition 4192956 0 -1
Metoda 1:Použijte oddíl pevného disku pro další odkládací prostor
Pokud máte další pevný disk (nebo volné místo na stávajícím disku), vytvořte oddíl pomocí příkazu fdisk. Předpokládejme, že tento oddíl se nazývá /dev/sdc1
Nyní nastavte tento nově vytvořený oddíl jako odkládací oblast pomocí příkazu mkswap, jak je znázorněno níže.
# mkswap /dev/sdc1
Povolte použití swapového oddílu pomocí příkazu swapon, jak je znázorněno níže.
# swapon /dev/sdc1
Chcete-li tento oddíl odkládacího prostoru zpřístupnit i po restartu, přidejte do souboru /etc/fstab následující řádek.
# cat /etc/fstab /dev/sdc1 swap swap defaults 0 0
Ověřte, zda je nově vytvořená odkládací oblast dostupná pro vaše použití.
# swapon -s Filename Type Size Used Priority /dev/sda2 partition 4192956 0 -1 /dev/sdc1 partition 1048568 0 -2 # free -k total used free shared buffers cached Mem: 3082356 3022364 59992 0 52056 2646472 -/+ buffers/cache: 323836 2758520 Swap: 5241524 0 5241524
Poznámka: Ve výstupu příkazu swapon -s bude ve sloupci Typ uvedeno „oddíl“, pokud je odkládací prostor vytvořen z diskového oddílu.
Metoda 2:Použijte soubor pro další odkládací prostor
Pokud nemáte žádné další disky, můžete vytvořit soubor někde ve vašem souborovém systému a použít tento soubor jako odkládací prostor.
Následující příklad příkazu dd vytvoří odkládací soubor s názvem „myswapfile“ v adresáři /root o velikosti 1024 MB (1 GB).
# dd if=/dev/zero of=/root/myswapfile bs=1M count=1024 1024+0 records in 1024+0 records out # ls -l /root/myswapfile -rw-r--r-- 1 root root 1073741824 Aug 14 23:47 /root/myswapfile
Změňte oprávnění odkládacího souboru tak, aby k němu měl přístup pouze root.
# chmod 600 /root/myswapfile
Vytvořte tento soubor jako odkládací soubor pomocí příkazu mkswap.
# mkswap /root/myswapfile Setting up swapspace version 1, size = 1073737 kB
Povolte nově vytvořený odkládací soubor.
# swapon /root/myswapfile
Chcete-li tento odkládací soubor zpřístupnit jako odkládací oblast i po restartu, přidejte do souboru /etc/fstab následující řádek.
# cat /etc/fstab /root/myswapfile swap swap defaults 0 0
Ověřte, zda je nově vytvořená odkládací oblast dostupná pro vaše použití.
# swapon -s Filename Type Size Used Priority /dev/sda2 partition 4192956 0 -1 /root/myswapfile file 1048568 0 -2 # free -k total used free shared buffers cached Mem: 3082356 3022364 59992 0 52056 2646472 -/+ buffers/cache: 323836 2758520 Swap: 5241524 0 5241524
Poznámka: Ve výstupu příkazu swapon -s bude ve sloupci Typ uvedeno „soubor“, pokud je odkládací prostor vytvořen z odkládacího souboru.
Pokud nechcete restartovat, abyste ověřili, zda systém zabírá veškerý odkládací prostor uvedený v /etc/fstab, můžete provést následující, které zakáže a povolí všechny odkládací oddíly uvedené v /etc/fstab
# swapoff -a # swapon -a