Obsah

Správa odkládacího prostoru (swapu)


1. Rozšíření odkládacího prostoru (swapu)

1.1. Rozšíření aktuálního odkládacího prostoru

(procesy využívající swap musí být nejdříve zastaveny)

1.1.1. Zobrazte aktuální využití paměti a swapu:

# free -h


1.1.2. Zobrazte 10 procesů, které nejvíce využívají swap včetně procentuálního vyjádření:

# find /proc -maxdepth 2 -path "/proc/[0-9]*/status" -readable -exec awk -v FS=":" -v TOTSWP="$(sed 1d /proc/swaps | awk 'BEGIN{sum=0} {sum=sum+$(NF-2)} END{print sum}')" '{process[$1]=$2; sub(/^[ \t]+/,"",process[$1]);} END {if(process["VmSwap"] && process["VmSwap"] != "0 kB") {used_swap=process["VmSwap"]; sub(/[ a-zA-Z]+/,"",used_swap); percent=(used_swap/TOTSWP*100); printf "%10s %-30s %20s %6.2f%\n",process["Pid"],process["Name"],process["VmSwap"],percent}}' '{}' \; | awk '{print $(NF-2),$0}' | sort -hr | head | cut -d " " -f2-


1.1.3. Ověřte, zda má skupina svazků k dispozici dostatek volného místa:

# vgs


1.1.4. Deaktivujte odkládací prostor:

# swapoff /dev/vg00/swap_lv


1.1.5. Rozšiřte logický svazek:

# lvresize -L +2048M /dev/vg00/swap_lv


1.1.6. Naformátujte logický svazek jako odkládací prostor:

# mkswap /dev/vg00/swap_lv


1.1.7. Aktivujte odkládací prostor:

# swapon /dev/vg00/swap_lv


1.1.8. Zobrazte nové využití paměti a swapu:

# free -h


1.2. Vytvoření dalšího odkládacího prostoru

(procesy využívající swap nelze zastavit)

A. Vytvoření logického svazku pro odkládací prostor

1. Zobrazte aktuální využití paměti a swapu:

# free -h


2. Ověřte, zda má skupina svazků k dispozici dostatek volného místa:

# vgs


3. Vytvořte logický svazek o velikosti 2 GB pro odkládací prostor:

# lvcreate -n swap2_lv -L 2048M vg00


4. Naformátujte logický svazek jako odkládací prostor:

# mkswap /dev/vg00/swap2_lv


5. Aktivujte odkládací prostor:

# swapon /dev/vg00/swap2_lv


6. Upravte /etc/fstab, aby byl odkládací prostor k dispozici trvale:

# echo '/dev/mapper/vg00-swap2_lv swap swap defaults 0 0' >> /etc/fstab


7. Informujte systemd o nové konfiguraci /etc/fstab (RHEL/CentOS 7/8):

# systemctl daemon-reload


8. Zobrazte nové využití paměti a swapu:

# free -h


B. Vytvoření souboru pro odkládací prostor

1. Zobrazte aktuální využití paměti a swapu:

# free -h


2. Ověřte, zda je v kořenovém souborovém systému dostatek volného místa:

# df -h /


3. Vytvořte soubor o velikosti 2 GB pro odkládací prostor:

# dd if=/dev/zero of=/swapfile bs=1024 count=2097152


4. Naformátujte soubor jako odkládací prostor:

# mkswap /swapfile


5. Nastavte souboru správná přístupová práva:

# chmod 600 /swapfile


6. Aktivujte odkládací prostor:

# swapon /swapfile


7. Upravte /etc/fstab, aby byl odkládací prostor k dispozici trvale:

# echo '/swapfile swap swap defaults 0 0' >> /etc/fstab


8. Informujte systemd o nové konfiguraci /etc/fstab (RHEL/CentOS 7/8):

# systemctl daemon-reload


9. Zobrazte nové využití paměti a swapu:

# free -h

2. Nastavení hodnoty swappiness

2.1. Zobrazte hodnotu swappiness:

# sysctl vm.swappiness
vm.swappiness = 60

nebo

# cat /proc/sys/vm/swappiness
60


2.2. Trvale změňte swapiness na požadovanou hodnotu:

# echo 'vm.swappiness=30' >> /etc/sysctl.conf

nebo

# echo 'vm.swappiness=30' >> /etc/sysctl.d/99-swappiness.conf


2.3. Znovu načtěte nastavení:

# sysctl -p

nebo

# sysctl -p /etc/sysctl.d/99-swappiness.conf


2.4. Ověřte novou hodnotu swappiness:

# sysctl vm.swappiness
vm.swappiness = 30

3. Smazání odkládacího prostoru (swapu)

A. Smazání logického svazku s odkládacím prostorem

1. Zobrazte aktuální využití paměti a swapu:

# free -h


2. Deaktivujte odkládací prostor:

# swapoff /dev/vg00/swap2_lv


3. Smažte logický svazek s odkládacím prostorem:

# lvremove /dev/vg00/swap2_lv


4. Smažte záznam z /etc/fstab:

# sed -i '/swap2_lv/d' /etc/fstab


5. Informujte systemd o nové konfiguraci /etc/fstab (RHEL/CentOS 7/8):

# systemctl daemon-reload


6. Zobrazte nové využití paměti a swapu:

# free -h


B. Smazání souboru s odkládacím prostorem

1. Zobrazte aktuální využití paměti a swapu:

# free -h


2. Deaktivujte odkládací prostor:

# swapoff /swapfile


3. Smažte soubor s odkládacím prostorem:

# rm -f /swapfile


4. Smažte záznam z /etc/fstab:

# sed -i '/swapfile/d' /etc/fstab


5. Informujte systemd o nové konfiguraci /etc/fstab (RHEL/CentOS 7/8):

# systemctl daemon-reload


6. Zobrazte nové využití paměti a swapu:

# free -h