Làm cách nào tôi có thể đăng xuất một phiên SSH mở, từ xa?


48

Tôi đã sshed vào một máy Linux (bash shell) từ một máy Windows công cộng (trong phòng thí nghiệm của chúng tôi) và quên đăng xuất. Bây giờ tôi trở lại chỗ ngồi của mình trong một phòng khác và tôi quá lười để quay lại và đăng xuất phiên đó; Tôi có thể ssh vào máy Linux từ PC hiện tại của tôi. Tôi có thể buộc đăng xuất phiên khác từ phiên SSH mới không?

Khi tôi ssh đến hộp Linux từ PC hiện tại và gõ userslệnh, tôi có thể thấy rằng tôi vẫn đăng nhập vào đó; Tên của tôi được liệt kê hai lần - một cho phiên hiện tại và một cho phiên từ PC phòng thí nghiệm.

Tôi không có quyền root trên máy đã nói, nhưng tôi đoán điều đó không quan trọng vì tôi chỉ đang cố gắng tự thoát ra.

Câu trả lời:


73

Chạy ttytrên phiên hiện tại của bạn, để tìm hiểu xem bạn đang làm việc ở đâu, vì vậy bạn không đăng xuất khỏi phiên hiện tại. Chạy w để hiển thị cho bạn người dùng hiện tại và thiết bị đầu cuối giả liên quan (tty). Giả sử rằng bạn đã đăng nhập hai lần và không có người dùng nào khác trên máy chủ ssh của bạn, phiên ssh trước đó của bạn sẽ được bật pts/0và hiện tại pts/1. Để bỏ phiên trên pts/0chỉ đơn giản là giết các tiến trình được liên kết với nó với

pkill -9 -t pts/0 

Vì một số lý do, tôi pkill -9 pts/tty-numberđã không làm việc cho tôi; sau đó tôi tìm thấy pid của quá trình sử dụng ps aux | grep amarvà thử pkill -9 -P pidvà nó đã hoạt động. Cảm ơn!
Amarghosh

7
pkill -9 -t pts/tty-number. -tlà công tắc để chỉ địnhtty
thường

Ooops, bằng cách nào đó tôi đã bỏ lỡ điều đó -ttrong câu trả lời của bạn khi tôi đọc nó đầu tiên.
Amarghosh

+1, sửa chữa tuyệt vời. Tôi chỉ đặt lại bộ định tuyến của mình trong khi tôi đang SSH vào một máy trên cùng một mạng và sau đó nhận ra rằng nó đã rời phiên đó đăng nhập ... Điều này hoạt động hoàn hảo.
Đột phá

6
Tìm thấy câu hỏi này ngày hôm nay (và nó hoạt động rất tốt, vì vậy cảm ơn!) Nhưng thấy -9âm thanh hơi khó nghe. Một đơn giản -HUPcho tôi.
Matijs

4

Giả sử bạn không có bất kỳ quy trình nào khác mà bạn không muốn trở thành 86, bạn chỉ có thể thực hiện:

$ ssh <systemname> pkill -u <yourlogin>

Và phiên khác sẽ biến mất.


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.