ssh+vscode remote显示x11

本教程环境为 windows主机上安装vscode远程连接ubuntu linux服务器做开发

在vscode里面添加ssh主机即可实现远程开发,在服务器上需要安装相应的扩展

实现方法如下:

step1:

        本地windows安装上x11显示软件,如xming,vcxsrv

        并测试在xshell里面连接linux服务器测试xclock命令能正常唤起x11界面

step2:配置ssh免密登录  

        本地windows生成公私钥:(一路回车默认即可)

        ssh-keygen

        然后找到生成的文件:

  1. id_rsa (私钥)
  2. id_rsa.pub (公钥)

        将id_rsa.pub重命名为authorized_keys上传到linux服务器~/.ssh目录下

        本地windows命令行ssh登录linux服务器不提示输入密码则成功

step3:配置扩展

        在vscode中安装如下扩展,注意是本机还是服务器,两个扩展不一样

        ssh+vscode remote显示x11_第1张图片

 选中本地扩展的扩展设置,如下图:

        ssh+vscode remote显示x11_第2张图片

 此处填写第一步生成的私钥位置

ssh+vscode remote显示x11_第3张图片

 重启vscode,大功告成,

在linux安装x11-apps包可以用一些小程序:xclock,xeyes

后面的一般不用,如果前面的不行试试后面的

如果不行,在vscode的服务器config文件下添加下面三行

Host 192.168.1.1
  HostName 192.168.1.1
  User user
  ForwardX11 yes
  ForwardX11Trusted yes
  ForwardAgent yes

Linux的环境参数设置可以放在~/.bashrc文件中,只要两行:(此项只针对局域网服务器,外网服务器找不到本机ip)

export DISPLAY=电脑ip:0.0

如果报下面的libGL错误

libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast

解决方案是在 .bashrc中再加一句话

export LIBGL_ALWAYS_INDIRECT=1
 

以上是vscode的使用,如果只用ssh命令行连接服务器的话

0.不做配置,使用xshell或者mobaxterm连接服务器,xclock即可显示(速度稍慢)

1.服务器在局域网内,直接ssh连上,终端export DISPLAY=本机ip:0(速度快)

        就可以了,前提是服务器可以ping通本机

2.服务器在外网,cmd命令行ssh无法显示x11,因为服务器ping不通本地ip,此时可以使用xshell或者mobaxterm,他们会自动做转发,和vscode x11扩展一样。

你可能感兴趣的:(linux相关,vscode,python)