I have installed tmux from source on my localspace in Fedora. It was working nicely so far. But suddenly can not run it anymore, when run tmux, it just halts. Tried different co
I had faced this problem for a long time and after a bit of searching I figured out that this was being caused because I accidently hit Ctrl+S (Ctrl+A+S is my shortcut for switching panes), and this turns off flow control in terminals and stops the terminal from accepting input. It can be reenabled by pressing Ctrl+Q.
Source: https://superuser.com/a/553349/137226
You should be able to narrow down your problem a bit with a few of these tests:
Give it a shot from outside X11: Ctrl+Alt+F2 (or use ssh
from another computer)
Test if other terminal emulators work: script
and screen
Try another complicated terminal application: htop
and mc
Reset your TTY settings: stty sane
Check that your terminal identified: echo $TERM
(it should be something like "xterm" or "linux")
Make that your terminal capabilities file exists: ls -lh /usr/share/terminfo/*/$TERM
A less drastic action (to try before killing the tmux process) is to ssh into the machine and run the following command.
kill -CONT `pidof tmux`
Source: https://github.com/tmux/tmux/issues/507#issuecomment-271502093
If it is ok to lose your sessions, try deleting the tmux-NNNNNNN
directory, where NNNNNNN
is a number, under your /tmp
directory. According to the tmux
manual, if the TMPDIR
environment variable is set, the tmux-NNNNNNN
will be put in the TMPDIR
.
tmux stores the server socket in a directory under /tmp (or TMPDIR if set);
This solved my problem of not being able to run tmux
commands that are related to sessions. I also tried the following, but they did not work:
killall -9 tmux
tmux
I could not easily restart the operating system, because it's a shared server managed by others.
I had the same issue. The cause is that the tmux
buffer is full, and it also may happens cause of multi clients to the tmux
session.
To solve it you need to detach all the clients from the session, and reattach it.
The best way I found to solve it is to add to the ~/.bashrc
file this functions:
check_params() {
if [[ $1 < $2 ]]; then
echo -e "Usage:\n${3}"
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 $1 | awk '{split($1, s, ":"); print s[1]}' | xargs tmux detach-client -t | true
tmux attach -t $1
fi
}
then run source ~/.bashrc
to make these changes in the terminal.
Now to attach the session type:
reattach_client <session_name>
solved my issue.
Thanks to Alex Zelichenko for help me with this!
Thanks. I found the problem. The tmux process were in D state, and I had no choice but to reboot the system. The problem came from kerberos ticket expiring after a while. And find a scripts that solves this problem: https://iain.cx/src/ktmux/