【服务器】使用过程中遇到的问题和疑问
vscode使用ssh远程连接服务器失败
报错信息如下:

但连接另一个区的服务器正常。服务器工程师告知:由于高版本vscode不支持连接服务器,建议更换使用1.85.0版本的vscode,下载地址https://code.visualstudio.com/updates/v1_85
vscode 1.86版本远程ssh不兼容旧服务器问题解决 - 知乎 这篇文章提供了便携版的安装办法,以下是整理后的内容:
文章提到:vscode的1.86版本,更新了对glibc的要求,需要最低2.28版本,导致各种旧版本的linux发行版(比如最常见的centos 7)都无法用remote-ssh来连接,会一直控制台报错waiting for server log。
官方FAQ:Remote Development FAQCan I run VS Code Server on older Linux distributions?—Remote Development FAQ
1.85.2绿色便携版安装流程:
- 点击下载链接 下载1.85.2版本的zip包,下载后解压到本地自己选择的目录下
- 进入解压后的
VSCode-win32-x64-1.85.2目录,新建data文件夹- 拷贝
%APPDATA%\Code目录到data文件夹下,然后重命名为user-data- 拷贝
%USERPROFILE%\.vscode\extensions目录到data文件夹下- 在
data文件夹下新建目录tmp- 然后给
Code.exe创建一个快捷方式,就可以正常使用1.85.2版本插件Remote - SSH推荐单独下载安装
0.107.1版本,下载地址。下载完毕后,在 VS Code 中按Ctrl+Shift+P,输入并选择Extensions: Install from VSIX,然后选择下载的.vsix 文件进行安装。
服务器运行脚本中为何使用source activate xxx激活环境?
服务器提交作业命令:sbatch --gpus=2 ./run.sh
运行脚本run.sh中使用source activate xxx激活虚拟环境,而非conda activate xxx
而source activate xxx是Conda 4.3 及之前版本的方法。activate是一个可执行脚本,通过 source命令在当前 shell 中执行,从而修改环境变量。
根据source activate 和 conda activate 的区别和使用 - Cold_Chair - 博客园 这篇文章,是因为:sbatch命令可能因为系统的一些旧代码的遗留问题,环境中的 conda 版本很低,所以source activate xxx来激活虚拟环境。
此外,为何服务器手册中使用source activate xxx?首先,服务器使用的Miniforge,然后是下面是AI的回答:
Miniforge 作为 Miniconda 的一个替代发行版,其设计目标之一是提供一个稳定、兼容且不依赖于 Anaconda 商业仓库的开源环境。为了确保在各种 shell 配置和脚本(尤其是在服务器、集群和高性能计算环境中常见的
.sh脚本)中的最大兼容性,Miniforge 有时会默认配置为使用传统的source activate方式。这样可以避免因用户未正确运行conda init初始化 shell 而导致的conda activate命令失败。

浙公网安备 33010602011771号