之前我都是通过 ssh 连接到学校的 HPC 上,然后运行 tmux
这样断开 ssh 之后 tmux 也还是会运行,方便我下次连接 ssh 的时候继续上次的工作
今天我发现断开 ssh 之后 tmux 也断了
可能是 ssh 断开之后服务器会自动杀死在 ssh 运行期间的后台任务
经过查询 chatgpt 找到如下解决方案
创建一个新的文件:~/.config/systemd/user/tmux@.service
输入如下内容:
[Unit]
Description=Tmux session %i
After=default.target
[Service]
Type=forking
ExecStart=/usr/bin/tmux new-session -d -s %i
ExecStop=/usr/bin/tmux kill-session -t %i
Restart=always
WorkingDirectory=%h
[Install]
WantedBy=default.target
然后输入如下命令:
systemctl --user enable tmux@main
systemctl --user start tmux@main
这样每次登录之后只需要运行 tmux attach -t main
就可以连接到 tmux 了
Top comments (0)