Programme im Zusammenhang mit Prozessen: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
(Der Seiteninhalt wurde durch einen anderen Text ersetzt: „*ps *pgrep *pkill *nice *renice *top *pstree *Jobs“)
Markierung: Ersetzt
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 3: Zeile 3:
 
*[[pkill]]
 
*[[pkill]]
 
*[[nice]]
 
*[[nice]]
 
+
*[[renice]]
====renice: Ändert den Grundwert der Priorität eines laufenden Prozesses====
+
*[[top]]
renice 10 5742
+
*[[pstree]]
  5742: Alte Priorität: 0, neue Priorität: 10
+
*[[Jobs]]
 
 
====top: Zeigt die Prozesse mit ihrem Status an (Abbrechen mit q)====
 
top
 
  top - 08:51:08 up 20 min,  1 user,  load average: 0.00, 0.02, 0.06
 
  Tasks:  93 total,  1 running,  92 sleeping,  0 stopped,  0 zombie
 
  Cpu(s):  1.6%us,  3.1%sy,  0.1%ni, 84.9%id, 10.2%wa,  0.0%hi,  0.2%si,  0.0%st
 
  Mem:    509504k total,  273948k used,  235556k free,    11312k buffers
 
  Swap:  321260k total,        0k used,  321260k free,  118380k cached
 
 
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                     
 
  2208 mysql    20  0  125m  21m 5552 S  1.7  4.2  0:02.29 mysqld                                                                       
 
  3201 root      20  0  2444 1064  828 R  1.7  0.2  0:00.04 top                                                                         
 
      1 root      20  0  1908  780  564 S  0.0  0.2  0:02.19 init                                                                         
 
      2 root      15  -5    0    0    0 S  0.0  0.0  0:00.00 kthreadd                                                                     
 
      3 root      RT  -5    0    0    0 S  0.0  0.0  0:00.00 migration/0                                                                 
 
      4 root      15  -5    0    0    0 S  0.0  0.0  0:00.03 ksoftirqd/0                                                                 
 
      5 root      RT  -5    0    0    0 S  0.0  0.0  0:00.00 watchdog/0                                                                   
 
      6 root      15  -5    0    0    0 S  0.0  0.0  0:00.04 events/0                                                                     
 
      7 root      15  -5    0    0    0 S  0.0  0.0  0:00.00 khelper                                                                     
 
      8 root      RT  -5    0    0    0 S  0.0  0.0  0:00.00 kstop/0                                                                     
 
      9 root      15  -5    0    0    0 S  0.0  0.0  0:00.00 kintegrityd/0                                                               
 
    10 root      15  -5    0    0    0 S  0.0  0.0  0:00.03 kblockd/0                                                                   
 
    11 root      15  -5    0    0    0 S  0.0  0.0  0:00.00 kacpid                                                                       
 
    12 root      15  -5    0    0    0 S  0.0  0.0  0:00.00 kacpi_notify                                                                 
 
    13 root      15  -5    0    0    0 S  0.0  0.0  0:00.00 cqueue                                                                       
 
    14 root      15  -5    0    0    0 S  0.0  0.0  0:00.53 ata/0                                                                       
 
    15 root      15  -5    0    0    0 S  0.0  0.0  0:00.00 ata_aux
 
 
 
Kommandos
 
 
 
h - Hilfe
 
u - User
 
k - Kill
 
r - Renice
 
d - Delay (Default 3s)
 
n - Tasks (Default unbegrenzt)
 
W - Schreibe aktuelle Konfiguration in Datei
 
q - Quit
 
 
 
==pstree: Zeigt die Prozesse als Baumstruktur==
 
Mit -p werden auch die PID's ausgegeben
 
pstree
 
init─┬─NetworkManager
 
      ├─acpid
 
      ├─apache2───5*[apache2]
 
      ├─atd
 
      ├─bluetoothd
 
      ├─console-kit-dae───63*[{console-kit-dae}]
 
      ├─cron
 
      ├─cupsd
 
      ├─dbus-daemon
 
      ├─dd
 
      ├─gdm───gdm─┬─Xorg
 
      │          └─gdmgreeter
 
      ├─6*[getty]
 
      ├─hald───hald-runner─┬─hald-addon-acpi
 
      │                    ├─hald-addon-inpu
 
      │                    └─2*[hald-addon-stor]
 
      ├─klogd
 
      ├─nm-system-setti
 
      ├─nmbd
 
      ├─nscd───11*[{nscd}]
 
      ├─portmap
 
      ├─rpc.statd
 
      ├─slapd───2*[{slapd}]
 
      ├─smbd───smbd
 
      ├─sshd───sshd───bash───bash───pstree
 
      ├─syslogd
 
      ├─system-tools-ba
 
      ├─udevd
 
      ├─winbindd─┬─winbindd───winbindd
 
      │          └─3*[winbindd]
 
      └─wpa_supplicant
 
 
 
===Jobs===
 
Unter einem Job versteht man ein Programm, welches man von der Shell gelöst
 
hat. D. h. man kann ganz normal weiter arbeiten und der Job verrichtet seinen
 
Dienst im Hintergrund. Man kann jederzeit zu diesem Job wieder Kontakt
 
aufnehmen.
 
 
 
Ein Job kann auf 2 Arten gestarten werden:
 
 
 
# Durch Anhängen des & Zeichens beim Programmstart
 
*tail -f /var/log/messages &
 
Jun 19 06:59:31 zero -- MARK --
 
Jun 19 07:19:31 zero -- MARK --
 
Jun 19 07:39:32 zero -- MARK --
 
Jun 19 07:44:57 zero syslogd 1.5.0#5ubuntu3: restart.
 
Jun 19 07:59:32 zero -- MARK --
 
Jun 19 08:19:32 zero -- MARK --
 
Jun 19 08:39:32 zero -- MARK --
 
Jun 19 08:59:32 zero -- MARK --
 
Jun 19 09:19:33 zero -- MARK --
 
Jun 19 09:39:33 zero -- MARK --
 
[3] 27421
 
 
 
# Durch Stoppen des Prozesses durch Drücken von Strg-Z und in den Hintergrund schicken mit %n (n ist die Jobnummer)
 
*watch cat /proc/cpuinfo
 
Strg-Z
 
[4]+  Stopped                watch cat /proc/cpuinfo
 
*bg %4
 
[4]+ watch cat /proc/cpuinfo &
 
 
 
Anweisungen im Zusammenhang mit Jobs (n ist die Jobnummer)
 
* bg %n : Einen Job in den Hintergrund stellen (wie oben)
 
* fg %n : Einen Job in den Vordergrund holen
 
* fg %4
 
watch cat /proc/cpuinfo
 
 
 
* jobs : Aktive Jobs ausgeben
 
 
 
*jobs
 
[1]  Running                tail -f /var/log/syslog &
 
[2]  Running                tail -f /var/log/syslog &
 
[3]-  Running                tail -f /var/log/messages &
 
[4]+  Stopped                watch cat /proc/cpuinfo
 
 
 
* Strg-Z : Einen Vordergrund-Job vorübergehend anhalten
 
* kill -STOP %n : Unterbricht Job im Hintergrund
 
* kill -STOP %1
 
* jobs
 
[1]+  '''Stopped'''                tail -f /var/log/syslog
 
[2]  Running                tail -f /var/log/syslog &
 
[3]   Running                tail -f /var/log/messages &
 
[4]-  Stopped                watch cat /proc/cpuinfo
 
* kill -CONT %n : Setzt den unterbrochenen Job im Hintergrund fort
 
* kill -CONT %1
 
* jobs
 
[1]+  '''Running'''                tail -f /var/log/syslog &
 
[2]  Running                tail -f /var/log/syslog &
 
[3]  Running                tail -f /var/log/messages &
 
[4]-  Stopped                watch cat /proc/cpuinfo
 
* kill -KILL %n : Tötet Job im Hintergrund
 
* kill -KILL %1
 
* jobs
 
[1]+  '''Killed'''                  tail -f /var/log/syslog
 
[2]  Running                tail -f /var/log/syslog &
 
[3]  Running                tail -f /var/log/messages &
 
[4]-  Stopped                watch cat /proc/cpuinfo
 
* jobs
 
[2]  Running                tail -f /var/log/syslog &
 
[3]-  Running                tail -f /var/log/messages &
 
[4]+  Stopped                watch cat /proc/cpuinfo
 
 
 
Bedingungen, die zu Jobausführung eingehalten werden sollen:
 
* Der Job soll nicht auf den Bildschirm schreiben (Standardausgabe +Standardfehlerkanal).
 
* Er soll keine Eingaben vom Benutzer erwarten.
 

Aktuelle Version vom 10. November 2022, 14:30 Uhr