У меня есть около десяти серверов, к которым я регулярно подключаюсь по SSH. У каждого есть запись в ~/.ssh/configфайле на моем локальном компьютере .
Чтобы не потерять контроль над моим запущенным процессом, когда мое интернет-соединение неизбежно разрывается, я всегда работаю внутри tmuxсеанса. Я хотел бы, чтобы tmux автоматически подключался каждый раз при запуске SSH-соединения, поэтому мне не нужно всегда вводить tmux attach || tmux newтекст после входа в SSH.
К сожалению, это оказалось не так просто, как я изначально надеялся.
- Я не хочу добавлять какие-либо команды
~/.bashrcна серверы, потому что мне это нужно только для сеансов SSH, а не для локальных сеансов. - Добавление
tmux attach || tmux newк~/.ssh/rcна серверах приводит просто ошибкаnot a terminalброска после подключения, даже еслиRequestTTY forceопция добавляется к строке для этого сервера в моем локальном файле SSH конфигурации.
~/.ssh/config: большинство из вас, вероятно, ищут не один из первых пяти ответов, а шестой ( stackoverflow.com/a/52838493/5354137 ). С любой достаточно свежейtmuxверсией это также самый разумный способ делать что-то.