Я підключився до свого сервера через SSH і створив процес, але раптом мій інтернет-зв’язок відключився. Я знаю, що процес триває, але як відновити попередній сеанс, щоб побачити хід його?
Я підключився до свого сервера через SSH і створив процес, але раптом мій інтернет-зв’язок відключився. Я знаю, що процес триває, але як відновити попередній сеанс, щоб побачити хід його?
Відповіді:
Як було запропоновано вище, надалі ви можете використовувати екран для запобігання подібного. Коротке пояснення щодо використання екрана:
screen -S compiling_stuff
./configure
screen -r comp
CTRL+A+D
Удачі
screen
найкраще запустити команду в терміналі, яка зберігатиметься при відключенні від неї (або за призначенням, ctrl + ad, або через те, що з'єднання відмирає тощо).
ЯКЩО МОЖЕТЕ повторно приєднати запущений процес (наприклад: оболонку вашого запущеного сеансу, якщо він все ще запущений) до вашого поточного терміналу (тобто повторно приєднати stdin, stdout, клавіатуру, а також зробити новий термінал контрольним терміналом для цього процес), використовуючи: рептир
Для найкращого з обох світів: встановіть screen
, запустіть його, а потім знову приєднайте цей процес у сеансах екрану з reptyr
^^
Просто думав, що я згадаю http://mosh.mit.edu/
Застосування віддаленого терміналу, яке дозволяє роумінгу, підтримує переривчасте підключення та забезпечує інтелектуальне локальне відлуння та редагування рядків натискань клавіш користувача.
Mosh є заміною SSH. Це більш надійний та чуйний, особливо через Wi-Fi, стільникові та міжміські зв’язки.
Використовуйте screen
через ssh, щоб пізніше підключитися до свого сеансу.
Наскільки я знаю, немає можливості підключитися до закритого ssh-сеансу.
Я можу порекомендувати Byobu :
Byobu - це вдосконалення для термінальних мультиплексорів GNU Screen або tmux, які можна використовувати для надання на екрані сповіщень або стану, а також для керування кількома вікнами на вкладках. Він спрямований на забезпечення кращого досвіду роботи користувачів термінальних сеансів під час підключення до віддалених серверів.
Я рекомендую використовувати tmux :
Ви можете відновити сеанс tmux через tmux attach
.
tmux - це програмне забезпечення, яке можна використовувати для мультиплексування декількох віртуальних консолей, що дозволяє користувачеві отримувати доступ до декількох окремих сеансів терміналу всередині одного вікна терміналу або сеансу віддаленого терміналу. Це корисно для роботи з декількома програмами з інтерфейсу командного рядка та для відділення програм від оболонки Unix, яка запустила програму. [1] Він надає багато тих же функцій, що і GNU Screen, але поширюється за ліцензією BSD.