vs code remote ssh 踩坑记录

在上一篇博客中我放弃了使用WSL WSL2作为开发环境,选择使用Vmvare ubuntu 虚拟机作为开发环境。在win10中透过vscode remote ssh连接到vmvare虚拟机中开发。下面记录一下搭建vs code remote ssh环境遇到的问题。

1. 错误提示”Bad owner or permissions on C:”。这是.ssh 目录下的config文件以及id_rsa私钥文件的权限问题和用户组问题。在Linux中,我们可以和简单的通过chmod 命令和chown命令更改文件权限,但是在windows中就比较麻烦,可以通过下面的方法更改:

找到.ssh文件夹。它通常位于C:\Users,例如C:\Users\Akkuman。
右键单击.ssh文件夹,然后单击“属性”。
找到并点击“安全”标签。
然后单击“高级”。 单击“禁用继承”,单击“确定”。 将出现警告弹出窗口。单击“从此对象中删除所有继承的权限”。
你会注意到所有用户都将被删除。让我们添加所有者。在同一窗口中,单击“编辑”按钮。
接下来,单击“添加”以显示“选择用户或组”窗口。
单击“高级”,然后单击“立即查找”按钮。应显示用户结果列表。 选择您的用户帐户。
然后单击“确定”(大约三次)以关闭所有窗口。
完成所有操作后,再次关闭并打开VSCode 并尝试连接到远程SSH主机。
现在这个问题应该解决了。

2.”过程试图写入的管道不存在”。我的win10上安装了git bash,所以可能需要更改系统的环境变量:

这是原本环境变量中路径,将其删除
%SYSTEMROOT%\System32\OpenSSH\
这是我电脑上git中ssh的路径,添加到环境变量(Path)中
C:\Program Files\Git\usr\bin

3.”过程试图写入的管道不存在”。 删除.ssh 目录下的known_hosts文件

4.在vscode中设置config文件
Host yourhostname
HostName ip
User yourname
IdentityFile ~/.ssh/id_rsa
PubKeyAuthentication yes

如果以前复制的config文件无法使用,直接点击 add new 按钮,然后输入 ssh root@ip

5. ssh命令在终端无法登录,提示id_rsa文件不存在。可以添加上绝对路径测试一下。
ssh [email protected] -p 22 -i .ssh/id_rsa
ssh [email protected] -p 22 -i C:\Users\Yourname\.ssh\id_rsa
ssh [email protected] -p 22 -i id_rsa
ssh [email protected] -p 22 -i .ssh\id_rsa
ssh [email protected] -p 22 -i .ssh/id_rsa

大概就是以上这些。虽然还没有深入使用,但是感觉vs code remote ssh还是很不错的,我的直觉应该没错。

参考资料:
https://stackoverflow.com/questions/47331292/git-ssh-fails-to-access-host-but-succeed-when-direct-ip-is-used-windows-10
https://blog.csdn.net/weixin_43569916/article/details/105168505
https://blog.csdn.net/weixin_42096901/article/details/105193366
https://www.v2ex.com/t/717175

发表评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据