{"id":3350,"date":"2020-03-11T16:59:31","date_gmt":"2020-03-11T16:59:31","guid":{"rendered":"https:\/\/profi-tutorials.de\/linux\/?p=3350"},"modified":"2020-03-13T11:26:55","modified_gmt":"2020-03-13T11:26:55","slug":"befehle-prozessmanagement","status":"publish","type":"post","link":"https:\/\/profi-tutorials.de\/linux\/grundlagen\/befehle-prozessmanagement\/","title":{"rendered":"Befehle f\u00fcr das Prozessmanagement"},"content":{"rendered":"<p>Grunds&auml;tzlich ist Linux\/UNIX ein sehr stabiles System &ndash; dennoch kann es zu Fehlern kommen. In diesem Beitrag lernen Sie einige der wichtigsten Befehle kennen, mit denen Sie Fehler und Instabilit&auml;ten erkennen und beheben, sowie das System besser an Ihre Bed&uuml;rfnisse anpassen k&ouml;nnen.<\/p>\n<h2 id=\"tab-con-11\">Laufende Prozesse anzeigen<\/h2>\n<p>Linux ist, &auml;hnlich wie die meisten modernen <a class=\"glossaryLink cmtt_Informatik cmtt_Netzwerke\" aria-describedby=\"tt\" data-cmtooltip=\"&lt;div class=glossaryItemTitle&gt;Betriebssystem&lt;\/div&gt;&lt;div class=glossaryItemBody&gt;Ein Betriebssystem ist f&uuml;r die Verwaltung der Ressourcen eines Rechensystems verantwortlich.&lt;\/div&gt;\" href=\"https:\/\/profi-tutorials.de\/linux\/glossar\/betriebssystem\/\" target=\"_blank\" data-mobile-support=\"0\" data-gt-translate-attributes='[{\"attribute\":\"data-cmtooltip\", \"format\":\"html\"}]' tabindex=\"0\" role=\"link\">Betriebssysteme<\/a>, Multitasking-f&auml;hig. Das hei&szlig;t, dass eine Vielzahl von Prozessen gleichzeitig ausgef&uuml;hrt werden kann. Neben Prozessen, die Sie selbst auf dem System ausf&uuml;hren, ist es beispielsweise m&ouml;glich, dass noch Prozesse anderer Benutzer auf dem System laufen.<\/p>\n<h3 id=\"tab-con-1\">top<\/h3>\n<p>Eine dynamische &Uuml;bersicht dieser laufenden Prozesse, sowie verschiedener Systemressourcen kann mit dem Befehl top angezeigt werden.<\/p>\n<pre>top<\/pre>\n<p>Im Folgenden ist ein Beispiel f&uuml;r die Ausgabe des Top-Befehls zu sehen:<\/p>\n<p><span><img loading=\"lazy\" decoding=\"async\" alt=\"befehl-top-ausgabe\" data-id=\"3366\" width=\"1174\" height=\"466\" title=\"befehl-top-ausgabe\" src=\"https:\/\/profi-tutorials.de\/linux\/wp-content\/uploads\/sites\/3\/2020\/03\/09-03-_2020_15-34-35.jpg\"\/><\/span><\/p>\n<p>Wenn Sie n&auml;heres zu dem Befehl top und den angezeigten Daten wissen wollen, dann k&ouml;nnen Sie diese Informationen <a href=\"https:\/\/profi-tutorials.de\/linux\/administration\/befehl-top\/\" style=\"outline: none;\" target=\"_blank\" rel=\"noopener noreferrer\">in unserem Beitrag zum Befehl top nachlesen<\/a>.<\/p>\n<h3 id=\"tab-con-4\">ps<\/h3>\n<p>Neben <strong>top<\/strong> gibt es noch den Befehl <strong>ps <\/strong>(processes), um laufende Prozesse anzuzeigen. Der Befehl zeigt bei der Verwendung ohne zus&auml;tzliche Optionen oder Parameter die Prozesse an, die im momentan ge&ouml;ffneten <a class=\"glossaryLink cmtt_Informatik\" aria-describedby=\"tt\" data-cmtooltip=\"&lt;div class=glossaryItemTitle&gt;TTY [Teletype]&lt;\/div&gt;&lt;div class=glossaryItemBody&gt;TTY steht f&uuml;r Teletype, welches das englische Wort f&uuml;r Fernschreiber ist, und steht in einem UNIX-System f&uuml;r ein Terminal.&lt;\/div&gt;&lt;div class=cmtt_synonyms_wrapper&gt;&lt;div class=cmtt_synonyms_title&gt;Synonyms: &lt;\/div&gt;&lt;div class=cmtt_synonyms&gt;Terminal&lt;\/div&gt;&lt;\/div&gt;\" href=\"https:\/\/profi-tutorials.de\/linux\/glossar\/tty\/\" target=\"_blank\" data-mobile-support=\"0\" data-gt-translate-attributes='[{\"attribute\":\"data-cmtooltip\", \"format\":\"html\"}]' tabindex=\"0\" role=\"link\">Terminal<\/a> laufen:<\/p>\n<pre>ps<\/pre>\n<p>Durch den Zusatz <strong>aux<\/strong> kann auch eine &Uuml;bersicht des gesamten Systems ausgegeben werden:<\/p>\n<pre>ps aux<\/pre>\n<p>Im Folgenden sehen Sie einen Ausschnitt der Ausgabe von <strong>ps aux<\/strong>:<\/p>\n<p><span><img loading=\"lazy\" decoding=\"async\" alt=\"ps-aux-ausgabe-beschriftet\" data-id=\"3381\" width=\"978\" height=\"292\" title=\"ps-aux-ausgabe-beschriftet\" src=\"https:\/\/profi-tutorials.de\/linux\/wp-content\/uploads\/sites\/3\/2020\/03\/09-03-_2020_17-35-05.jpg\"\/><\/span><\/p>\n<p>Angezeigt werden &auml;hnliche Daten wie auch bei dem Befehl <strong>top<\/strong><strong>:<\/strong><\/p>\n<ul>\n<li><strong>USER &ndash;<\/strong> Besitzer des Prozess <strong>(1)<\/strong><\/li>\n<li><strong>PID &ndash;<\/strong> Prozess-ID des Prozess <strong>(2)<\/strong><\/li>\n<li><strong>%CPU &ndash;<\/strong> CPU-Auslastung durch den Prozess (Verwendete CPU-Zeit geteilt durch die gesamte Laufzeit des Prozess) <strong>(3)<\/strong><\/li>\n<li><strong>%MEM &ndash;<\/strong> Anteil des Tasks am physikalischen Speicher <strong>(4)<\/strong><\/li>\n<li><strong>VSZ &ndash;<\/strong> Auslastung des virtuellen Speichers durch den Prozess <strong>(5)<\/strong><\/li>\n<li><strong>RSS &ndash;<\/strong> Gr&ouml;&szlig;e des durch den Prozess belegten physikalischen Speichers (in KiloBytes) <strong>(6)<\/strong><\/li>\n<li><strong>TTY &ndash; <\/strong>Terminal <strong>(7)<\/strong><\/li>\n<li><strong>STAT &ndash;<\/strong> Prozessstatus <strong>(8)<\/strong><\/li>\n<li><strong>START &ndash;<\/strong> Startzeit des Prozesses <strong>(9)<\/strong><\/li>\n<li><strong>TIME &ndash;<\/strong> kumulative CPU Zeit <strong>(10)<\/strong><\/li>\n<li><strong>COMMAND &ndash;<\/strong> Aufrufbefehl mit allen Argumenten&nbsp;<strong>(11)<\/strong><\/li>\n<\/ul>\n<p>Aufgrund der F&uuml;lle an Informationen ist es oft hilfreich, die Ausgabe von <strong>ps aux<\/strong> mithilfe einer <strong>Pipe <\/strong>in den Befehl <strong>grep<\/strong> zu leiten und anschlie&szlig;end mit einem Suchmuster zu filtern. N&auml;heres zu <strong>grep<\/strong> k&ouml;nnen Sie <a href=\"https:\/\/profi-tutorials.de\/linux\/grundlagen\/befehl-grep\/\" style=\"outline: none;\" target=\"_blank\" rel=\"noopener noreferrer\">in unserem Artikel zu diesem Befehl nachlesen<\/a>. Auch Informationen zu Pipes und Umleitungen k&ouml;nnen Sie <a href=\"https:\/\/profi-tutorials.de\/linux\/grundlagen\/eingabe-ausgabe-umleitungen\/\" style=\"outline: none;\" target=\"_blank\" rel=\"noopener noreferrer\">in einem unserer Beitr&auml;ge finden<\/a>.<\/p>\n<h2 id=\"tab-con-5\">Prozesse beenden mit kill<\/h2>\n<p>Wenn ein Prozess stehen geblieben ist, oder ein unerw&uuml;nschter Prozess auf Ihrem System ausgef&uuml;hrt wird, dann kommt der Befehl kill zum Einsatz. Der Befehl wird verwendet, um Prozesse mit einer bestimmten PID zu beenden. Die <a class=\"glossaryLink cmtt_Allgemein cmtt_Informatik\" aria-describedby=\"tt\" data-cmtooltip=\"&lt;div class=glossaryItemTitle&gt;Syntax&lt;\/div&gt;&lt;div class=glossaryItemBody&gt;&#8203;Im  Allgemeinen wird unter Syntax ein Regel&#8203;system verstanden, welches zur  Kombination elementarer Zeichen zu zusammengesetzten &#8203;Zeichen in (...)&lt;\/div&gt;\" href=\"https:\/\/profi-tutorials.de\/linux\/glossar\/syntax\/\" target=\"_blank\" data-mobile-support=\"0\" data-gt-translate-attributes='[{\"attribute\":\"data-cmtooltip\", \"format\":\"html\"}]' tabindex=\"0\" role=\"link\">Syntax<\/a> lautet folgenderma&szlig;en:<\/p>\n<pre>kill [Optionen] [PID]<\/pre>\n<p>Bei Ausf&uuml;hrung des Befehls ohne zus&auml;tzliche Optionen sendet der Befehl standardm&auml;&szlig;ig das Signal SIGTERM (15). Dieses schlie&szlig;t die Ausf&uuml;hrung eines Programms ab und beendet es schlie&szlig;lich auch. Mit der Option -s l&auml;sst sich beeinflussen, welches Signal durch den Befehl gesendet wird:<\/p>\n<pre>kill -s [Signal] [PID]<\/pre>\n<p>Wenn ein Prozess\/Programm durch das Standard-Signal nicht beendet wird, dann besteht beispielsweise die M&ouml;glichkeit, den Kernel mit einem SIGKILL (9) zu beauftragen, den Prozess zu debuggen (Dump) und hart abzubrechen:<\/p>\n<pre>kill -s SIGKILL [PID]<\/pre>\n<p>Es gilt zu beachten, dass zun&auml;chst immer versucht werden sollte, Prozesse mit dem Signal SIGTERM (15) zu beenden &ndash; Das jeweilige Programm kann das Signal in solchen F&auml;llen noch abfangen und programmspezifische Aktionen durchf&uuml;hren, um sich sauber zu beenden. Erst wenn dieses Signal nicht angenommen wird, kann das Signal SIGKILL (9) herangezogen werden.<\/p>\n<h2 id=\"tab-con-9\">Tastenkombinationen<\/h2>\n<p>Bei der Verwaltung von Vordergrund- und Hintergrundprozessen gibt es einige hilfreiche Tastenkombinationen, welche auch im sp&auml;teren Verlauf noch ben&ouml;tigt werden. Diese werden im Folgenden einmal&nbsp; kurz vorgestellt.<\/p>\n<h3 id=\"tab-con-6\">Shell-Prozess beenden<\/h3>\n<p>Mit der Tastenkombination [Ctrl+c] k&ouml;nnen beliebige im Vordergrund der Shell laufende Prozesse beendet werden.<\/p>\n<h5>Beispiel: Shell-Prozess beenden<\/h5>\n<h6>Terminal:<\/h6>\n<p>wget -nv https:\/\/profi-tutorials.de\/linux\/^C<\/p>\n<h6>Bedeutung:<\/h6>\n<p>Zun&auml;chst wurde der Befehl wget ausgef&uuml;hrt, um eine Datei herunterzuladen. Die Ausf&uuml;hrund des Befehls wurde anschlie&szlig;end mit der Tastenkombination [Ctrl+c] vorzeitig beendet.<\/p>\n<h3 id=\"tab-con-13\">Shell-Prozess anhalten<\/h3>\n<p>Mit der Tastenkombination [Ctrl+z] k&ouml;nnen Sie einen Vordergrund-Prozess der Shell auch anhalten. Es wird die <strong>Jobnummer (1)<\/strong>, der neuer <strong>Status des Jobs (2)<\/strong>, sowie der <strong>komplette Aufrufbefehl (3)<\/strong> im Terminal ausgegeben:<\/p>\n<p><span><img loading=\"lazy\" decoding=\"async\" alt=\"ausgabe-job-angehalten\" data-id=\"3445\" width=\"1116\" height=\"140\" title=\"ausgabe-job-angehalten\" src=\"https:\/\/profi-tutorials.de\/linux\/wp-content\/uploads\/sites\/3\/2020\/03\/ausgabe-job-angehalten.jpg\"\/><\/span><\/p>\n<h5>Beispiel: Shell-Prozess anhalten<\/h5>\n<h6>Terminal:<\/h6>\n<p>wget -nv https:\/\/profi-tutorials.de\/it-consulting\/^Z[3]+ Angehalten wget -nv https:\/\/profi-tutorials.de\/it-consulting\/<\/p>\n<h6>Bedeutung:<\/h6>\n<p>Auch hier wurde wieder der Befehl wget ausgef&uuml;hrt. In diesem Fall wurde er jedoch durch die Tastenkombination [Ctrl+z] angehalten. Im Terminal wird zus&auml;tzlich die Jobnummer, der neue Status des Jobs und der urspr&uuml;ngliche Aufrufbefehl ausgegeben.<\/p>\n<h2 id=\"tab-con-7\">Vordergrund- und Hintergrundprozesse<\/h2>\n<p>Befehle \/ Programme werden standardm&auml;&szlig;ig im Vordergrund ausgef&uuml;hrt. Dieser Umstand stellt in den meisten F&auml;llen kein Problem dar, da viele Programme innerhalb von kurzer Zeit bis zur Fertigstellung laufen. Wenn Sie jedoch einen lang laufenden Prozess starten wollen, welcher keine besonderen Eingaben von Ihnen ben&ouml;tigt, dann k&ouml;nnen Sie dies auch im Hintergrund tun.<\/p>\n<h3 id=\"tab-con-10\">Anzeigen von in der Shell gestarteten Prozessen<\/h3>\n<p>Zun&auml;chst ist es wichtig, die Prozessstatus von Prozessen, welche in der Shell gestartet wurden einsehen zu k&ouml;nnen. Der Befehl jobs listet alle Prozesse in der aktuellen Shell auf:<\/p>\n<pre>jobs<\/pre>\n<p>Angezeigt wird die Jobnummer, der aktuelle Prozessstatus, sowie auch der komplette Aufrufbefehl &ndash; &auml;hnlich wie bei den beiden Befehlen top und ps.<\/p>\n<h5>Beispiel: jobs<\/h5>\n<h6>Eingabe:<\/h6>\n<p>jobs<\/p>\n<h6>Ausgabe:<\/h6>\n<p><span><img loading=\"lazy\" decoding=\"async\" alt=\"ausgabe-jobs\" data-id=\"3447\" width=\"1151\" height=\"114\" title=\"ausgabe-jobs\" src=\"https:\/\/profi-tutorials.de\/linux\/wp-content\/uploads\/sites\/3\/2020\/03\/ausgabe-jobs.jpg\"\/><\/span><\/p>\n<h3 id=\"tab-con-12\">Vordergrundprozesse in den Hintergrund verlagern<\/h3>\n<p>Im Vordergrund der Shell laufende Prozesse k&ouml;nnen in den Hintergrund verlagert werden. Dazu muss der jeweilige Prozess jedoch zun&auml;chst mit der zuvor vorgestellten Tastenkombination [Ctrl+z] angehalten werden. Anschlie&szlig;end kommt der Befehl bg zum Einsatz, um den Prozess im Hintergrund fortzusetzen. Die Syntax von bg lautet:<\/p>\n<pre>bg %[Jobnummer]<\/pre>\n<p>Nach dem Start des Hintergrundprozess wird zun&auml;chst die Jobnummer und der urspr&uuml;ngliche Aufrufbefehl ausgegeben, anschlie&szlig;end wird das Terminal wieder f&uuml;r die Eingabe freigegeben und es k&ouml;nnen andere Aufgaben erledigt werden.<\/p>\n<h5>Beispiel: Vordergrundprozess in den Hintergrund verlagern<\/h5>\n<p>Hier wollen wir anhand von dem sleep Befehl einmal einen Prozess im Vordergrund starten und diesen anschlie&szlig;end in den Hintergrund verlagern. An erster Stell wird der Befehl sleep mit dem Parameter 60 gestartet. Der Job w&uuml;rde nun f&uuml;r 60 Sekunden im Vordergrund ausgef&uuml;hrt werden, er wird jedoch vorzeitig mit [Ctrl+z] angehalten. Anschlie&szlig;end wird der Job mit dem Befehl bg im Hintergrund fortgef&uuml;hrt.<\/p>\n<p>In der durch den jobs Befehl ausgegebenen &Uuml;bersicht ist der laufende Job schlie&szlig;lich zu sehen.<\/p>\n<h6>1. Eingabe:<\/h6>\n<p>sleep 60<\/p>\n<p>^Z<\/p>\n<h6>1. Ausgabe:<\/h6>\n[4]+ Angehalten sleep 60\n<h6>2. Eingabe:<\/h6>\n<p>bg %4<\/p>\n<h6>2. Ausgabe:<\/h6>\n[4]+ sleep 60 &amp;\n<h6>3. Eingabe:<\/h6>\n<p>jobs<\/p>\n<h6>3. Ausgabe:<\/h6>\n[4]- L&auml;uft sleep 60 &amp;\n<h3 id=\"tab-con-3\">Prozesse im Hintergrund starten<\/h3>\n<p>Durch Anf&uuml;gen des Kaufmanns-Und &amp; kann ein beliebiger Befehl oder Prozess auch sofort im Hintergrund gestartet werden:<\/p>\n<pre>[Befehl] [Optionen] &amp;<\/pre>\n<p>Im Terminal wird die zugewiesene Jobnummer und PID angezeigt.<\/p>\n<h5>Beispiel: Prozess im Hintergrund starten<\/h5>\n<h6>Eingabe:<\/h6>\n<p>wget -nv https:\/\/profi-tutorials.de\/e-business\/ &amp;<\/p>\n<h6>Ausgabe:<\/h6>\n[5] 3006\n<h3 id=\"tab-con-2\">Hintergrundprozesse in den Vordergrund verlagern<\/h3>\n<p>Hintergrundprozesse k&ouml;nnen mit dem Befehl fg in den Vordergrund verlagert werden:<\/p>\n<pre>fg %[Jobnummer]<\/pre>\n<h5>Beispiel: Hintergrundprozess in den Vordergrund verlagern<\/h5>\n<p style=\"\">In diesem Beispiel soll der im Hintergrund laufende sleep Prozess in den Vordergrund verlagert werden. Dazu wird zun&auml;chst der Befehl jobs verwendet, um den Job mitsamt seiner Jobnummer anzuzeigen. Im Anschluss wird der Befehl fg mit der jeweiligen Jobnummer ausgef&uuml;hrt, um den Job in den Vordergrund zu verlagern.<\/p>\n<h6>1. Eingabe:<\/h6>\n<p>jobs<\/p>\n<h6>1. Ausgabe:<\/h6>\n[4]- L&auml;uft sleep 60 &amp;\n<h6>2. Eingabe:<\/h6>\n<p>fg %4<\/p>\n<h6>2. Ausgabe:<\/h6>\n<p>sleep 60<\/p>\n<p style=\"text-align: center;\">Abonniere JETZT unseren Newsletter!<\/p>\n<p style=\"text-align: center;\">Verpasse nie wieder <strong>neue<\/strong> Beitr&auml;ge und <strong>exklusive Insider-Only-Inhalte!<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Grunds\u00e4tzlich ist Linux\/UNIX ein sehr stabiles System &#8211; dennoch kann es zu Fehlern kommen. In diesem Beitrag lernen Sie einige der wichtigsten Befehle kennen, mit denen Sie Fehler und Instabilit\u00e4ten erkennen und beheben, sowie das System besser an Ihre Bed\u00fcrfnisse anpassen k\u00f6nnen. Laufende Prozesse anzeigen Linux ist, \u00e4hnlich wie die meisten modernen Betriebssysteme, Multitasking-f\u00e4hig. Das [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":3473,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_seopress_robots_primary_cat":"7","_seopress_titles_title":" %%post_title%% %%sep%% %%sitetitle%%","_seopress_titles_desc":"In diesem Beitrag zur Systemadministration lernen Sie die wichtigsten Befehle f\u00fcr das Prozess- und Programmmanagement unter Linux\/UNIX-Betriebssystemen kennen.","_seopress_robots_index":"","footnotes":""},"categories":[8,7],"tags":[],"class_list":["post-3350","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administration","category-grundlagen"],"_links":{"self":[{"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/posts\/3350","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/comments?post=3350"}],"version-history":[{"count":111,"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/posts\/3350\/revisions"}],"predecessor-version":[{"id":3627,"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/posts\/3350\/revisions\/3627"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/media\/3473"}],"wp:attachment":[{"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/media?parent=3350"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/categories?post=3350"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/profi-tutorials.de\/linux\/wp-json\/wp\/v2\/tags?post=3350"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}