Cách tiêu diệt quy trình Linux theo số cổng

Oct 4, 2025
Linux

Để tiêu diệt một quy trình Linux, bạn cần ID hoặc tên của nó. Nếu tất cả những gì bạn biết là cổng mà nó sử dụng, bạn vẫn có thể giết nó? Vâng, theo nhiều cách khác nhau.

Quá trình giết chết

Thỉnh thoảng a Quá trình Linux có thể trở nên không phản hồi. Nó có thể ngừng hoạt động chính xác hoặc nó có thể tiếp tục hoạt động nhưng bỏ qua các yêu cầu để nó tắt hoặc bắt đầu ngấu nghiến bộ nhớ, CPU hoặc băng thông mạng.

Dù động cơ của bạn là gì, có nhiều cách để tiêu diệt một quá trình từ dòng lệnh Linux. Phương pháp cổ điển là sử dụng lệnh tiêu diệt id quy trình của quá trình bạn muốn chấm dứt. Các giết Lệnh có một số người thân gần gũi. Các pkill lệnh sẽ giết một quy trình theo tên, và Killall sẽ giết tất cả các quá trình mà nó có thể tìm thấy một phần của một cái tên.

Nếu tất cả những gì bạn biết về một quy trình là nó đang sử dụng một cổng trên máy tính của bạn, vẫn có nhiều cách để xác định và tiêu diệt nó. Theo thuật ngữ kết nối mạng, "cổng" có thể có nghĩa là một kết nối vật lý mà bạn chèn một cáp có phích cắm vào cuối, chẳng hạn như CAT5 hoặc 6 Mạng dẫn đầu , hoặc nó có thể có nghĩa là một cổng phần mềm.

Cổng phần mềm là phần cuối cùng của kết nối mạng. Các địa chỉ IP của một thiết bị xác định máy tính hoặc thiết bị mạng khác. Các ứng dụng bên trong máy tính sử dụng các cổng khác nhau. Chúng cung cấp một mức độ hạt khác. Lưu lượng truy cập mạng đã đến đúng máy tính bằng địa chỉ IP và bằng cách sử dụng địa chỉ cổng, nó có thể được gửi đến đúng ứng dụng.

Nó giống như thư bưu điện đến một khách sạn, sau đó được sắp xếp và chuyển đến các phòng thích hợp. Địa chỉ IP giống như địa chỉ đường phố của khách sạn và số phòng giống như số cổng.

Nếu bạn thấy hoạt động mạng trên một cổng và bạn không nhận ra quá trình tạo ra nó hoặc hành vi của nó là có vấn đề hoặc đáng ngờ, bạn có thể muốn muốn giết quá trình này. Ngay cả khi tất cả những gì bạn biết là số cổng, bạn có thể theo dõi quy trình và tiêu diệt nó.

Tạo kết nối với Socat

Để chúng tôi có một số kết nối để giết, chúng tôi sẽ sử dụng Socat Để tạo kết nối mạng bằng các giao thức khác nhau. Bạn cần phải cài đặt Socat . Để cài đặt nó trên Ubuntu, hãy sử dụng lệnh này:

Cú pháp cho Socat là đơn giản nếu một chút dài dòng. Chúng tôi cần cung cấp các địa chỉ nguồn và đích. Đối với mỗi trong số này, chúng tôi cần cung cấp giao thức, địa chỉ IP và số cổng. Chúng tôi có thể thay thế stdin hoặc stdout như một nguồn hoặc điểm đến.

Lệnh này tạo ra kết nối giữa ổ cắm nghe TCP trên cổng 7889, trên địa chỉ IP loopback là 127.0.0.1 và stdout. Ampersand ” & amp; " Chạy lệnh trong nền , để chúng tôi giữ quyền truy cập vào dòng lệnh.

Chúng tôi sẽ tạo thêm hai kết nối để chúng tôi có một lựa chọn nhỏ các ổ cắm bằng các giao thức khác nhau. Chúng tôi sẽ tạo ra a Kết nối UDP và một Kết nối SCTP . Phần duy nhất của lệnh thay đổi là giao thức.

Sử dụng tiêu diệt

Tất nhiên, chúng tôi có thể sử dụng giết Để chấm dứt quá trình, miễn là chúng ta biết ID của quá trình là gì. Để tìm PID, chúng ta có thể sử dụng các LSOF yêu cầu .

Để liệt kê các chi tiết của quy trình trên cổng 7889 đang sử dụng giao thức TCP, chúng tôi sử dụng -Tôi (Địa chỉ Internet) Tùy chọn, như thế này.

PID của quá trình này là 3141 và chúng ta có thể tiếp tục và sử dụng nó với giết :

Chúng ta có thể tự cứu mình một số nỗ lực nếu chúng ta sử dụng đường ống. Nếu chúng ta đi bộ đầu ra của LSOF vào trong awk kể awk Để tìm kiếm các dòng có chứa cổng mà chúng tôi quan tâm đến trên 7889 và in trường thứ hai từ dòng đó, chúng tôi sẽ cô lập PID.

Sau đó chúng ta có thể ống đầu ra từ awk vào giết lệnh sử dụng Xargs . Các Xargs lệnh lấy đầu vào đường ống của nó và chuyển nó sang lệnh khác như các tham số dòng lệnh . Chúng tôi sẽ sử dụng Xargs với giết yêu cầu.

Chúng tôi không nhận được bất kỳ phản hồi trực quan. Theo cách điển hình của Linux, không có tin tức là tin tốt. Nếu bạn muốn kiểm tra xem quá trình đã bị chấm dứt, bạn có thể sử dụng LSOF một lần nữa.

Bởi vì LSOF Không báo cáo bất cứ điều gì, chúng tôi biết ở đó không có kết nối như vậy.

Chúng tôi có thể loại bỏ một quy trình bằng giao thức UDP chỉ bằng cách thay thế TCP TCP bằng cách sử dụng UDP, trong lệnh trước đó của chúng tôi.

Chúng ta có thể sử dụng các ss yêu cầu Để làm việc đó. Chúng tôi sử dụng -S (SCTP) tùy chọn để tìm kiếm ổ cắm SCTP, -Một (tất cả) tùy chọn để tìm kiếm tất cả các loại ổ cắm (nghe, chấp nhận, kết nối, v.v.) và -P (Quy trình) Tùy chọn để liệt kê các chi tiết của quy trình bằng cách sử dụng ổ cắm.

Chúng ta có thể phân tích cú pháp đầu ra đó bằng cách sử dụng grep awk . Chúng tôi cũng có thể phân tích nó bằng cách sử dụng grep Và một số perl regexes, nhưng cách này dễ hiểu hơn nhiều. Nếu bạn định sử dụng điều này nhiều hơn một hoặc hai lần, bạn có thể tạo ra một Bí danh hoặc hàm vỏ ra khỏi nó.

Chúng tôi sẽ cung cấp đầu ra từ ss vào trong grep và tìm kiếm số cổng của chúng tôi, 7889. Chúng tôi sẽ đặt đầu ra từ grep vào trong awk . TRONG awk , chúng tôi sử dụng -F (Chuỗi phân tách) tùy chọn để đặt dấu phẩy Thì Là một dấu phân cách trường. Chúng tôi tìm kiếm một chuỗi chứa PID PID =, và in trường phân loại dấu phẩy thứ hai từ chuỗi đó.

Chúng ta có thể đường ống điều đó vào awk Một lần nữa, đặt dấu phân cách trường thành dấu hiệu bình đẳng = "Và in trường thứ hai từ cái đó Chuỗi, sẽ là văn bản đằng sau dấu hiệu.

Bây giờ chúng tôi đã cách ly ID quy trình. Chúng ta có thể sử dụng Xargs để chuyển PID cho giết như một tham số dòng lệnh.

Điều đó giết chết quá trình sử dụng ổ cắm giao thức SCTP trên cổng 7889.

Lệnh fuser

Các Fuser Lệnh đơn giản hóa mọi thứ rất nhiều. Nhược điểm là, nó chỉ hoạt động với TCP và UDP ổ cắm. Về mặt tích cực, đó là hai loại ổ cắm phổ biến nhất mà bạn sẽ cần phải đối phó. Các Fuser Lệnh đã được cài đặt trên máy tính Ubuntu, Fedora và Manjaro mà chúng tôi đã kiểm tra.

Tất cả những gì bạn cần làm là sử dụng -K (KILL) Tùy chọn, và cung cấp cổng và giao thức. Bạn có thể sử dụng -N .

Số cổng, giao thức và PID của quá trình chấm dứt được in trong cửa sổ thiết bị đầu cuối.

Hãy thử Fuser trước

Nó có thể được cài đặt trên máy tính mà bạn đang làm việc và giao thức có thể là TCP hoặc UDP, do đó, có một cơ hội tuyệt vời, cách đơn giản nhất sẽ phù hợp với bạn.

  • OnePlus 11 ở đây, nhưng với một khởi đầu khó khăn
  • Cách chặn hoặc bỏ chặn ai đó trên tiktok
  • Airpods Pro có sự cạnh tranh mới: OnePlus Buds Pro 2
  • Microsoft Edge đang trò chuyện AI và một cái nhìn mới trên Windows
  • Tai nghe tốt nhất cho người hâm mộ iPhone chỉ đạt mức giá thấp nhất của họ
  • Microsoft đang biến Bing thành công cụ tìm kiếm AI

Linux - Các bài báo phổ biến nhất

Cách buộc người dùng thay đổi mật khẩu của họ trên Linux

Linux Nov 4, 2025

Ilya Titchev / Shutterstock [số 8] Mật khẩu là Keystone để bảo mật tài khoản. Chúng tôi sẽ chỉ cho bạn cách đặt lại mật kh..


Làm thế nào để xử lý một dòng tập tin theo Line trong một Linux Bash Script

Linux Feb 3, 2026

Fatmawati Achmad Zaenuri / Shutterstock [số 8] Thật dễ dàng để đọc nội dung của dòng tệp văn bản Linux theo dòng trong một t�..


Cách sử dụng mật khẩu được mã hóa trong tập lệnh Bash

Linux Jun 30, 2025

fatmawati achmad zaenuri / shutterstock.com [số 8] Nếu bạn bị buộc phải sử dụng tập lệnh Linux để kết nối với tài nguyên đ�..


Làm thế nào để sử dụng strace để hệ thống Linux Màn hình cuộc gọi

Linux Jun 23, 2025

fatmawati achmad zaenuri / shutterstock.com [số 8] Các chương trình Linux hỏi Kernel. [số 8] để làm một số điều cho h�..


6 xuất sắc nhất Lightweight Linux distro

Linux Jul 27, 2025

3dmi / shutterstock.com. [số 8] Nếu máy tính Windows hoặc Mac của bạn đã cũ và đang vật lộn để theo kịp, cài đặt Linux có th..


Có gì mới trong Debian 11 “Bullseye”

Linux Jul 22, 2025

Debian. [số 8] , Gian chủ của nhiều bản phân phối Linux khác, đã phát hành 11 trong giai đoạn thử nghiệm. Bạn đang cân nhắc những đức tính ..


Linux Hóa 30: Làm thế nào Một Sở thích dự án chinh phục thế giới

Linux Sep 17, 2025

Larry ewing và gimp [số 8] Trên Ngày 17 tháng 9 năm 1991 , Linus Torvalds đã phát hành Linux Kernel (phiên bản 0,01) lần đầu ..


5 tính năng ubuntu linux bạn nên sử dụng

Linux Dec 6, 2025

Ubuntu Linux là tính năng phong phú và đi kèm với lựa chọn phần mềm được cài đặt sẵn. Đào sâu hơn một chút, và bạn sẽ tìm thấy một số tính năng b..


Thể loại