Cách thoát phiên SSH không phản hồi trên Linux | Học CNTT cùng FUNiX

Cách thoát phiên SSH không phản hồi trên Linux

Tin tức 09/10/2023

Dưới đây là những việc cần làm khi kết nối SSH trên Linux của bạn không phản hồi và tổ hợp phím không hoạt động.

Bạn có thể đang gõ một phiên SSH từ xa và đột nhiên hệ thống dường như không phản hồi với thao tác gõ phím của bạn. Bạn làm nghề gì?
VIDEO MUO TRONG NGÀY

 
 
 
 
Đóng
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
 

Đây là lý do tại sao điều đó xảy ra, cách thoát khỏi phiên SSH không phản hồi và lý do tại sao bạn có thể muốn chuyển sang Mosh.

Điều gì khiến phiên SSH bị đóng băng?

Lý do chính khiến phiên SSH bị treo là do kết nối mạng bị rớt. Tín hiệu Wi-Fi có thể giảm hoặc bạn có thể để máy tính chuyển sang chế độ ngủ. Điều này phổ biến nhất với máy tính xách tay. Bạn có thể đóng nắp laptop trong khi quên mất mình vẫn đăng nhập qua SSH.

SSH ban đầu được thiết kế trong thời đại trước khi mọi người thường xuyên sử dụng máy tính xách tay. SSH hoạt động tốt hơn trên mạng có dây.

1. Chấm dứt bằng chuỗi escape

 

Nếu phiên SSH của bạn bị treo, hãy thử sử dụng trình tự escape. Chuỗi escape cho phép bạn gửi tín hiệu đến máy khách SSH thay vì máy từ xa. Chuỗi escape được mở đầu bằng ký tự escape. Theo mặc định trên máy khách OpenSSH, đó là ký tự dấu ngã (~).

Để thoát khỏi máy khách SSH, bạn có thể nhấn phím dấu ngã và sau đó là phím dấu chấm (.) .

Bạn cũng có thể thay đổi ký tự thoát nếu muốn. Bạn có thể chỉ định ký tự thoát mới bằng tùy chọn -e tại dòng lệnh. Bạn cũng có thể thay đổi nó vĩnh viễn bằng cách đặt tùy chọn EscapeChar trong tệp .ssh/config trong thư mục chính trên máy cục bộ.

2. Sử dụng lệnh kill

 

Nếu sử dụng chuỗi thoát không hiệu quả, bạn có thể thử tắt ứng dụng khách SSH. Để tìm ID tiến trình (PID) của phiên của bạn, hãy chuyển lệnh ps qua grep:

ps aux | grep ssh

Đối số “aux” của ps có nghĩa là “liệt kê mọi tiến trình trên hệ thống, bất kể nó thuộc về ai hoặc nó có terminal điều khiển hay không.”

Nếu bạn có nhiều phiên, bạn có thể chọn phiên bị đóng băng vì danh sách sẽ hiển thị tên người dùng và địa chỉ trên máy từ xa mà các phiên SSH được đăng nhập vào. Khi bạn đã tìm thấy PID của phiên của mình, bạn có thể chấm dứt nó bằng lệnh kill:

kill [PID]

Để có kết nối SSH tốt hơn, hãy sử dụng Mosh!

Cách tốt hơn để tránh các phiên SSH bị đóng băng gây phiền nhiễu là sử dụng Mosh. Nếu kết nối bị rớt, Mosh sẽ cho phép bạn duy trì kết nối. Nó sẽ gửi bất kỳ tin nhắn nào khi bạn kết nối lại. Nó cũng hoạt động khi bạn đặt máy ở chế độ ngủ.

Bạn cũng có thể sử dụng bộ ghép kênh đầu cuối như GNU Screen hoặc tmux để tiếp tục phiên SSH của mình sau bất kỳ lần ngắt kết nối nào, nhưng Mosh và tmux thậm chí còn mạnh hơn khi được sử dụng cùng nhau .

Để cài đặt Mosh trên Debian và Ubuntu:

sudo apt install mosh

Và trên Arch Linux:

sudo pacman -S mosh

Trên dòng distro của Red Hat:

sudo dnf install mosh

Bây giờ bạn có thể thoát khỏi các phiên SSH bị đơ

Các phiên SSH không phản hồi có thể gây khó chịu nhưng bạn có thể loại bỏ chúng bằng chuỗi escape hoặc lệnh kill. Mosh thậm chí còn là một giải pháp thay thế tốt hơn giúp duy trì kết nối của bạn dù bị ngắt kết nối và hệ thống ngủ.

Tìm hiểu ngay chương trình học công nghệ thông tin trực tuyến tại FUNiX ở đây:

Vân Nguyễn

Dịch từ: https://www.makeuseof.com/exit-unresponsive-ssh-session-on-linux/

ĐĂNG KÝ TƯ VẤN HỌC LẬP TRÌNH TẠI FUNiX

Bình luận (
0
)

Bài liên quan

  • Tầng 0, tòa nhà FPT, 17 Duy Tân, Q. Cầu Giấy, Hà Nội
  • info@funix.edu.vn
  • 0782313602 (Zalo, Viber)        
Chat Button
FUNiX V2 GenAI Chatbot ×

yêu cầu gọi lại