GNU/Linux >> Znalost Linux >  >> Linux

Jak přidat odkládací prostor v linuxu

Kromě RAM existuje tzv. Swap, což je virtuální paměť, kam lze zaměnit obsah RAM (stránky) v případě, že již není k dispozici dostatek RAM. Tato swap je umístěna na disku a protože čtení a zápis disku je pomalejší než čtení z RAM, přístup na stránky paměti tam bude mít za následek zpoždění. Kromě vytváření souborového systému musí správci Linuxu věnovat velkou pozornost využití a potřebám swapu. Příspěvek popisuje 3 způsoby, jak přidat odkládací prostor do systémů Linux:

1. přidání odkládacího oddílu
2. přidání swapového objemu
3. přidání odkládacího souboru

1. Přidání odkládacího oddílu

1. Spusťte fdisk nebo rozdělené nástroj pro identifikaci disků s dostatečným nevyužitým (nerozděleným) diskovým prostorem. Vytvořte nový oddíl typu swap (82) . Například:

# fdisk /dev/sdb
.....
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-652, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-652, default 652): +1G

Ujistěte se, že jste upravili typ oddílu na 82 (Linux swap / Solaris) a na konec uložte tabulku oddílů.

Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 82
Changed system type of partition 1 to 82 (Linux swap / Solaris)

Command (m for help): w
The partition table has been altered!

2. Spusťte příkaz mkswap proti zařízení/oddílu vytvořenému dříve pomocí fdisk/parted. Volitelně -L lze použít k nastavení LABEL na odkládacím oddílu.

# mkswap -L swap1 /dev/sdb1
Setting up swapspace version 1, size = 1060252 KiB
LABEL=swap1, UUID=f0a884c9-59b3-47d2-9f06-5884f6a33806

3. Upravte soubor /etc/fstab pro připojení nového odkládacího zařízení při spouštění.

vi /etc/fstab
/dev/sdb1               swap                    swap    defaults        0 0

4. Spusťte příkaz swapon pro povolení všech odkládacích zařízení uvedených v souboru /etc/fstab a ověřte přidaný swap pomocí „swap -s“.

# swapon -a
# swapon -s
Filename				Type		Size	 Used	Priority
/dev/sdb1               partition	1060248	 0	    -1

1. Přidání odkládacího objemu

1. Můžeme také přidat svazek LVM jako odkládací prostor. K tomu potřebujeme vytvořit svazek v jakékoli z existujících skupin svazků.

# vgs
  VG         #PV #LV #SN Attr   VSize  VFree
  vg_geeklab   1   1   0 wz--n- 19.51g 1.94g
# lvcreate -L 1G -n lv_swap vg_geeklab
  Logical volume "lv_swap" created
# ll /dev/mapper/vg_geeklab-lv_swap
lrwxrwxrwx. 1 root root 7 Oct 22 19:36 /dev/mapper/vg_geeklab-lv_swap -> ../dm-1

2. Spusťte příkaz mkswap proti svazku a volitelně jej označte pomocí volby -L.

 mkswap -L swap /dev/mapper/vg_geeklab-lv_swap
mkswap: /dev/mapper/vg_geeklab-lv_swap: warning: don't erase bootbits sectors
        on whole disk. Use -f to force.
Setting up swapspace version 1, size = 1048572 KiB
LABEL=swap, UUID=6d228d34-b67e-4e38-82d4-f068c7bc097e

4. Chcete-li, aby položka swap zůstala zachována i po restartu, zadejte ji do souboru /etc/fstab.

# vi /etc/fstab
/dev/mapper/vg_geeklab-lv_swap	swap                    swap    defaults        0 0

5. Nakonec povolte swap pomocí příkazu swapon, který zase načte položky swapu v souboru /etc/fstab.

# swapon -a
# swapon -s
Filename				Type		Size	 Used	Priority
/dev/dm-1               partition	1048568	 0	    -1

3. Přidávání odkládacího souboru

1. V případě, že na disku nezbývá volné místo pro vytvoření nového oddílu, můžeme soubor použít také jako swap. Chcete-li to provést, použijte příkaz dd k vytvoření souboru požadované velikosti.

# dd if=/dev/zero of=/root/swapfile01 bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 6.73334 s, 159 MB/s

2. Vytvořil jsem odkládací soubor v adresáři /root, aby byl bezpečnější, protože běžný uživatel do tohoto adresáře nemůže vstoupit. Chcete-li být bezpečnější, použijte pro soubor příslušná oprávnění.

# chmod 600 /root/swapfile01

3. Spusťte příkaz mkswap pro převod souboru na odkládací soubor.

# mkswap -L swap01 /root/swapfile01
Setting up swapspace version 1, size = 1048572 KiB
LABEL=swap01, UUID=ba5f7163-43f6-4001-84c1-2fca3935301f

4. Upravte soubor /etc/fstab a přidejte nový odkládací soubor.

# vi /etc/fstab
/root/swapfile01        swap                    swap    defaults        0 0

5. Spuštěním příkazu swapon povolte všechna odkládací zařízení uvedená v souboru /etc/fstab.

# swapon -a
# swapon -s
Filename				Type		Size	 Used	Priority
/swap/swapfile01                        file		1048568	0	-1

Odebírání swapu

V případě, že chcete odstranit přidaný swap, můžete to udělat příkazem swapoff. Ujistěte se, že jste po zakázání swapu odstranili příslušnou položku swapu ze souboru /etc/fstab.

# swapoff -a    ### this will remove all swap(s) mentioned in .etc.fstab
# swapoff /dev/sdb1    ### to remove individual swap

Jak zkontrolovat využití swapu

Chcete-li zkontrolovat využití swapu, můžete použít kterýkoli z níže uvedených nástrojů:
1. zdarma

# free
             total       used       free     shared    buffers     cached
Mem:       1004608     934036      70572          0      30124     769640
-/+ buffers/cache:     134272     870336
Swap:      1060248          0    1060248

2. /proc/meminfo

# grep Swap /proc/meminfo
SwapCached:            0 kB
SwapTotal:       1060248 kB
SwapFree:        1060248 kB

3. nahoře

# top
.......
Mem:   1004608k total,   934780k used,    69828k free,    30124k buffers
Swap:  1060248k total,        0k used,  1060248k free,   770156k cached
.......

4. vmstat

# vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0  69828  30124 770156    0    0    40   403   23   22  0  1 99  0  0


Linux
  1. Jak vytvořit nebo zvětšit swapový prostor v Linuxu

  2. Jak přidat odkládací prostor na Debianu 11

  3. Kolik swapového prostoru přidat pro Oracle Database v Linuxu

  1. Jak přidat odkládací prostor v Ubuntu 18.04

  2. Jak přidat odkládací prostor na Ubuntu 22.04

  3. Jak zvětšit odkládací prostor v Linuxu

  1. Jak zkontrolovat místo na disku v Linuxu

  2. Jak přidat odkládací prostor na Ubuntu 18.04

  3. Jak přidat odkládací prostor na Ubuntu 20.04