Diese Antwort ist, weil der Prozess, den Sie versuchen zu töten, nicht im Moment des Tötens existiert. wenn Sie ps aux
Zum Beispiel starten können Sie eine Ausgabe wie diese in einem Container bekommen (es hängt von dem Behälter natürlich):
[email protected]:/# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 18400 3424 pts/0 Ss 13:55 0:00 bash
root 15 0.0 0.0 36840 2904 pts/0 R+ 13:57 0:00 ps aux
Dann, wenn Sie versuchen, den Prozess zu beenden und mit 15 PID Sie den Fehler erhalten werden weil PID 15 in dem Moment fertig ist, in dem versucht wird, es zu töten. Der Befehl ps wird beendet, nachdem Sie die Prozessinformationen angezeigt haben. Also:
[email protected]:/# kill 15
bash: kill: (15) - No such process
In einem Docker Container können Sie Prozess in der gleichen Art und Weise wie normal mit Ausnahme des Wurzelprozesses (id 1) töten. Sie können es nicht töten:
[email protected]:/# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 18400 3424 pts/0 Ss 13:55 0:00 bash
root 16 0.0 0.0 36840 2952 pts/0 R+ 13:59 0:00 ps aux
[email protected]:/# kill 1
[email protected]:/# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 18400 3424 pts/0 Ss 13:55 0:00 bash
root 17 0.0 0.0 36840 2916 pts/0 R+ 13:59 0:00 ps aux
Wie Sie sehen können Sie es nicht töten können. Wie auch immer, wenn Sie zu überzeugen versuchen, dass Sie Prozesse töten können Sie tun können:
[email protected]:/# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 18400 3424 pts/0 Ss 13:55 0:00 bash
root 18 0.0 0.0 36840 3064 pts/0 R+ 14:01 0:00 ps aux
[email protected]:/# sleep 1000 &
[1] 19
[email protected]:/# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 18400 3424 pts/0 Ss 13:55 0:00 bash
root 19 0.0 0.0 4372 724 pts/0 S 14:01 0:00 sleep 1000
root 20 0.0 0.0 36840 3016 pts/0 R+ 14:01 0:00 ps aux
[email protected]:/# kill 19
[email protected]:/# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 18400 3424 pts/0 Ss 13:55 0:00 bash
root 21 0.0 0.0 36840 2824 pts/0 R+ 14:01 0:00 ps aux
[1]+ Terminated sleep 1000
Hoffe, es hilft.
Dank Oscar. Es scheint, dass die PID, auf die ich Bezug nahm, falsch war. Es ist seltsam, so kleine PIDs im Docker-Container zu sehen, wie sie normalerweise im Host viel höher sind. –