我正在使用与VS Code(Insiders)配合的Remote-ssh扩展来连接AWS Linux服务器。此连接是使用本地计算机上存储的SSH密钥进行身份验证的。在我连接之后,一个名为“install”的终端被打开,下面是输出:
685ad2d6d150: running
Acquiring lock on /home/ubuntu/.vscode-server-insiders/bin/45aafeb326d0d3d56cbc9e2932f87e368dbf652d/vscode-remote-lock.ubuntu.45aafeb326d0d3d56cbc9e2932f87e368dbf652d
Found existing installation at /home/ubuntu/.vscode-server-insiders/bin/45aafeb326d0d3d56cbc9e2932f87e368dbf652d...
Checking /home/ubuntu/.vscode-server-insiders/.45aafeb326d0d3d56cbc9e2932f87e368dbf652d.log and /home/ubuntu/.vscode-server-insiders/.45aafeb326d0d3d56cbc9e2932f87e368dbf652d.pid for a running server
Looking for server with pid: 79962
Found running server...
*
* Reminder: You may only use this software with Visual Studio family products,
* as described in the license (https://go.microsoft.com/fwlink/?linkid=2077057)
*
Checking server status on port 45093 with wget
685ad2d6d150: start
SSH_AUTH_SOCK====
DISPLAY====
webUiAccessToken====
listeningOn==45093==
osReleaseId==ubuntu==
arch==x86_64==
tmpDir==/run/user/1000==
platform==linux==
unpackResult====
didLocalDownload==0==
downloadTime====
installTime====
extInstallTime====
serverStartTime====
connectionToken==86be68cd-ee77-49dc-ae26-5c1521022c2c==
685ad2d6d150: end
字符串
(this print是在初始安装和重新连接到服务器之后,但输出是相同的)
之后,“安装”终端保持打开状态。如果我关闭它,那么似乎我的连接中断并试图打开一个文件,或者另一个Bash终端重新打开安装终端。
如果我打开一个直接连接到用户目录,我会收到以下警告:
x1c 0d1x的数据
的
如果我从git仓库目录中打开一个连接,我不会收到这个警告。
我的问题是,vscode-server-insiers“安装”完成了吗?“安装”终端是否应该一直保持打开状态?如果我关闭“安装”终端,它是否应该中断连接并重新打开?出现警告是因为我不在git仓库目录中吗?我应该得到这个警告吗?或者这就是通过ssh和VS Code远程连接的所有正常过程吗?
对不起,我已经在Google上搜索过,但没有看到任何引用这是使用Remote-ssh扩展的常规行为。我觉得如果vscode-server-insiers安装完成,终端中的“install”输出应该消失。但它似乎挂起了connectionToken==86be68cd-ee77-49dc-ae26-5c1521022c2c==4134564d6c5d: end
输出。只是想弄清楚这是否真的是应该发生的事情。
**UPDATE 1:**正如@VonC所提到的,安装过程似乎确实挂起了。我已经看过了故障排除挂起或连接失败的文档,并将"remote.SSH.showLoginTerminal": true, "remote.SSH.useLocalServer": false
添加到我的设置文件中,但它似乎没有什么区别。Remote-ssh扩展的输出日志中没有显示任何内容。在开发者的控制台中有很多pty错误,但没有其他看起来可能会导致安装过程挂起。那么,有没有人知道为什么安装过程挂起了?
**UPDATE 2:**将remote.SSH.showLoginTerminal
设置为false,根本不显示安装终端。但这是隐藏了终端和问题,还是实际上解决了问题?看起来,“检查服务器状态...”步骤是什么挂在这个过程中,但我仍然可以使用bash终端和打开文件。我也可以在remote.SSH.showLoginTerminal
设置为false的情况下完成所有这些操作。我正在使用ssh密钥,而不是使用密码登录。我想现在我更好奇到底是怎么回事在这里,并确保没有问题,只是被这个设置隐藏。
4条答案
按热度按时间2hh7jdfx1#
我在VS Code设置中设置了
remote.SSH.showLoginTerminal: false
,它要么隐藏这些警告,要么删除它们。我不确定。所以,虽然我不知道为什么会出现这些警告,或者这个设置是否真的“修复”了它,但我想说这个问题已经解决了,因为没有什么东西阻止我使用VS Code的SSH Remote功能,我不再收到恼人的警告。fafcakar2#
“
Extensions want to make changes
”部分似乎并没有链接到microsoft/vscode-remote-release
,但更像是VSCode warning,如microsoft/vscode
issue 108940所示,仍然在issue 96699中打开。关闭安装终端不会终止会话,而是检查设置,如“故障排除挂起或连接失败”中所示:像“
remote.SSH.showLoginTerminal
”这样的东西可能与你看到的东西有关。OP Charles Williams确认已将“remote.SSH.showLoginTerminal”设置为false,这似乎是解决(或隐藏?)的问题。
inn6fuwd3#
我遇到了和你一样的问题。最后,我发现这个问题发生了,因为我同时使用MobaXterm和vscode来连接远程主机。当我关闭MobaXterm ssh连接时,vscode中的问题就解决了。
9q78igpj4#
允许编辑器在您访问的每一个远程服务器上随机安装未记录的代码是非常奇怪的。
我花了相当多的时间浏览了当前(2022年8月)VS Code第三方扩展,以找到一个侵入性较小的替代方案,最简单的似乎是“ftp-simple”,它使用使用(s)ftp作为远程服务器的file-io方法的常见技术,允许您浏览文件系统,打开文件,编辑,保存几乎就像您在本地文件系统上做的那样。
一些其他VS Code第三方ftp扩展使用重量级的“同步工作空间”模型,其中客户端复制“远程文件夹”下的整个目录树,假设它是一个“项目”,然后保持本地副本与服务器同步。这对于从事小型项目的开发人员来说是可以的(尽管坦率地说,Git会更好),但不适合我可能需要做的sysadmin临时文件编辑。另一个小问题是一些扩展允许你编辑远程文件,但不集成浏览远程文件系统,所以你必须为你想要编辑的文件指定完整的文件名。
SFTP非常适合远程文件编辑,因为编辑器文件i/o基本上是“浏览文件系统”,“读取整个文件”,“保存整个文件”,这Map到sftp精细,并且编辑和文件读/写之间的清晰划分使得远程访问不容易受到连接问题的影响。