Probleme beim Prozessabbruch

Probleme beim Prozessabbruch

Ich versuche, eine Serversoftware zu programmieren, die viele Tests auf der Java-/Scala-Plattform erfordert. Immer wenn ich den Code kompiliere und ausführe, beginnt er, auf Port 80 zu lauschen. Manchmal muss ich ihn mit Strg+C beenden, wenn er hängt. In diesem Fall gibt Ubuntu den Port nicht frei. Um den Prozess auszuführen, muss ich also die Maschine neu starten.

Ich sehe dies bei ps aux

root      1924  0.0  0.0   5796  1660 pts/0    T    05:44   0:00 sudo scala -
root      1925  0.2  1.5 491448 40796 pts/0    Tl   05:44   0:03 java -Xmx256M -Xms16M

Also Prozess 1924 und 1925. Ich habe bei beiden sudo kill ausgeführt. Aber dann bleiben sie auch nach langer Zeit bestehen.

sudo nmap -T Aggressive -A -v 127.0.0.1 -p 1-65000

Scanning localhost (127.0.0.1) [65000 ports]

Discovered open port 80/tcp on 127.0.0.1

Das bedeutet, es ist immer noch da!

sudo netstat --tcp --udp --listening --program

tcp6       0      0 [::]:www                [::]:*                  LISTEN      1925/java
tcp6       0      0 ip6-localhost:ipp       [::]:*                  LISTEN      1185/cupsd

Das heißt, es ist 1925 - Java

Wie man es tötet.

Antwort1

kill -9sendet ein SIGKILL, mit dem Sie jeden Prozess beenden können, der nicht auf IO wartet.

Ein normaler Proxy killsendet lediglich SIGTERM, das den Prozess lediglich zum Beenden auffordert. SIGKILL hingegen weist das Betriebssystem an, den Prozess sofort zu beenden.

verwandte Informationen