Làm thế nào để chấm dứt một tài nguyên/quy trình trong Linux? Rõ ràng chúng ta tìm PID của tài nguyên sau đó truyền PID vào lệnh kill.
Nói chính xác hơn, chúng ta có thể tìm PID của tài nguyên (ví dụ: cửa sổ dòng lệnh) như sau:
$ ps -A | grep -i terminal
6228 ? 00:00:00 gnome-terminal
Trong đầu ra trên, số '6228' chính là PID của quy trình (gnome-terminal), sử dụng lệnh kill để chấm dứt quy trình như được hiển thị sau:
$ kill 6228
Lệnh kill gửi một tín hiệu đến quy trình, PID của quy trình được truyền kèm với lệnh.
Hoặc có thể sử dụng lệnh pkill, nó chấm dứt một quy trình dựa trên tên và các thuộc tính khác của quy trình. Để chấm dứt một quy trình có tên là terminal, chúng ta cần thực thi:
$ pkill terminal
Lưu ý: Độ dài tên quy trình trong pkill bị giới hạn thành 15 ký tự.
pkill có vẻ tiện hơn vì bạn có thể chấm dứt một quy trình mà không cần phải tìm PID của nó. Nhưng nếu bạn muốn có kiểm soát tốt hơn về hệ thống của mình, không gì vượt qua lệnh 'kill'. Bằng cách sử dụng kill, bạn sẽ hiểu rõ hơn về quy trình mà bạn đang chấm dứt.
Chúng tôi đã đề cập đến một hướng dẫn chi tiết về các lệnh kill, pkill và killall.
Đối với những người đang chạy X server, có một công cụ khác gọi là 'xkill' có thể chấm dứt một quy trình từ cửa sổ X mà không cần truyền tên quy trình hoặc PID của nó.
Công cụ 'xkill' buộc X server đóng kết nối với khách hàng của nó, điều này dẫn đến việc chấm dứt khách hàng thông qua tài nguyên X của nó. 'xkill' là một phần của các tiện ích X11 rất hữu ích trong việc chấm dứt các cửa sổ không cần thiết.
Nó hỗ trợ các tùy chọn như kết nối với một X Server cụ thể (được hiển thị bằng cách sử dụng số hiển thị khi có nhiều X Server đang chạy trên một máy chủ đồng thời) và chấm dứt tất cả các khách hàng (không được khuyến nghị) có cửa sổ cấp trên màn hình cũng như xem xét frame.
Để có danh sách tất cả các khách hàng, bạn có thể chạy:
$ xlsclients
Kết quả mẫu
' ' /usr/lib/libreoffice/program/soffice
deb gnome-shell
deb Docky
deb google-chrome-stable
deb soffice
deb gnome-settings-daemon
deb gnome-terminal-server
Nếu không có thông số xác định tài nguyên được truyền kèm id, xkill sẽ biến con trỏ chuột thành biểu tượng đặc biệt, tương tự 'X'. Chỉ cần nhấp vào cửa sổ bạn muốn chấm dứt và điều này sẽ chấm dứt việc giao tiếp với máy chủ hoặc nghĩa là chương trình bị chấm dứt.
$ xkill
Điều quan trọng cần lưu ý là 'xkill' không đảm bảo việc đóng kết nối của nó sẽ chấm dứt/đình chỉ thành công. Hầu hết các ứng dụng sẽ bị chấm dứt khi kết nối của chúng với máy chủ bị đóng. Tuy nhiên, một số ứng dụng vẫn có thể tiếp tục chạy.
Cần đề cập đến các điểm sau đây:
- Công cụ này chỉ hoạt động khi X11 server đang chạy, vì xkill là một phần của tiện ích X11.
- Không nhầm lẫn giữa việc đóng và chấm dứt một tài nguyên. Khi chấm dứt một tài nguyên, bạn có thể mong đợi nó không thoát một cách sạch sẽ.
- Đây không phải là một phiên bản thay thế cho tiện ích kill.
Tôi có cần phải vào dòng lệnh Linux để gọi xkill?
Không, bạn không cần chạy xkill từ Dòng lệnh Linux. Bạn có thể thiết lập một phím tắt và gọi xkill chỉ bằng cách nhấn cùng một phím tắt.
Dưới đây là cách thiết lập một phím tắt trên một môi trường Gnome3 điển hình.
Điền vào Cài đặt –> Chọn Bàn phím, nhấp vào '+' và thêm tên và lệnh. Nhấp vào mục mới và nhấn phím bạn muốn sử dụng làm phím tắt. Tôi đã sử dụng Ctrl+Alt+Shift+x.
Lần sau bạn muốn chấm dứt một tài nguyên X chỉ cần gọi phím tắt (Ctrl+Alt+Shift+x), và bạn sẽ thấy con trỏ chuột thay đổi thành 'x'. Nhấp vào tài nguyên 'x' bạn muốn chấm dứt và xong!