VSCode Remote Development, Bad owner or permissions

2019年12月29日 5595点热度 0人点赞 0条评论
写了小项目用到了Celery
想在windows下使用这玩意是困难重重
总会遇到各种问题
所以尝试一下远程开发直接扔到服务器里
正好年底活动买了一个天翼云的服务器

解决办法直接拉到底
下面只是寻找问题的过程

直接安装插件: https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack

选择打开配置文件或者直接选择add new ssh host使用ssh命令链接
这里先尝试连接一下

Windows10 提示权限有问题, 简单查了一下
https://code.visualstudio.com/docs/remote/troubleshooting#_local-ssh-file-and-folder-permissions
按照给的命令执行(不用尝试了会报错的)
过程中提示安装了NuGet

报错说签名问题, 很好
直接去github下载最新的包
https://github.com/PowerShell/Win32-OpenSSH/releases
位数按你系统下载
下载完解压个地方 我这就解压桌面了 用完就删

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process

Install-Module "C:\Users\Virace\Desktop\OpenSSH-Win64\OpenSSHUtils.psm1"

Repair-UserSshConfigPermission ~/.ssh/config
Get-ChildItem ~\.ssh\* -Include "id_rsa","id_dsa" -ErrorAction SilentlyContinue | % {
    Repair-UserKeyPermission -FilePath $_.FullName @psBoundParameters
}

第二句引号里面得换成你自己刚才解压的目录

理论上来说运行到这就没问题了, 可以正常链接了
BUT,
我这还是提示权限问题

然后查看设置有个配置文件
C:\Users\Virace\.ssh\config
将刚才我们弄了半天的文件路径加进去
果然TM的链接成功了

链接成功了但是并不知道问题在哪
到底是Win10自带的SSH权限问题
还是就是VSCode插件设置问题
还是两者都

为了严谨, 装了个虚拟机测试了一下

然而安装虚拟机之后
按照之前的步骤链接
没有任何报错, 也不存在什么权限问题
只是这个.ssh 文件夹没有 需要手动新建一下

那么看来权限问题是这个.ssh 文件夹导致的
然而这个文件夹是给github添加密钥时候新建的

结论就是如果使用过git中自带的ssh功能, 在使用win10自带的就会有权限问题

总结

  • VSCode SSH-REMOTE 插件设置 配置文件给定路径(推荐)
  • 删除.ssh文件夹, 重新创建(不推荐)
  • 直接卸载Win10自带SSH, 使用git自带的SSH

文章评论