it:server:pamet-ram-swap

Práce s pamětí RAM v Linuxu

Přestal jsem používat Swap na počítači, kde mám dostatek RAM paměti a chtěl jsem blíže porozumět tomu, jak Linux nakládá s pamětí a jejím uvolňování. Docela stručně a srozumitelně o tom popisuje stránka https://www.linuxatemyram.com/.

Pokud si vyjedu výpis zaplnění paměti v (MB):

$ free -m
                total        used        free      shared  buff/cache   available
  Mem:           1504        1491          13           0         855      792
  Swap:          2047           6        2041

Tak z výpisu se nekoukám na sloupeček free, ale zajímá mě sloupeček available. Protože část paměti je sice obsazená, ale je stále považována jako k využití. Takže sloupeček free je z hlediska chápání volné RAM zavádějící.

Linux využívá nevyužitou RAM pro cacheování disku - řekněme do maxima fyzické RAM. Pokud ale aplikace potřebuje více RAM a není už žádná volná, tak systém začne uvolňovat část paměti pro cacheování disku. Pokud chci jednorázově bezpečně uvolnit RAM (která sloužila jako cache pro disk), tak to lze nedestruktivně udělat takto:

echo 3 | sudo tee /proc/sys/vm/drop_caches

Tento návod popisuje, jak vytvořit a zapnout swap file na Raspberry Pi.

1. Vytvoření swapového souboru:

Pro vytvoření swapového souboru o velikosti 1 GB použijte následující příkaz:

sudo fallocate -l 1G /swapfile

Poznámka: Velikost můžete upravit podle potřeby (např. pro 512 MB použijte 512M).

2. Nastavení správných oprávnění:

Nastavte oprávnění k souboru příkazem:

sudo chmod 600 /swapfile

3. Inicializace swapového souboru: Inicializujte swapový soubor příkazem:

sudo mkswap /swapfile

4. Zapnutí swapového souboru: Swapový soubor aktivujte příkazem:

sudo swapon /swapfile
sudo swapon --show

5. Automatické zapnutí při startu: Pro zajištění automatického zapnutí swapového souboru při startu systému přidejte následující řádek do souboru /etc/fstab:

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

6. Ověření funkčnosti swapu: Pomocí příkazu níže můžete ověřit, zda swap funguje:

free -h

Pokud budete potřebovat změnit velikost nebo konfiguraci swapového souboru, můžete jej odstranit, vytvořit nový s jinou velikostí a zopakovat uvedené kroky.

  • it/server/pamet-ram-swap.txt
  • Poslední úprava: 2025/01/13 01:11
  • autor: Petr Nosek