Thursday, August 13, 2020

Kill process by port number Linux

  • ประเด็นคือ หัดเขียน Python network programming แบบ Server-Client
  • พอสั่งปิดโปรแกรมแต่ port มันยังถูกเปิดใช้งานอยู่เลย
  • แก้โค้ดจะรันใหม่ ก็รันบ่ได้ เพราะ port ที่จะรันถูกใช้งานอยู่ ทั้งที่เราปิดโปรแกรมนั้นไปแล้วนะ

Env

  • Ubuntu 18.04
  • Python 3 code Netword Programming

Solved

  • ตัวอย่างจะเป็นการปิด process ที่เปิด port 8888 บน TCP ให้มันเลิกทำงาน
  • user ที่ไม่ใช่ root เปิดใช้ port ให้ kill process แบบนี้

$ fuser -k 8888/tcp

  • root รันโปรแกรม ให้เราใส่ sudo นำหน้าด้วย

$ sudo fuser -k 8888/tcp

Add

  • เพิ่มเติม ถ้าเราจะ kill process ด้วย id ก็สั่งประมาณนี้ (1234 คือ process id)
  • list หา process id ทั้งหมด

$ ps -a

  • list หา process id แบบ filter by name

$ ps -a | grep "program name"

  • เมื่อเราได้ process id (PID) จากคำสั่งด้านบนแล้วก็ kill ได้เลย

$ kill 1234

$ sudo kill 1234

Ref

No comments:

Post a Comment

Popular Posts