Jak zwiększyć liczbę otwartych limitów plików w Linux

Jak zwiększyć liczbę otwartych limitów plików w Linux

W Linux możesz zmienić maksymalną ilość otwartych plików. Możesz zmodyfikować ten numer za pomocą Ulimit Komenda. Daje ci możliwość kontrolowania zasobów dostępnych dla powłoki lub procesu uruchomionego przez nią.

Przeczytaj także: Ustaw Linux Uruchamianie limitów na poziomie użytkownika

W tym krótkim samouczku pokażemy, jak sprawdzić bieżącą limit opisów otwartych plików i plików, ale aby to zrobić, musisz mieć dostęp do swojego systemu do systemu.

Najpierw zobaczmy, w jaki sposób możemy znaleźć maksymalną liczbę otwartych deskryptorów plików w systemie Linux.

Znajdź limit plik otwartego Linux

Wartość jest przechowywana w:

# cat/proc/sys/fs/plik-max 818354 

Liczba, którą zobaczysz, pokazuje liczbę plików, które użytkownik może otworzyć na sesję logowania. Wynik może być inny w zależności od systemu.

Na przykład na Centos mój serwer, limit został ustawiony na 818354, pókic Ubuntu serwer, na który uruchamiam w domu, ustawiono domyślny limit 176772.

Jeśli chcesz zobaczyć twarde i miękkie limity, możesz użyć następujących poleceń:

Sprawdź twardy limit w Linux

# Ulimit -hn 4096 

Sprawdź miękkie limity w Linux

# Ulimit -sn 1024 

Aby zobaczyć twarde i miękkie wartości dla różnych użytkowników, możesz po prostu zmienić użytkownika z „Su” do użytkownika, który ogranicza się do sprawdzenia.

Na przykład:

# Su Marin $ ulimit -sn 1024 
$ ulimit -hn 4096 

Jak sprawdzić limity deskryptorów plików szerokich systemu w Linux

Jeśli używasz serwera, niektóre z twoich aplikacji mogą wymagać wyższych limitów dla otwartych deskryptorów plików. Dobrym przykładem jest to Mysql/Mariadb usługi lub Apache serwer internetowy.

Możesz zwiększyć limit otwartych plików w Linux, edytując dyrektywę jądra fs.Plik-Max. W tym celu możesz użyć Sysctl pożytek.

Sysctl służy do konfigurowania parametrów jądra w czasie wykonywania.

Na przykład, aby zwiększyć ograniczenie pliku otwartego do 500000, Możesz użyć następującego polecenia jako root:

# sysctl -w fs.plik-Max = 500000 

Możesz sprawdzić bieżącą wartość dla otwartych plików za pomocą następującego polecenia:

$ cat/proc/sys/fs/plik-max 

Z powyższym poleceniem wprowadzone zmiany pozostaną aktywne do następnego ponownego uruchomienia. Jeśli chcesz je na stałe zastosować, będziesz musiał edytować następujący plik:

# vi /etc /sysctl.conf 

Dodaj następujący wiersz:

fs.plik-Max = 500000

Oczywiście możesz zmienić liczbę na swoje potrzeby. Aby zweryfikować zmiany ponownie, użyj:

# cat/proc/sys/fs/plik-max 

Użytkownicy będą musieli ponownie wylogować się i zalogować, aby zmiany w obowiązywaniu. Jeśli chcesz natychmiast zastosować limit, możesz użyć następującego polecenia:

# sysctl -p 

Ustaw limity pliku Otwórz poziomu użytkownika w Linux

Powyższe przykłady pokazały, jak ustawić globalne limity, ale możesz zastosować limity na podstawę użytkownika. W tym celu, jako root użytkownika, musisz edytować następujący plik:

# vi/etc/bezpieczeństwo/limity.conf 

Jeśli jesteś administratorem Linuksa, sugeruję, abyś zapoznał się z tym plikiem i tym, co możesz z tym zrobić. Przeczytaj wszystkie komentarze w nim, ponieważ zapewnia dużą elastyczność w zakresie zarządzania zasobami systemowymi poprzez ograniczenie użytkowników/grup na różnych poziomach.

Linie, które powinieneś dodać, przyjmują następujące parametry:

             

Oto przykład ustawienia miękkich i twardych limitów dla użytkownika Marin:

## Przykład twardy limit dla maksymalnie otwartych plików Marin Hard Nofile 4096 ## Przykład miękki limit dla maksymalnych plików Marin Soft Nofile 1024 

Końcowe przemyślenia

Ten krótki artykuł pokazał podstawowy przykład, w jaki sposób możesz sprawdzić i skonfigurować limity poziomu globalnego i użytkownika dla maksymalnej liczby otwartych plików.

Chociaż właśnie porysowaliśmy powierzchnię, gorąco zachęcam do bardziej szczegółowego spojrzenia i przeczytania /etc/sysctl.conf I /itp./bezpieczeństwo/limity.conf i naucz się ich używać. Będą dla ciebie bardzo pomocne.