如何让LocalXpose创建的TCP隧道在Ubuntu中永久运行?
如何让LocalXpose创建的TCP隧道在Ubuntu中永久运行?
嘿,这个问题我太熟了!很多人用LocalXpose的时候都会碰到断开远程会话隧道就跟着挂掉的情况,在Ubuntu里有几个实用的办法能解决,我给你详细说说:
用nohup直接后台运行
这是最简单的临时解决方案,nohup命令能让进程在你退出会话后继续运行,还会把输出日志默认存到当前目录的nohup.out文件里。
直接运行:nohup loclx tunnel tcp &要是之后想停止这个隧道进程,先通过
ps aux | grep loclx找到进程ID(PID),再用kill <你的PID>命令终止它。用screen/tmux持久化会话(推荐)
这个方法比nohup更灵活,你之后还能重新连接到会话里查看隧道状态或者操作它。
以screen为例:- 先安装screen(如果没装的话):
sudo apt install screen - 创建一个专门的screen会话来运行隧道:
screen -S loclx-tunnel - 在这个会话里正常运行
loclx tunnel tcp,之后按Ctrl+A+D组合键就能“脱离”这个会话,此时就算你关闭远程连接,隧道也会在后台继续跑。 - 之后想重新回到这个会话管理隧道,只需要运行:
screen -r loclx-tunnel
要是喜欢用tmux也可以,操作逻辑差不多,安装命令是
sudo apt install tmux,创建会话用tmux new -s loclx-tunnel,脱离会话按Ctrl+B+D,重新连接用tmux attach -t loclx-tunnel。- 先安装screen(如果没装的话):
创建systemd服务(最稳定,支持开机自启)
如果想要隧道长期稳定运行,甚至服务器重启后自动启动,那用systemd服务是最佳选择:- 创建一个systemd服务文件:
sudo nano /etc/systemd/system/loclx-tunnel.service - 在文件里写入以下内容(记得把
User=你的用户名替换成你实际的服务器用户名):[Unit] Description=LocalXpose TCP Tunnel After=network.target [Service] User=你的用户名 ExecStart=/usr/bin/loclx tunnel tcp Restart=always RestartSec=5 [Install] WantedBy=multi-user.target - 保存并退出nano编辑器(按
Ctrl+O,回车确认保存,再按Ctrl+X退出)。 - 重新加载systemd配置:
sudo systemctl daemon-reload - 启动隧道服务:
sudo systemctl start loclx-tunnel.service - 设置开机自启(可选,但推荐):
sudo systemctl enable loclx-tunnel.service
你可以用
systemctl status loclx-tunnel.service查看服务运行状态,停止服务用sudo systemctl stop loclx-tunnel.service。- 创建一个systemd服务文件:
备注:内容来源于stack exchange,提问作者Ddunlavy09
相关产品推荐
相关产品推荐

