Jak zvýšit limitní počet otevřených souborů v Linuxu

Při správě více procesů v prostředích Linuxu je ideální vědět, jak můžeme definovat maximální počet otevřených souborů, abychom měli mnohem přesnější ovládání nebo se vyhnuli zneužití serverových prostředků. Z tohoto důvodu je vhodné, abychom vždy vzali v úvahu možnosti, které náš systém nabízí, abychom jej mohli efektivněji spravovat.

Limit otevřených souborů v distribucích Linux lze upravit díky příkazu ulimit A proto dnes tento tutoriál při této příležitosti analyzuje, jak zjistit počet otevřených souborů v Linuxu se zaměřením na zvýšení výchozího limitu.

Dále uvidíme, jak můžeme rozšířit stanovený limit souborů, které lze otevřít v systémech Ubuntu Linux.

1. Zjistěte aktuální limit souborů v Ubuntu Linux


Prvním krokem, který musíme udělat, je přesně vědět, jaký limit souborů můžeme v Linuxu otevřít, v tomto případě používáme server Ubuntu 17.04, a abychom tuto hodnotu znali, spustíme následující příkaz:
 cat / proc / sys / fs / file-max

ZVĚTŠIT

Zobrazený výsledek udává počet souborů, které může uživatel otevřít při přihlášení, a to bude proměnlivé v každém distribuci Linuxu.

2. Znáte limity hardwaru a softwaru v Ubuntu Linux


Dalším důležitým aspektem, který je třeba vzít v úvahu, je znát limity systému na hardwarové i softwarové úrovni a toho je dosaženo provedením následujících příkazů:
 ulimit -Hn ulimit -Sn

ZVĚTŠIT

3. Zkontrolujte výchozí limity Linuxu pro popisovače souborů


Když na serverech spouštíme určité aplikace, je nutné, aby měly větší počet souborů, protože neustále registrují události nebo procesy, které zahrnují velký počet souborů, můžeme zmínit aplikace jako PHP, MySQL, MariaDB, mezi ostatní.

V těchto případech můžeme limit zvýšit úpravou fs.file-max soubor prostřednictvím utility sysctl.
Pamatujte, že díky sysctl můžeme konfigurovat parametry jádra v Linuxu.

Krok 1
Abychom to reprezentovali, zvýšíme limit otevřených souborů na 600 000, protože jako uživatel root spustíme následující řádek:

 sudo sysctl -w fs.file -max = 600000

ZVĚTŠIT

Krok 2
Abychom ověřili, že nový limit byl stanoven správně, spustíme následující řádek:

 cat / proc / sys / fs / file-max

ZVĚTŠIT

Krok 3
Jak vidíme, limit jsme stanovili my.
Jeden aspekt, který je třeba mít na paměti, je, že provedením tohoto procesu bude stanovený limit k dispozici pouze do dalšího přihlášení, takže pokud chceme, aby byl tento limit konstantní, musíme pomocí preferovaného editoru přistupovat k následujícímu souboru:

 sudo nano /etc/sysctl.conf 
Krok 4
Do otevřeného souboru přidáme na konec následující řádek:
 fs.file-max = 600000 

ZVĚTŠIT

Krok 5
Udržujeme změny pomocí kláves:

Ctrl + O

Y opustili jsme editora pomocí klíčů

Ctrl + X

Krok 6
Limit souboru můžeme znovu zkontrolovat spuštěním následujícího řádku:

 cat / proc / sys / fs / file-max
Krok 7
Pro uplatnění změn bude nutné relaci zavřít, a pokud chceme, aby byly provedeny okamžitě, provedeme následující příkaz:
 sysctl -p

4. Nastavte limity otevřených souborů na uživatele v Ubuntu Linux

Krok 1
Je možné, že chceme stanovit určité limity otevřených souborů pro konkrétního uživatele v doméně, proto musíme přistupovat k následujícímu konfiguračnímu souboru:

 sudo nano /etc/security/limits.conf
Krok 2
V závěrečné části toho uvidíme následující syntaxi:
 
Krok 3
Tam musíme přidat uživatelské jméno, typ prvku a limit pro přiřazení. Změny uložíme a ukončíme editor.

ZVĚTŠIT

Tímto způsobem máme možnost stanovit nebo zvýšit limity pro uživatele pro otevřené soubory v různých distribucích Linuxu a zejména v Ubuntu Server 17.04.

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave