Cách chấm dứt các quy trình không phản hồi trong Linux với kill và pkill

Cách chấm dứt các quy trình không phản hồi trong Linux với kill và pkill

Đối phó với các chương trình không phản hồi có thể là một công việc khó khăn, đặc biệt nếu bạn đang chạy trên phần cứng cũ hơn. Trong trường hợp đó, việc đóng băng hệ thống trở thành một vấn đề phổ biến. May mắn thay, có rất nhiều cách để loại bỏ các tiến trình không phản hồi trong Linux.





Các lệnh kill và pkill cung cấp các giải pháp đơn giản nhưng hiệu quả để chấm dứt các quá trình zombie không phản hồi từ thiết bị đầu cuối. Các phần dưới đây mô tả cách diệt các tiến trình bị treo trong Linux bằng cách sử dụng kill và pkill.





Chấm dứt các quy trình không phản hồi bằng cách sử dụng kill

Lệnh kill trong Linux cho phép bạn thoát khỏi các tiến trình không phản hồi một cách dễ dàng. Nó gửi một tín hiệu kết thúc quá trình. Theo mặc định, kill gửi SIGTERM tín hiệu, được biểu thị bằng số tín hiệu mười lăm . Ví dụ sau sử dụng lệnh kill để dừng quá trình có PID là 27065.





kill 27065

Người dùng có thể gửi các tín hiệu khác bằng cách chỉ định tên hoặc số tín hiệu. Ví dụ: các lệnh tiêu diệt dưới đây dừng quá trình zombie bằng cách sử dụng SIGKILL tín hiệu hệ thống, được biểu thị bằng số tín hiệu 9 .

kill -9 27065
kill -SIGKILL 27065

Sự khác biệt giữa SIGTERM và SIGKILL là các tiến trình có thể bắt và bỏ qua tín hiệu SIGTERM. Tuy nhiên, SIGKILL miễn nhiễm với việc xử lý quy trình và tiêu diệt các chương trình ngay lập tức.



Bạn có thể xem danh sách tất cả các tín hiệu có sẵn bằng cách sử dụng các lệnh kill bên dưới.

kill -l
kill -L

Nhìn chung, SIGKILL sẽ phù hợp hơn khi xử lý các quy trình hệ thống không phản hồi . Mặt khác, SIGTERM là cách để đi nếu bạn muốn chấm dứt các chương trình bị treo một cách duyên dáng.





cách chuyển mac sang roku

Diệt các quy trình không phản hồi bằng pkill

Lệnh pkill làm cho quá trình kết thúc trong Linux dễ dàng hơn bằng cách cho phép chúng tôi hủy các chương trình dựa trên tên của chúng. Ví dụ: lệnh dưới đây giết chết nano chương trình sử dụng pkill.

pkill nano

Giống như kill, pkill cũng gửi tín hiệu SIGTERM theo mặc định. Sử dụng tín hiệu SIGKILL nếu bạn muốn dừng quá trình không phản hồi ngay lập tức.





pkill -9 nano

Cách lấy ID quy trình (PID) của một quy trình

Có thông tin PID có thể giúp ích rất nhiều khi chấm dứt các quy trình không phản hồi trong Linux. Bạn có thể lấy số PID của một quy trình theo một số cách. Lệnh sau truy xuất PID của một quá trình có tên là nano bằng cách sử dụng lệnh grep và ps.

ps aux | grep nano

Bạn cũng có thể sử dụng lệnh pgrep, lệnh này sẽ xuất ra ID quy trình trực tiếp.

kernel-power 41 (63)
pgrep nano

Quản lý quy trình không phản hồi trên Linux

Các lệnh kill và pkill làm cho việc xử lý các quy trình không phản hồi trong Linux trở nên dễ dàng. Tất cả những gì bạn cần để ngăn quá trình zombie là PID của nó và quyền truy cập vào một trình bao. Tuy nhiên, bạn có thể cần thêm quyền sudo khi hủy các quy trình thuộc về người dùng khác. Vì vậy, nếu bạn đang sử dụng hệ thống nhiều người dùng, hãy yêu cầu quản trị viên thêm bạn vào danh sách sudoers trước khi bạn thực hiện bất kỳ hành động nào.

Đăng lại Đăng lại tiếng riu ríu E-mail Cách thêm người dùng vào danh sách Sudoers trong Linux

Bạn muốn cấp đặc quyền quản trị cho người dùng Linux? Đây là cách bạn có thể thêm người dùng vào danh sách sudoers.

Đọc tiếp
Chủ đề liên quan
  • Linux
  • Lệnh Linux
  • Quản trị hệ thống
Giới thiệu về tác giả Rubaiat Hossain(Đã xuất bản 39 bài báo)

Rubaiat là một sinh viên tốt nghiệp CS có niềm đam mê mãnh liệt với mã nguồn mở. Ngoài việc là một cựu chiến binh Unix, anh ấy còn tham gia vào lĩnh vực an ninh mạng, mật mã và lập trình chức năng. Anh ấy là một người đam mê sưu tập sách cũ và có niềm ngưỡng mộ không bao giờ hết đối với nhạc rock cổ điển.

Xem thêm từ Rubaiat Hossain

Theo dõi bản tin của chúng tôi

Tham gia bản tin của chúng tôi để biết các mẹo công nghệ, đánh giá, sách điện tử miễn phí và các ưu đãi độc quyền!

Bấm vào đây để đăng ký