使用tmux分离终端和会话
1. 前言
在使用ssh远程连接服务器时,当我们关闭终端或者断开连接,在终端运行的代码也随之停止。特别是使用服务器训练模型时,我们不可能一直保持终端连接,这时我们可以使用tmux(terminal multiplexer)(终端复用器)来使终端和会话分离(detach),这样关闭终端时运行的程序不会停止。这里只对会话分离功能进行记录,因为窗格操作目前基本不会使用。
2. 基础命令
2.1 安装
1 | # Ubuntu 或 Debian |
2.2 启动和退出
启动tmux窗口
1
tmux
也可以在启动时指定session的名字,这样在解绑后可以快速重新进入该session:
1
tmux new -s your-session-name
退出tmux窗口
1
exit
2.3 分离会话
1 | tmux detach |
执行该命令后,就会退出当前 tmux 窗口,但是会话和里面的进程仍然在后台运行。
2.4 查找和接入会话
查看当前所有的 tmux 会话
1
tmux ls
重新接入某个已存在的会话
1
2
3
4
5# 使用会话编号
tmux attach -t 0
# 使用会话名称
tmux attach -t <session-name>
2.5 杀死会话
1 | # 使用会话编号 |
使用该命令后,会话和里面的进程会被杀死
2.6 切换会话
1 | # 使用会话编号 |
这个命令可以从某个会话直接切换到另一个会话
2.7 重命名会话
1 | tmux rename-session -t 0 <new-name> |
3. 参考资料
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 liangbm3's blog!
评论