tmux: зависает и не загружается и не реагирует на любые команды
Я установил tmux от источника на мой localspace в Fedora. Пока все шло хорошо. Но внезапно не может запустить его больше, когда запустить tmux, он просто останавливается. Пробовал разные параметры команды, такие как LS-сеансы, никто не работает. Убил все процессы моего пользователя, удалил все файлы tmux и libevnet
, и переустановил их снова с нуля. Все то же самое, и команда tmux в терминале просто зависает без какой-либо фактической ошибки.
6 ответов
Я столкнулся с этой проблемой в течение длительного времени, и после небольшого поиска я понял, что это было вызвано, потому что я случайно ударил Ctrl+S ( Ctrl+на+S - мой ярлык для переключения панелей), и это отключает управление потоком в терминалах и останавливает терминал от приема ввода. Его можно повторно подключить, нажав Ctrl+Q.
источник: https://superuser.com/a/553349/137226
была аналогичная проблема, где у меня был сеанс tmux с двумя буферами. Я не видел ничего, что печатал, но когда я переключался между буферами, на экране появлялось то, что я печатал раньше. stty sane
не работает.
я отстраненно Ctrl-b+d, и заметил, что все еще был клиент, когда я посмотрел на tmux list-clients
. tmux detach-client
удалил его, а затем я мог снова прикрепить, и все снова сработало.
tmux
остановился сразу после того, как я начал. Ctrl-Q и Ctrl-C ничего не делал.
исправлено с помощью
killall -9 tmux
(может быть другая проблема, но этот вопрос появился в Google.)
вы должны быть в состоянии сузить проблему немного с некоторыми из этих тестов:
дайте ему выстрел извне X11:Ctrl+Alt+F2 (или использовать
ssh
с другого компьютера)
спасибо. Я нашел проблему. Процесс tmux был в состоянии D, и у меня не было выбора, кроме как перезагрузить систему. Проблема возникла из-за истечения срока действия билета kerberos через некоторое время. И найти сценарии, которые решат эту проблему: https://iain.cx/src/ktmux/
у меня была та же проблема. Причина в том, что tmux
буфер заполнен, и это также может произойти из-за нескольких клиентов к tmux
сессии.
чтобы решить его, вам нужно отсоединить всех клиентов от сеанса и снова подключить его.
лучший способ я нашел, чтобы решить это, чтобы добавить к ~/.bashrc
файл этой функции:
check_params() {
if [[ < ]]; then
echo -e "Usage:\n"
ok=0
else
ok=1
fi
}
# detach all the clients from this session, and attach to it.
reattach_client() {
check_params $# 1 "reattach_client <tmux_session_name>"
if [[ $ok == 1 ]]; then
tmux list-client | grep | awk '{split(, s, ":"); print s[1]}' | xargs tmux detach-client -t | true
tmux attach -t
fi
}
затем запустите source ~/.bashrc
чтобы внести эти изменения в терминал.
теперь, чтобы прикрепить сеанс тип:
reattach_client <session_name>
решить мою проблему.
спасибо Алексу Зеличенко за помощь!