So verwalten Sie Hintergrundprozesse in CentOS

So verwalten Sie Hintergrundprozesse in CentOS

Ich verwende CentOS und weiß nicht, wie ich:

  1. Liste der aktuellen Hintergrundprozesse/-jobs anzeigen (die ich ausführe).
  2. So führen Sie einen Prozess im Hintergrund aus.
  3. So stoppen Sie den Hintergrundprozess.

Mein Befehl, den ich im Hintergrund ausführen möchte, sieht folgendermaßen aus:

activator run

Bisher habe ich nur diesen Befehl gefunden (der den Prozess im Hintergrund ausführt).

nohup activator run &

Antwort1

Das hängt vermutlich hauptsächlich von Ihrer Shell ab bash(1). Die meisten anderen modernen Shells bieten ähnliche (oder sogar identische) Jobsteuerungsfunktionen.

  • Um einen Befehl im Hintergrund zu starten, führen Sie command &oder aus nohup command &(wenn Sie sich abmelden und den Befehl trotzdem ausführen möchten).
  • Um den laufenden Befehl zu stoppen, C-zdrücken Sie (Strg-Z), um den gestoppten Befehl in den Hintergrund zu bringen, drücken Sie bg. Mit fgholen Sie ihn wieder in den Vordergrund, jobszeigt Ihnen, was gestoppt ist oder sich im Hintergrund befindet. kill %kbeendet den Job Nummer k, fg %k(oder einfach %k) bringt ihn in den Vordergrund. Sie können den gestoppten Job kim Hintergrund starten, indem bg %kSie (oder einfach %k &) drücken.

Es gibt noch einiges mehr.

Eine andere, recht flexible Möglichkeit ist die Verwendung screen(1)von . Sehen Sie sich die Manualpage dazu an. Damit können Sie einen Befehl starten und die Verbindung trennen und später von einem anderen Terminal (oder einem anderen Rechner über das Internet) aus eine Verbindung herstellen.

Antwort2

Ihr Ansatz sollte funktionieren …

Beginnen Sie den Job mitnohup activator run &

Überprüfen Sie, was mit läuftjobs -l

Stoppen Sie es mit kill PID(Sie können die PID mit abrufen ps -ef | grep activator)


Ich persönlich bevorzuge screen--http://linux.die.net/man/1/screen

Beginnen Sie den Job mitscreen -d -m activator run

Überprüfen Sie Bildschirmsitzungen mitscreen -ls

Stoppen Sie es, indem Sie auf das Bildschirmfenster zugreifen, screen -xgefolgt von der Bildschirmsitzungs-ID

verwandte Informationen