需求场景:
1. 连接到服务器上,使用tmux保持会话
2. 需要使用服务器的docker,并希望在container中也使用tmux
方案:
1. 服务器上启动两个tmux session: A和B
2. session A正常启动,使用默认的配置文件~/.tmux.config
3. 在一个新的ssh连接中建立session B,使用专用的配置文件tmux -L docker -f ~/.tmux.config2
,注意参数-L
,需要使用不同的tmux server,否则新配置文件不会生效
4. 为了避免与docker中的tmux冲突,可以修改~/.tmux.config2
中的key-binding,使用不同的prefix(这里是Meta-x),并关掉status bar
set -g prefix M-x
unbind C-b
bind-key M-x send-prefix
set -g status off
最后,可以在session B中启动docker container,在container中安装tmux,并使用原来习惯的配置文件
在以后需要重新连接时,tmux a
会重连到session A,使用tmux -L docker a
可以重连到session B