W przypadku zarządzania wieloma procesami w środowiskach Linux idealnie jest wiedzieć, w jaki sposób możemy zdefiniować maksymalną liczbę otwartych plików, aby mieć znacznie bardziej precyzyjną kontrolę lub uniknąć niewłaściwego wykorzystania zasobów serwera. Z tego powodu właściwe jest, abyśmy zawsze brali pod uwagę możliwości, jakie daje nasz system, abyśmy mogli efektywniej nim zarządzać.
Limit otwartych plików w dystrybucjach Linux można regulować za pomocą polecenia ulimit I dlatego dzisiaj ten samouczek przeanalizuje przy tej okazji, jak ustalić liczbę otwartych plików w Linuksie, koncentrując się na zwiększeniu domyślnego limitu.
Następnie zobaczymy, jak możemy rozszerzyć ustalony limit plików, które można otworzyć w systemach Ubuntu Linux.
1. Poznaj aktualny limit plików w systemie Ubuntu Linux
Pierwszym krokiem, który musimy zrobić, jest dokładne określenie, jaki limit plików możemy otworzyć w systemie Linux, w tym przypadku używamy Ubuntu 17.04 Server, i aby poznać tę wartość, wykonamy następujące polecenie:
cat / proc / sys / fs / file-max
POWIĘKSZAĆ
Wyświetlany wynik wskazuje liczbę plików, które użytkownik może otworzyć podczas jednego logowania i będzie to zmienna w każdej dystrybucji Linuksa.
2. Poznaj ograniczenia sprzętu i oprogramowania w Ubuntu Linux
Innym ważnym aspektem, który należy wziąć pod uwagę, jest znajomość ograniczeń systemu zarówno na poziomie sprzętu, jak i oprogramowania, a osiąga się to poprzez wykonanie następujących poleceń:
ulimit -Hn ulimit -Sn
POWIĘKSZAĆ
3. Sprawdź domyślne limity Linuksa dla deskryptorów plików
Gdy uruchamiamy określone aplikacje na serwerach, konieczne jest, aby miały większy limit liczby plików, ponieważ stale rejestrują zdarzenia lub procesy, które dotyczą dużej liczby plików, możemy wymienić aplikacje takie jak PHP, MySQL, MariaDB, wśród inne .
W takich przypadkach możemy zwiększyć limit, edytując fs.file-max plik przez użyteczność sysctl.
Pamiętaj, że dzięki sysctl możemy skonfigurować parametry jądra w Linuksie.
Krok 1
Aby to przedstawić, zwiększymy limit otwartych plików do 600 000, w tym celu wykonamy następującą linię jako użytkownik root:
sudo sysctl -w fs.file-max = 600000
POWIĘKSZAĆ
Krok 2
Aby sprawdzić, czy nowy limit został prawidłowo ustalony, wykonamy następujący wiersz:
cat / proc / sys / fs / file-max
POWIĘKSZAĆ
Krok 3
Jak widzimy limit został przez nas ustalony.
Jednym aspektem, o którym należy pamiętać, jest to, że wykonując ten proces, ustalony limit będzie dostępny tylko do następnego logowania, więc jeśli chcemy, aby ten limit był stały, musimy uzyskać dostęp do następującego pliku za pomocą preferowanego edytora:
sudo nano /etc/sysctl.confKrok 4
W otwartym pliku dodamy na końcu następującą linię:
fs.plik-max = 600000
POWIĘKSZAĆ
Krok 5
Trzymamy zmiany za pomocą klawiszy:
Ctrl + O
Tak opuściliśmy redaktora za pomocą klawiszy
Ctrl + X
Krok 6
Możemy ponownie sprawdzić limit plików, wykonując następujący wiersz:
cat / proc / sys / fs / file-maxKrok 7
W celu zastosowania zmian konieczne będzie zamknięcie sesji, a jeśli chcemy, aby zostały wykonane natychmiast, wykonamy następujące polecenie:
sysctl -p
4. Ustaw limity otwartych plików na użytkownika w systemie Ubuntu Linux
Krok 1
Możliwe, że chcemy ustalić pewne limity otwartych plików dla konkretnego użytkownika w domenie, w tym celu musimy uzyskać dostęp do następującego pliku konfiguracyjnego:
sudo nano /etc/security/limits.confKrok 2
W końcowej części tego zobaczymy następującą składnię:
Krok 3
Tam musimy dodać nazwę użytkownika, typ elementu oraz limit do przypisania. Zapisujemy zmiany i wychodzimy z edytora.
POWIĘKSZAĆ
W ten sposób mamy możliwość ustalenia lub zwiększenia limitów dla użytkowników dla otwartych plików w różnych dystrybucjach Linuksa, a zwłaszcza w Ubuntu Server 17.04.