Kako povećati granični broj otvorenih datoteka u Linuxu

Prilikom upravljanja s više procesa u Linux okruženjima, idealno je znati kako možemo definirati najveći broj otvorenih datoteka kako bismo imali puno precizniju kontrolu ili izbjegli zlouporabu resursa poslužitelja. Iz tog razloga, prikladno je da uvijek uzimamo u obzir mogućnosti koje nudi naš sustav kako bismo njime mogli učinkovitije upravljati.

Granica otvorenih datoteka na distribucijama Linux može se podesiti zahvaljujući naredbi ulimit I zato će danas ovaj vodič kroz ovu priliku analizirati kako ustanoviti broj otvorenih datoteka u Linuxu usredotočujući se na povećanje zadanog ograničenja.

Zatim ćemo vidjeti kako možemo proširiti utvrđeno ograničenje datoteka koje se mogu otvoriti u Ubuntu Linux sustavima.

1. Upoznajte trenutačno ograničenje datoteka na Ubuntu Linuxu


Prvi korak koji moramo poduzeti je znati točno koje ograničenje datoteka možemo otvoriti u Linuxu, u ovom slučaju koristimo Ubuntu 17.04 poslužitelj, a da bismo znali ovu vrijednost izvršit ćemo sljedeću naredbu:
 cat / proc / sys / fs / file-max

POVEĆAJTE

Prikazani rezultat označava broj datoteka koje korisnik može otvoriti po prijavi, a to će biti promjenjivo u svakom Linux distribuciji.

2. Upoznajte granice hardvera i softvera u Ubuntu Linuxu


Drugi važan aspekt koji treba uzeti u obzir je poznavanje granica sustava i na razini hardvera i softvera, a to se postiže izvršavanjem sljedećih naredbi:
 ulimit -Hn ulimit -Sn

POVEĆAJTE

3. Provjerite zadana ograničenja Linuxa za deskriptore datoteka


Kada pokrećemo određene aplikacije na poslužiteljima, potrebno je da imaju veći broj datoteka budući da stalno registriraju događaje ili procese koji uključuju veliki broj datoteka, možemo spomenuti aplikacije poput PHP, MySQL, MariaDB, među drugi.

U tim slučajevima ograničenje možemo povećati uređivanjem fs.file-max datoteka putem komunalnog sysctl.
Upamtite da zahvaljujući sysctl -u možemo konfigurirati parametre jezgre u Linuxu.

Korak 1
Da bismo to predstavili, povećat ćemo ograničenje otvorenih datoteka na 600.000, za to ćemo izvršiti sljedeći redak kao root korisnik:

 sudo sysctl -w fs.file -max = 600000

POVEĆAJTE

Korak 2
Kako bismo provjerili je li novo ograničenje ispravno uspostavljeno, izvršit ćemo sljedeći redak:

 cat / proc / sys / fs / file-max

POVEĆAJTE

Korak 3
Kao što vidimo, granicu smo sami postavili.
Jedan aspekt koji treba imati na umu je da će provođenjem ovog procesa utvrđeno ograničenje biti dostupno samo do sljedeće prijave, pa ako želimo da ovo ograničenje bude konstantno, moramo pristupiti sljedećoj datoteci pomoću željenog uređivača:

 sudo nano /etc/sysctl.conf 
Korak 4
U otvorenu datoteku na kraju ćemo dodati sljedeći redak:
 fs.file-max = 600000 

POVEĆAJTE

Korak 5
Zadržavamo promjene pomoću tipki:

Ctrl + O

Y napustili smo urednika pomoću ključeva

Ctrl + X

Korak 6
Ograničenje broja datoteka možemo ponovno provjeriti izvršavanjem sljedećeg retka:

 cat / proc / sys / fs / file-max
Korak 7
Bit će potrebno zatvoriti sesiju kako bi se primijenile promjene, a ako želimo da se odmah izvrše, izvršit ćemo sljedeću naredbu:
 sysctl -p

4. Postavite ograničenja otvorenih datoteka po korisniku na Ubuntu Linuxu

Korak 1
Moguće je da želimo uspostaviti određena ograničenja otvorenih datoteka za određenog korisnika u domeni, za to moramo pristupiti sljedećoj konfiguracijskoj datoteci:

 sudo nano /etc/security/limits.conf
Korak 2
U posljednjem dijelu ovoga vidjet ćemo sljedeću sintaksu:
 
Korak 3
Tamo moramo dodati korisničko ime, vrstu elementa i ograničenje za dodjelu. Spremamo promjene i izlazimo iz uređivača.

POVEĆAJTE

Na ovaj način imamo priliku uspostaviti ili povećati ograničenja za korisnike za otvorene datoteke u različitim Linux distribucijama, a posebno u Ubuntu poslužitelju 17.04.

wave wave wave wave wave