netstat -tulnap
cho tôi thấy những cổng nào đang được sử dụng Làm thế nào để giải phóng một cổng trong Linux?
netstat -tulnap
cho tôi thấy những cổng nào đang được sử dụng Làm thế nào để giải phóng một cổng trong Linux?
Câu trả lời:
Như những người khác đã nói, bạn sẽ phải giết tất cả các quy trình đang lắng nghe trên cổng đó. Cách dễ nhất để làm điều đó là sử dụng lệnh fuser (1). Ví dụ: để xem tất cả các quy trình lắng nghe yêu cầu http trên cổng 80 (chạy dưới quyền root hoặc sử dụng sudo):
# fuser 80/tcp
Nếu bạn muốn giết chúng, thì chỉ cần thêm tùy chọn -k.
sudo yum install psmisc
)
kill -9 $(fuser 80/tcp 2>/dev/null)
Để tiêu diệt một cổng cụ thể trong Linux, hãy sử dụng lệnh bên dưới
sudo fuser -k Port_Number/tcp
thay thế Port_Number bằng cổng bị chiếm đóng của bạn.
Bạn có thể sử dụng tcpkill
(một phần của dsniff
gói) để hủy kết nối trên cổng bạn cần:
sudo tcpkill -9 port PORT_NUMBER
$ sudo tcpkill -9 port 5432 tcpkill: listening on lxcbr0 [port 5432]
Trong loại thiết bị đầu cuối:
netstat -anp|grep "port_number"
Nó sẽ hiển thị các chi tiết cổng. Tới cột cuối cùng. Nó sẽ ở định dạng này. Ví dụ: - PID / java
sau đó thực hiện:
kill -9 PID. Worked on Centos5
Đối với MAC:
lsof -n -i :'port-number' | grep LISTEN
Trả lời mẫu:
java 4744 (PID) test 364u IP0 asdasdasda 0t0 TCP *:port-number (LISTEN)
và sau đó thực thi:
kill -9 PID
Làm việc trên Macbook
sudo netstat
thực sự xem các bộ vi xử lý :)
Các "netstat --programs"
lệnh sẽ cung cấp cho bạn những thông tin quá trình, giả sử bạn đang root. Sau đó, bạn sẽ phải giết quá trình "vi phạm" có thể bắt đầu lại chỉ để làm phiền bạn :-).
Bạn thực sự đang cố gắng đạt được điều gì ở đây? Các giải pháp sẽ thay đổi dựa trên các quy trình giữ các cổng đó.
Giết quá trình đang lắng nghe cổng trong câu hỏi. Tôi tin rằng netstat cho bạn thấy quá trình id.
Nếu bạn thực sự muốn giết một tiến trình ngay lập tức, bạn gửi tín hiệu KILL thay vì tín hiệu HẠN (yêu cầu dừng lại, yêu cầu đầu tiên sẽ có hiệu lực ngay lập tức mà không cần dọn dẹp). Nó rất dễ làm:
kill -KILL <pid>
Tuy nhiên, hãy lưu ý rằng tùy thuộc vào chương trình bạn đang dừng, trạng thái của chương trình có thể bị hỏng nghiêm trọng khi thực hiện. Bạn thường chỉ muốn gửi tín hiệu KILL khi kết thúc bình thường không hoạt động. Tôi đang tự hỏi vấn đề tiềm ẩn là bạn cố gắng giải quyết vấn đề gì và liệu giết chóc có phải là giải pháp đúng đắn hay không.
Tôi nghĩ cách duy nhất sẽ là dừng quá trình mở cổng.
Tắt máy tính luôn giết chết quá trình cho tôi.