Zabij nieodpowiadającą sesję ssh bez zamykania terminala


110

Czy istnieje sposób na rozłączenie się z sesją SSH, która przestała odpowiadać bez zabijania całego terminala? W szczególności używam konsoli, a maszyna, z którą pracuję czasami zawiesza się, ale tak naprawdę nie umiera (w ten sposób zabijając połączenie). Więc SSH po prostu się zawiesza i muszę zamknąć terminal i otworzyć nowy, aby spróbować ssh z powrotem do niego lub zrobić cokolwiek innego. Czy istnieje sposób, aby skutecznie ctrl + c wyjść z sesji ssh?


Odpowiedzi:


150

Jednym ze sposobów jest użycie znaku ucieczki ssh. Domyślnie jest to „~”, ale można to ustawić ręcznie z -eopcją podczas wywoływania ssh lub poprzez EscapeCharw konfiguracji ssh. Aby zabić zawieszoną sesję, często będzie to działać:

~.

Jak zauważył Gilles, jest to rozpoznawane natychmiast po uderzeniu Enter.


25
W rzeczywistości zadziała to niezależnie od tego, co dzieje się na zdalnym komputerze. To, czego doświadczyłeś, ~jest aktywne tylko natychmiast po naciśnięciu klawisza Enter (w przeciwnym razie byłoby to zbyt nachalne).
Gilles,

3
Idealnie, chciałbym, żeby to gdzieś udokumentowano lepiej, nigdy wcześniej nie widziałem, aby tego używać
Falmarri,

4
W (przynajmniej) portugalskich klawiaturach dotknij dwukrotnie, ~a następnie.
rsilva4
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.