1

После того, как я создал сеанс tmux и отсоединился в сеансе ssh, запуск tmux attach на локальном терминале не возвращает мне сеанс, который я создал (tmux ls также ничего не перечисляет). ps показывает, что tmux все еще работает. Как я могу получить к нему доступ локально?

ps auwx | grep tmux показывает

me      8404  0.0  0.0  28268  3900 ?        Ss   Jul13   0:15 tmux

1 ответ1

4

Вероятный сценарий здесь состоит в том, что tmux через ssh использовал другой TMPDIR в ssh по сравнению с локальным. Вы можете сделать это, чтобы увидеть, что он установлен:

echo $TMPDIR

Обычно с ssh ничего не устанавливается и поэтому использует /tmp. Ты можешь попробовать

TMPDIR=/tmp/ tmux attach

Это скажет tmux искать в /tmp свои сокеты.

Если это не работает, они могут быть в другом месте, или были очищены. В этом случае вы можете сказать tmux воссоздать их:

killall -10 tmux

Сигнал -10 указывает tmux воссоздать сокеты, это не сигнал завершения. Возможно, вам потребуется выполнить ssh-сессию, чтобы выяснить, где они создаются, изучив TMPDIR но, скорее всего, это /tmp/ .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .