Website-Suche

So legen Sie Grenzwerte für Benutzer fest, die Prozesse unter Linux ausführen


Eine der Schönheiten von Linux ist, dass Sie fast alles daran steuern können. Dies gibt einem Systemadministrator eine große Kontrolle über sein System und eine bessere Auslastung der Systemressourcen.

Während einige vielleicht noch nie darüber nachgedacht haben, dies zu tun, ist es wichtig zu wissen, dass Sie unter Linux begrenzen können, wie viel Ressource ein einzelner Benutzer verwenden darf und wie lange.

Lesen Sie auch: So erhöhen Sie das Limit für die Anzahl der geöffneten Dateien unter Linux

In diesem kurzen Thema zeigen wir Ihnen, wie Sie die Anzahl der vom Benutzer gestarteten Prozesse begrenzen und wie Sie die aktuellen Grenzwerte überprüfen und ändern können.

Bevor wir weitermachen, gibt es zwei Dinge, auf die wir hinweisen müssen:

  1. Sie benötigen Root-Zugriff auf Ihr System, um die Benutzerlimits zu ändern
  2. Sie müssen äußerst vorsichtig sein, wenn Sie planen, diese Grenzwerte zu ändern

Um Benutzerlimits einzurichten, müssen wir die folgende Datei bearbeiten:


/etc/security/limits.conf

Diese Datei wird verwendet, um ulimit anzuwenden, das vom pam_module erstellt wurde. 

Die Datei weist die folgende Syntax auf:

<domain> <type> <item> <value>

Hier werden wir aufhören, um jede der Optionen zu besprechen:

  • Domain – dazu gehören Benutzernamen, Gruppen, GUID-Bereiche usw.
  • Typ – weiche und harte Grenzen
  • Item – das Element, das begrenzt wird – Kerngröße, Dateigröße, nproc usw.
  • Wert – dies ist der Wert für das angegebene Limit

Ein gutes Beispiel für ein Limit ist:

@student          hard           nproc                20

Die obige Zeile legt ein hartes Limit von maximal 20 Prozessen für die Gruppe "Student" fest.

Wenn Sie die Grenzen eines bestimmten Prozesses sehen möchten, können Sie die Limits-Datei einfach wie folgt "catzen":


cat /proc/PID/limits

Wenn PID die tatsächliche Prozess-ID ist, können Sie die Prozess-ID mit dem Befehl ps ermitteln. Für eine detailliertere Erklärung lesen Sie unseren Artikel, in dem es heißt: Suchen Sie nach laufenden Linux-Prozessen und legen Sie Prozessgrenzen pro Benutzerebene fest.

Hier ist also ein Beispiel:


cat /proc/2497/limits
Beispiel-Ausgabe

Limit                     Soft Limit           Hard Limit           Units     
Max cpu time              unlimited            unlimited            seconds   
Max file size             unlimited            unlimited            bytes     
Max data size             unlimited            unlimited            bytes     
Max stack size            8388608              unlimited            bytes     
Max core file size        0                    unlimited            bytes     
Max resident set          unlimited            unlimited            bytes     
Max processes             32042                32042                processes 
Max open files            1024                 4096                 files     
Max locked memory         65536                65536                bytes     
Max address space         unlimited            unlimited            bytes     
Max file locks            unlimited            unlimited            locks     
Max pending signals       32042                32042                signals   
Max msgqueue size         819200               819200               bytes     
Max nice priority         0                    0                    
Max realtime priority     0                    0                    
Max realtime timeout      unlimited            unlimited            us   

Alle Zeilen sind so gut wie selbsterklärend. Wenn Sie jedoch mehr über die Einstellungen erfahren möchten, die Sie in die Datei limits.conf eingeben können, können Sie einen Blick auf das hier bereitgestellte Handbuch werfen.

Wenn Sie Fragen oder Kommentare haben, zögern Sie bitte nicht, diese im Kommentarbereich unten zu senden.

Verwandte Artikel: