Solaris CDE Benutzerhandbuch

Senden von Abbruchsignalen an einen Prozess

Der kill-Befehl in UNIX ermöglicht es Ihnen, ein Signal an einen Prozess zu senden. Ein Signal ist eine Nachricht, die den Prozess unterbricht und zu einer Antwort auffordert. Falls der Prozess entsprechend programmiert ist, beantwortet er die Signale, andernfalls wird er beendet. In der folgenden Tabelle sind einige häufig verwendete Signalzahlen/-namen und ihre Bedeutung auzfsgeführt.

 Signal-Nr. Signalname Bedeutung
 1  HUP Hangup (häufig vor dem Abmelden verwendet)
 2  INT Interrupt (identisch mit dem Drücken von STRG+C in einer Terminalsitzung)
 9  KILL

Kill (beendet den Prozess ohne Bereinigung) 

Funktioniert nur, wenn es vom Eigentümer des Prozesses oder vom Superuser (root) gesendet wird 

Das Programm kann auf dieses Signal nicht antworten, sondern muss beendet werdensondern muss beendet werden.  

 15  TERM

Kill (Geordnetes Beenden des Prozesses mit vorheriger Bereinigung) 

Funktioniert nur, wenn es vom Eigentümer des Prozesses oder vom Superuser (root) gesendet wird 

Das Menü "Abbrechen“ ermöglicht den schnellen Abbruch eines Prozesses durch Senden eines kill-Signals (9). Das Menü "Signal“ bietet Ihnen eine umfassendere Kontrolle des durch den Befehl kill(1) gesendeten Signals. Damit erhalten Sie beispielsweise die Möglichkeit, das Signal INT oder HUP usw. zu senden.


Achtung – Achtung –

Senden Sie nur dann ein Signal an einen Prozess, wenn Sie alle Folgen genau kennen. Wenn Sie beispielsweise die Login-Shell auswählen und ihr ein kill-Signal senden, werden sie plötzlich abgemeldet. Weitere Informationene rhalten Sie von Ihrem Systemadministrator oder aus dem Advanced User's and System Administrator's Guide (Sun Microsystems).


So brechen Sie einen Prozess ab (sofortiger Abbruch)

  1. Wählen Sie einen Prozesseintrag im Bildlaufbereich des Prozess-Managers aus.

  2. Wählen Sie "Abbrechen“ aus dem Menü "Prozess“.

    Prozess-Manager bricht den Prozess (und alle untergeordneten Prozesse) ab, sofern Sie über die entsprechenden Zugriffsrechte verfügen. Andernfalls wird eine Fehlermeldung angezeigt. In einzelnen Fällen kann es einige Sekunden dauern, bis der Prozess beendet wird. Sie können erkennen, ob ein Prozess abgebrochen wurde, wenn er bei der nächsten Aktualisierung der Anzeige im Prozess-Manager nicht in der Liste der Prozesse enthalten ist.


    Tipp –

    Der entsprechende UNIX-Befehl lautet:

    kill -9 PID, wobei PID die Prozess-ID des gewõhlten Prozesses ist.

    Sie können den Befehl, der bei der Auswahl des Menüs "Abbrechen“ ausgeführt wird, auch umdefinieren, indem Sie die Zuordnung der Aktion "Kill“ in der folgenden Datei ändern:

    /usr/dt/appconfig/types/C/sdtprocess.dt


So senden Sie ein Signal an einen Prozess

  1. Wählen Sie einen Prozesseintrag im Bildlaufbereich des Prozess-Managers aus.

  2. Wählen Sie "Signal“ aus dem Menü "Prozess“.

    Prozess-Manager öffnet ein Dialogfenster, in dem Sie zur Angabe des Signals aufgefordert werden. Sie müssen mindestens eines der 42 auf der Man Page signal(5) definierten Signale eingeben.

  3. Geben Sie die entsprechende Signalnummer ein, und klicken Sie auf "OK“.

    Prozess-Manager sendet den Signalbefehl an den Prozess und schließt das Dialogfenster. Es wird keine Erfolgsmeldung ausgegeben. In der Regel werden die untergeordneten Prozesse des abgebrochenen Prozesses ebenfalls abgebrochen.


Tipp –

Der entsprechende UNIX-Befehl lautet: kill -signum_name PID

Hierbei ist -signum_name die Signalnummer oder der Signalname und PID die Prozess-ID des gewõhlten Prozesses.