Khi tôi SSH vào một hệ thống khác và nhấn Ctrl- Z, tôi mong muốn máy khách SSH sẽ chạy vào nền. Tuy nhiên, đó là quá trình từ xa làm điều đó. Phép thuật xảy ra ở đâu?
Khi tôi SSH vào một hệ thống khác và nhấn Ctrl- Z, tôi mong muốn máy khách SSH sẽ chạy vào nền. Tuy nhiên, đó là quá trình từ xa làm điều đó. Phép thuật xảy ra ở đâu?
Câu trả lời:
Máy khách SSH vô hiệu hóa xử lý khóa đặc biệt ( stty -icanon -isig
tùy chọn) cho tty cục bộ, vì vậy khi bạn nhấn CtrlZ, máy khách chỉ cần đọc byte thô 0x1A
và chuyển tiếp nó đến máy chủ.
OpenSSH hỗ trợ một lệnh đặc biệt để tạm dừng ứng dụng khách - Entersau đó ~, theo sau CtrlZ.
Ctrl-Z
được sửa đổi thay vì một cái mới ~ Ctrl-Z
được thêm vào để dừng quá trình từ xa?
~?
để có được một danh sách đầy đủ các mã thoát. Bạn có thể thay đổi ký tự thoát bằng -e khi bạn bắt đầu ssh. (điều này áp dụng cho openssh, được sử dụng trên hầu hết các hệ thống Gnu.)