第一步:安装远程连接插件
点击左侧的扩展按钮,搜索插件“ Remote Development ”进行安装
第二步:配置连接服务器账号
1)安装完后会在左侧生成了远程连接的图标,点击此图标,然后选择设置图标
2)点击弹出的 config文件,如下图
3)在文件中填写服务器的配置
Host为在VS Code内显示的名称,可以随意填写,Hostname是远程服务器的公网IP地址,User 是用于登录的用户名称。如下图:
选择.ssh/config
第三步:修改VS Code 设置
依次选择 “文件”->“首选项”->“设置”,搜索 Show Login Terminal,勾选 ‘Always reveal the SSH login terminal’
第四步:进行远程连接并操作
1)再点击远程连接的图标,选择 Connect to Host in New Window,如下图
2)点击后会打开一个新的VSCode,在下方的终端中,输入登录密码
3)输入后会显示已连接到远程,这时选择打开文件夹,
4)选择要打开的文件夹,点击确定
或者控制台执行 打开对应的文件夹
记录VSCode远程连接服务器开发的问题解决
遇到的问题
1.使用VSCode连接远程服务器时每次打开窗口都需要输入密码,很麻烦
2.在root用户不能使用code命令
3.保存文件时提示没有权限,对文件只有只读权限
问题解决
1.第一个问题:
需要使用SSH的免密登录功能,要注意VSCode的ssh配置文件,配置的是什么用户,就是用什么用户登录的,相应的要把本地sshkey的公钥信息拷贝至所在用户家目录的.ssh/authorized_keys文件中。
- 比如:我的本地VSCode的ssh配置文件信息为如下,则需要在97这个服务的root用户/root目录下的.ssh/authorized_keys文件中追加我本地的sshkey公钥信息
Host 10.2.2.99
HostName 10.2.2.99
User root
- 如果本地VSCode的ssh配置文件信息为如下,则需要在97这个服务的apig用户的家目录下/home/apig目录下的.ssh/authorized_keys文件中追加我本地的sshkey公钥信息。这样就能实现在新打开窗口时免密登录。
Host 10.2.2.97
HostName 10.2.2.97
User apig
2.第二个问题:
关于使用code命令的原理,是VSCode会在服务器端生成一个.vscode-server目录,这个目录下会存放VSCode为服务端安装的相关扩展,比如code命令。所以code命令能不能使用,还是要看VSCode的本地ssh配置,其中root用户的权限是最大的。普通用户通过sudo进入root用户时,code命令是不能使用的,需要直接使用root用户进行登录。
3.第三个问题:
-关于不能保存文件的问题,需要进入root用户,或对要编辑的目录授予最大的权限。
- 比如,当前是songroom用户,需要改变wasm_test的权限,可以sudo chown -R songroom wasm_test
- 使用root用户登录