Buộc đăng xuất người dùng


60

Tôi Khi tôi đăng nhập vào máy rootvà gõ whođể xem người dùng nào đang đăng nhập, tôi thấy một người khác cũng đã đăng nhập bằng root

devuser   pts/0        2011-11-18 09:55 (xxx.xxx.xxx.xxx)
root      pts/1        2011-11-18 09:56 (xxx.xxx.xxx.xxx)
testuser  pts/2        2011-11-18 14:54 (xxx.xxx.xxx.xxx)
root      pts/3        2011-11-18 14:55 (xxx.xxx.xxx.xxx)

Làm cách nào tôi có thể buộc người dùng root ở pts / 3 đăng xuất?


9
Bạn đã có một vấn đề thậm chí còn lớn hơn để giải quyết. Vô hiệu hóa đăng nhập gốc trực tiếp và buộc người dùng của bạn sử dụng sudo.
Xenoactive

Câu trả lời:


55

Bạn chấm dứt một phiên bằng cách giết tiến trình cha mẹ của nó, được gọi là người lãnh đạo phiên. Tìm hiểu quá trình đó là với:

ps -dN|grep pts/3

10
Và sau đó giết quá trình đó bằng cách sử dụngkill -9 <processid>
Mithun Sreedharan

5
Chỉ kill <pid>cần là đủ, phải không? Vui lòng lưu kill -9s cho các quy trình xử lý sai mà không phản hồi với INT, HUP hoặc TERM; nó giống như sự khác biệt giữa tắt máy tính bằng hệ thống menu của HĐH so với rút phích cắm trên máy tính.
TheDudeAdides

26

Để giết và đăng xuất người dùng, bạn có thể gửi tín hiệu KILL. Gõ lệnh sau:

# skill -KILL -u vivek

Kiểm tra các liên kết này để biết thêm thông tin:


6
Nếu tôi đăng nhập với cùng một người dùng thì sao?
Mithun Sreedharan

các lệnh này hoạt động cho siêu người dùng .. bạn phải đăng nhập với tư cách là siêu người dùng .. hệ điều hành mạng tuân theo cách tiếp cận này để bảo mật .. tôi nghĩ các liên kết đó cũng nói giống như đăng nhập với tư cách quản trị viên ..
Niranjan Singh

nó cũng đá tôi ra sudo su -, mặc dù tôi đã root, nhưng tôi đoán cuối cùng tôi đã không đến. quay trở lại máy chủ cho thấy tôi là người duy nhất. tôi đã có 4 trường hợp của bản thân mình, tôi đoán tôi sẽ nói.
pjammer

5
@Mithun Bạn có thể sử dụng -t <terminal name>thay vì -u.
Melebius

1
Liên kết cyberciti hiện nói "CẢNH BÁO! Các công cụ này đã lỗi thời, không thể truy cập được và nó ở đây vì lý do lịch sử. Hãy xem xét sử dụng các lệnh killall, pkill và pgrep như sau." pkill -KILL -u vivekhoạt động tốt như vậy.
EM0

0

Cải thiện một chút câu trả lời của Fabel ở trên:

\# *for pid in $(for ptsn in $(w | grep **user_name** | grep pts | awk '{print $2}'); do ps -dN | grep "$ptsn " | awk '{print $1}' ; done); do kill -9 $pid; done*
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.