Ustawianie maksymalnej liczby procesów użytkownika
Pojedynczy użytkownik ma możliwość uruchomienia dużej liczby procesów. Linux to system operacyjny dla wielu użytkowników. Teraz wyobraź sobie wielu użytkowników uruchamiających mnóstwo procesów. Nawet jeśli każdy z procesów sam nie zużywa zbyt wielu zasobów sprzętowych, suma wszystkich procesów użytkownika może w końcu pochłonąć cały system. Aby uniknąć takiej sytuacji, administratorzy systemu mogą ograniczyć liczbę procesów, które każdy użytkownik może otworzyć.
Limit może być nałożony czasowo lub na stałe. W zależności od docelowego scenariusza zastosuj najbardziej odpowiednią metodę.
Tymczasowe ustawienie maksymalnej liczby procesów użytkownika
Ta metoda tymczasowo zmienia limit docelowego użytkownika. Jeśli użytkownik ponownie uruchomi sesję lub system zostanie ponownie uruchomiony, limit zostanie zresetowany do wartości domyślnej.
Ulimit to wbudowane narzędzie, które służy do tego zadania. Ulimit może nakładać limity na różne zasoby dla konkretnego użytkownika. Jedynym minusem (jak wspomniano wcześniej) jest to, że jest tymczasowy.
Zaloguj się jako użytkownik docelowy i sprawdź aktualny limit procesów.
$ ulimit -u
Następnie zdefiniuj limit na 12345.
Sprawdź zmianę.
Ustaw maksymalną liczbę procesów użytkownika na stałe
Poniższa metoda jest bardziej niezawodna w rzeczywistym scenariuszu. Jeśli użytkownik się wyloguje lub system uruchomi się ponownie, zmiana nie zniknie.
Tutaj nadal będziemy korzystać z narzędzia Ulimit. Jednak zamiast bezpośrednio wprowadzać zmiany za pomocą polecenia ulimit, dostosujemy narzędzie konfiguracji systemu, którego używa Ulimit do przypisywania limitów użytkownikom docelowym.
Sprawdź limity.konf. polecenie poniżej:
$ cat /etc/security/limits.konf
Aby dodać wpis do pliku, powinien on mieć następujący format:
Poniższa lista zawiera definicję każdego pola:
- domena: domeną może być użytkownik, grupa użytkowników, zakresy GUID itp.
- type: Rodzaj limitu. Może być twardy lub miękki.
- pozycja: Jaki zasób będzie ograniczony. W tym przewodniku będziemy używać „nproc”.
- wartość: Wartość limitu.
Następnie omówimy rodzaje limitów. Jeśli chcesz, aby maksymalny limit procesów w domenie oscylował wokół określonej wartości, użyj typu miękkiego limitu. Jeśli chcesz, aby domena miała maksymalny limit procesów o stałej wartości, użyj typu twardego limitu.
Jeśli chodzi o pola przedmiotów, jest ich kilka. Aby zobaczyć pełną listę, polecam sprawdzić limity.conf man page.
$ ograniczenia człowieka.konf
Wróćmy teraz do dostosowywania limitów.plik konfiguracyjny. Aby edytować plik, otwórz go w swoim ulubionym edytorze tekstu. Pamiętaj, że musisz uruchomić polecenie z uprawnieniami administratora. W przeciwnym razie zmiany nie zostaną zapisane.
Poniższa linia to tylko przykład. Ustawi twardy limit 12345 dla użytkownika victor.
Zapisz plik i zamknij edytor. Aby zmiany zaczęły obowiązywać, może być konieczne ponowne uruchomienie sesji lub ponowne uruchomienie systemu.
Sprawdź wynik.
$ ulimit - wiktor
Wniosek
Ograniczenie maksymalnej liczby procesów użytkowników jest częstym zadaniem, które mogą być zmuszeni do wykonania przez administratorów systemu. Mam nadzieję, że ten przewodnik był pomocny w tym zakresie.
Jeśli chcesz dowiedzieć się więcej o tym, jak nakładać ograniczenia na inne zasoby, zapoznaj się z artykułem Polecenie Linux ulimit. Ulimit to podstawowe narzędzie, które nakłada limity zasobów na użytkowników w systemie Linux.
Udanych komputerów!