最近使用windows干活,但是写代码什么的不方便,并且笔记本性能有限, 所有想在实验室的台式机上运行代码,但是需要
rviz
和pybullet
等图形界面。故折腾了使用ssh 显示运行的程序,记录以备日后使用。
能用是能用,但是比较卡, 我是使用电脑热点连接实验室台式机的,换个好点的网络环境应该会好点。
1. ssh 免密码登录。
将本地的ssh公钥导入到服务器中即可。
sudo echo "复制的 .pub 公钥内容" >> ~/.ssh/authorized_keys # 如果没有该文件,会自动创建
SSH config 需要添加下面的参数
ForwardX11 yes
ForwardX11Trusted yes
ForwardAgent yes
ServerAliveInterval 60
ServerAliveCountMax 60
2. 本地安装 Xlaunch
, 具体细节参考 这个
这个软件会常驻后台
下载地址:https://sourceforge.net/projects/vcxsrv/
3. 服务端设置 DISPLAY
变量
在bashrc
中添加(非root用户也行):
export DISPLAY="192.168.137.1.0.0"
IP 地址是当前本地的IP
对于局域网内ping不同的情况, 一定要注意防火墙是不是关了
Update: SSH 免密码登录
ref: https://blog.csdn.net/qq_40750972/article/details/123450772
-
在vscode ssh 中配置中, 添加私有密钥的地址
Host [hostname] HostName [host IP] User [usr_name] IdentityFile "~/.ssh/id_rsa" # ssh id_rsa path
-
将本地的
ssh
公钥传到服务器。在服务器终端,执行以下命令
sudo echo "复制的 .pub 公钥内容" >> ~/.ssh/authorized_keys # 如果没有该文件,会自动创建