Đăng xuất người dùng khác từ dòng lệnh


67

Đôi khi, khi có quá nhiều người dùng đăng nhập, nó có thể khiến máy tính của tôi trở nên rất chậm và bị lag do dung lượng RAM thấp. Tôi muốn có thể nhanh chóng đăng xuất khỏi những người dùng khác từ dòng lệnh thay vì tự chuyển sang từng người dùng và đăng xuất họ.

Điều này có thể không?

Câu trả lời:


68

đây là một câu trả lời

who -u

cung cấp cho bạn PID

Sau đó, bạn có thể giết phiên người dùng.

kill "pid"

Điều này hoạt động nhưng nó có một số tác dụng phụ kỳ lạ.
Ê-sai

@DoR ... đó là ..?
Oli

4
@Oli Chẳng hạn như khởi động lại GDM và cố gắng chuyển sang người dùng mà tôi đã giết không hoạt động.
Ê-sai

1
@AlvinRow Nếu bạn thực thi ps auxfthì bạn nhận thấy (cột ngoài cùng bên trái có tên người dùng hiệu quả) rằng phương thức này không giết tất cả các quy trình được thực thi bởi người dùng hiện tại (vì vậy có lẽ bạn không đăng xuất). Phương pháp @precise dường như đề cập đến vấn đề này, mặc dù tôi không cảm thấy thoải mái với việc gửi SIGKILL.
Dor

Tôi ngạc nhiên không có cái gì đó giống như shutdownvậy để nó có thể đưa ra cảnh báo (cho phép lưu công việc) trước khi buộc phải đăng xuất. Điều đó tùy chọn chỉ cần chuyển sang đăng nhập như thể thay đổi phiên, để phiên người dùng chạy trong nền.
pbhj

28

Bạn có thể sử dụng whođể kiểm tra những người dùng nào đã đăng nhập:

who

Bạn có thể đăng xuất người dùng bằng cách gửi KILLtín hiệu đến quy trình người dùng bằng:

sudo pkill -KILL -u <username>

(giống như sudo pkill -9 -u <username>)

thí dụ:

sudo pkill -9 -u guest-2Rw4Lq

(để giết người dùng phiên khách có tên guest-2Rw4Lq)


Điều này làm việc tốt nhất cho tôi. Việc chạy đơn giản chỉ kill "pid"còn lại hàng tấn quy trình bởi người dùng vẫn đang chạy, nơi điều này đã giết chết tất cả.
thebaer

1
Tại sao SIGKILLvà không phải là mặc định SIGTERM? Các SIGKILLkhông lành mạnh ..
Dor

sudo pkill -KILL -u <username>đối với tôi đã chuyển tôi sang phiên giao diện điều khiển đầu tiên; Tôi nghĩ rằng nó đã giết phiên hiện tại của tôi nhưng ctrl + alt + F7 đã đưa tôi trở lại phiên đồ họa hiện tại.
pbhj

3
who -u


> adam     ttys000  Aug  4 09:22   .       91228 

sau đó

sudo kill 'PID number'
sudo kill 91228

PID (ID tiến trình) là số có bốn hoặc năm chữ số ở cuối phần đọc của người dùng (91228)


1
Hình ảnh của bạn cho thấy không có số có bốn chữ số?
Dronz
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.