Ulimit je nástroj příkazového řádku v operačním systému založeném na Linuxu, který se používá k přidělování a omezování zdrojů. Můžete jej použít k řízení zdrojů na globální, skupinové a uživatelské úrovni. Nastavením správných limitů bude váš systém fungovat optimálně. Pomocí ulimit můžete nastavit omezení zdrojů používaných procesem, aby mohly běžet pouze důležité procesy na vašich serverech.
V tomto příspěvku vám ukážeme, jak ovládat využití systémových prostředků pomocí ulimit v Linuxu.
Předpoklady
- Nový server Ubuntu 20.04 na cloudové platformě Atlantic.Net
- Heslo uživatele root nakonfigurované na vašem serveru
Vytvořte cloudový server Atlantic.Net
Nejprve se přihlaste ke svému cloudovému serveru Atlantic.Net. Vytvořte nový server a jako operační systém vyberte Ubuntu 20.04 s alespoň 2 GB RAM. Připojte se ke svému cloudovému serveru přes SSH a přihlaste se pomocí přihlašovacích údajů zvýrazněných v horní části stránky.
Jakmile se přihlásíte ke svému serveru Ubuntu 20.04, spusťte následující příkaz a aktualizujte svůj základní systém nejnovějšími dostupnými balíčky.
apt-get update -y
Základní syntaxe
Základní syntaxe příkazu ulimit je uvedena níže:
ulimit [option]
Stručné vysvětlení každé možnosti je uvedeno níže:
- -a:Zobrazí limity pro všechny uživatele.
- -d:Definuje velikost datové oblasti.
- -c:Definuje velikost výpisu jádra.
- -e:Používá se k definování priority.
- -s:Definuje maximální velikost zásobníku.
- -u:Definuje maximální počet uživatelských procesů.
Jak používat ulimit
Chcete-li zobrazit limit prostředků všech uživatelů, spusťte následující příkaz:
ulimit -a
Výstup:
core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 15237 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 15237 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
Chcete-li zobrazit limit prostředků pro konkrétního uživatele, spusťte následující příkaz:
ulimit -a root
Výstup:
core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 15237 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 15237 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
Chcete-li zobrazit měkký limit aktuálního uživatele, spusťte následující příkaz:
ulimit -S
Chcete-li zobrazit pevný limit aktuálního uživatele, spusťte následující příkaz:
ulimit -H
Chcete-li zkontrolovat pevný limit alokace na maximální počet uživatelských procesů, spusťte následující příkaz:
ulimit -Hu
Výstup:
15237
Chcete-li dočasně změnit výchozí pevný limit, spusťte následující příkaz:
ulimit -u 20000
Chcete-li pevný limit změnit trvale, upravte soubor /etc/security/limits.conf:
nano /etc/security/limits.conf
Přidejte následující řádek:
root hard nproc 20000
Po dokončení uložte a zavřete soubor.
Chcete-li zkontrolovat limit otevřených souborů, spusťte následující příkaz:
ulimit -n
Chcete-li změnit limit otevřených souborů, spusťte následující příkaz:
ulimit -n 1000
Chcete-li zkontrolovat limit maximální velikosti paměti, spusťte následující příkaz:
ulimit -m
Chcete-li změnit limit maximální velikosti paměti, spusťte následující příkaz:
ulimit -m 2000
Závěr
Ve výše uvedené příručce jste se naučili, jak omezit systémové prostředky pomocí příkazu ulimit. ulimit vám pomůže zajistit, aby váš systém běžel s optimálním výkonem. Vyzkoušejte to ještě dnes na svém hostingovém účtu Atlantic.Net VPS!