So begrenzen Sie die Zeit und den Speicherverbrauch von Prozessen unter Linux

So begrenzen Sie die Zeit und den Speicherverbrauch von Prozessen unter Linux

Der Auszeit Das Skript ist ein nützliches Programm zur Überwachung von Ressourcen für die Begrenzung der Zeit und des Speicherverbrauchs von Prozessen unter Linux. Sie ermöglichen es Ihnen, Programme unter Kontrolle auszuführen und Zeit- und Speichergrenzen durchzusetzen, wodurch das Programm unter Verstoß gegen diese Parameter beendet wird.

Keine Installation erforderlich, führen Sie einfach einen Befehl zusammen mit seinen Argumenten aus, die mit den Argumenten verwendet werden Auszeit Programm und es überwacht den Speicher- und Zeitverbrauch des Befehls und unterbrochen den Prozess, wenn er aus den Grenzen geht, und benachrichtigt Sie mit der vordefinierten Nachricht.

Um dieses Skript auszuführen, müssen Sie haben Perl 5 Installiert auf Ihrem Linux -System und dem /Proc -Dateisystem montiert.

So überprüfen Sie die installierte Version von Perl Führen Sie auf Ihrem Linux -System den folgenden Befehl aus.

$ perl -v 
Überprüfen Sie die Perl -Version unter Linux

Als nächstes klonen Sie die Auszeit Das Repository in Ihrem System über den Befehl GIT über das lokale Repository mit dem CD -Befehl übergehen und als üblicher Linux -Befehl aufzurufen.

$ cd ~/bin $ git klone https: // github.com/pshved/timeout.Git $ cd Timeout 

Schauen wir uns nun an, wie Auszeit Skript funktioniert.

Grundlegende Speicherbegrenzung (100 m virtuellen Speicher):

Dieses erste Beispiel zeigt, wie die Speicherverwendung eines Prozesses auf die Speicherverwendung begrenzt wird 100 m des virtuellen Speichers, verwenden die -M Flagge. Die Standardeinheit für den Speicher ist in Kilobytes.

Hier führt der Befehl "Stress-Ng 40% des verfügbaren Speichers 10 Minuten. So jeweils Stressor Verwendet 10% des verfügbaren Speichers.

$ ./Timeout -m 100000 Stress -NG -VM 4 -VM -Bytes 40% -T 10m 
Begrenzung des Prozesses einschränken

Unter Berücksichtigung der Ausgabe der Auszeit Befehl oben, der, der Stress-Ng Arbeitsprozesse wurden nach nur gerecht gekündigt 1.16 Sekunden. Dies liegt daran, dass der kombinierte Speicherverbrauch der VMs (438660 Kilobytes) ist größer als die zulässige Verwendung von virtuellem Speicher für Stress-Ng und seine Kinderprozesse.

Grundlegende Zeitbegrenzung des Prozesses:

Verwenden Sie die Zeitbeschränkung des Prozesses, um die Prozesse zu ermöglichen -T Flagge wie gezeigt.

$ ./Timeout -t 4 Stress -NG -VM 4 -VM -Bytes 40% -T 10m 
Zeitbegrenzung des Prozesses

Im obigen Beispiel, wenn die Stress-Ng CPU+SYS Die Zeit übersteigt den definierten Wert von 4, Die Arbeitsprozesse werden getötet.

Einschränkungszeit und Gedächtnis des Prozesses einschränken

Sie können auch beide einschränken Speicher Und Zeit sofort wie folgt.

$ ./Timeout -t 4 -m 100000 Stress -NG -VM 4 -VM -Bytes 40% -T 10m 

Timeout unterstützt auch einige erweiterte Optionen wie z --Erkennende Hangups, Dies ermöglicht die Erkennung von Aufhängen.

$ ./Timeout-Erstellungs-Hangups -m 100000 Stress-NG-VM 4-VM-Bytes 40% -T 10m 

Sie können überwachen RSS (Resident Set Größe) Speichergrenze mit der --Memlimit-RSS oder -S schalten.

$ ./Timeout -m 100000 -s Stress -NG -VM 4 -VM -Bytes 40% -T 10m 

Verwenden Sie zusätzlich den Exit -Code oder Signal+128 eines Prozesses, um die --bekennen oder -C Option wie gezeigt.

$ ./Timeout -m 100000 -c Stress -NG -VM 4 -VM -Bytes 40% -T 10m 

Weitere Informationen und Verwendungsbeispiele finden Sie im Hinblick auf die Auszeit Github Repository: https: // github.com/pshved/timeout.

Möglicherweise finden Sie auch die folgenden verwandten Artikel gleichermaßen nützlich:

  1. So finden Sie Top 15 Prozesse nach Speicherverbrauch mit "Top" im Stapelmodus
  2. CPUTOOL - Grenz- und Steuerelement -Nutzung eines jeden Prozesses unter Linux
  3. So begrenzen Sie die CPU -Verwendung eines Prozesses in Linux mit Cpulimit -Tool

Der Auszeit Skript ist ein einfaches Programm zur Überwachung von Ressourcen, das den Zeit- und Speicherverbrauch von Prozessen unter Linux im Wesentlichen einschränkt. Sie können uns Feedback über die geben Auszeit Skript über das Kommentarformular unten.