资讯详情

【BUAA OS】用VSCode写MOS

虽然说VIM它被称为编辑之神,但毕竟是古代的产物,对已经适应现代发展环境的朋友不是很友好。最近因为疫情,exam也转到了网上。看着光滑的油光。Esc键,我突发奇想:VSCode如此强大,你能使用跳板机进行远程开发吗?折腾终于在早上折腾,效果也是杠杆。所以我写了这个教程,希望能有所帮助~

期望效果:

前置条件:假设你用过VSCode,或者了解VSCode基本功能。

Part 1 安装在本机上openSSH

作为管理员运行Powershell(Win X,输入以下命令:

Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

如果返回:

Name  : OpenSSH.Client~~~~0.0.1.0 State : NotPresent

说明没有安装SSH客户端。此时需执行以下命令:

Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

成功安装后返回:

Path          : Online        : True RestartNeeded : False

Part 2 在本机VSCode上进行设置

没有使用过SSH学生可能不理解公钥和私钥的概念,也没有私钥文件。打开你的电脑C:\Users\用户名\,设置Windows如果没有看到隐藏的文件和文件夹来显示,.ssh文件夹或.ssh没有文件夹id_rsa和id_rsa.pub,就可以使用ssh-keygen命令在(若无则新建)生成密钥对,然后在lab.os.buaa.edu.cn在个人信息中找到SSH公钥设置,将id_rsa.pub复制文件中的内容SSH提交公钥栏。请勿移动私钥文件。

然后打开VSCode,安装Remote - SSH点击侧边栏插件Remote - SSH标志,进入远程资源管理器,然后单击SSH TARGET打开用户配置文件(如下图所示),标签右侧的齿轮图标。

为了填写配置文件,我按照网上常用的方法创建了两个Host然后跳跃,但总是因为各种问题而失败。最后,我在互联网的角落里找到了一个简单的方法,并使用它JumpServer远程客户机录远程客户机的特点:填写如下,其中目标机IP可以在lab.os.buaa.edu.cn在我的资产网站上找到。

Host lab.os.buaa.edu.cn     HostName lab.os.buaa.edu.cn     User 学号@git@目标机IP     Port 2222

此时,VSCode就可以在SSH TARGET远程服务器中间连接!……

Part 3 目标机的VSCode设置

但是……由于目标机无法连接外部网络,它将卡住Setting up SSH Host XXX:Copying VS Code Server to host with scp。请注意,如果没有这样的提示,这意味着其他链接有问题,你可以根据终端错误信息百度。若用,我们应该知道VSCode进行远程开发,除了本机应该装一个VSCode,应安装一台目标机VSCode-Server,通信作为服务器。但由于上述原因,在远程VSCode-Server安装时卡住了。

不要惊慌,我们先默默关闭VSCode,然后把Server在目标机上安装手动地!(下面的参考博客)应该怎么做?我们来到目标机Shell。使用用户文件夹ll列出所有文件的命令,我们可以看到另一个.vscode-server隐藏文件夹。打开~/.vscode-server/bin,我们在bin文件夹中发现了一个有着很长名字的文件夹(举个例子,我的是da15b6fd3ef856477bf6f4fb29ba1b7af717770d这就是server记住这个名字并使用二进制文件所在的地方rm删掉(保留文件夹)。

下面,在我们自己的电脑上打开以下链接,下载安装文件(.tar.gz格式):

https://update.code.visualstudio.com/commit:那个长名字/server-linux-x64/stable

现在我们需要将文件传输到目标机,但我正在使用它scp当命令出现各种奇怪的问题时,我们不得不放弃这种方法。但我们有一个很好的方法:GitLab!登录git.os.buaa.edu.cn,新分支,上传文件,commit,到Shell中pull下来就行了。大家都会Git,过程不再重复。

下面下载vscode-server-linux-x64.tar.gz解压到名字很长的文件夹中,,请注意目录结构:

-.vscode-server --bin ---da15b6fd3ef856477bf6f4fb29ba1b7af717770d ----LICENSE ----bin ----extensions ----... --data --extensions

此时可再次运行VSCode连接目标机!如果失败可能是权限问题,请使用它chmod调整一下。

Part 4 VSCode C/C 安装远程扩展

此时,VSCode代码编辑、提交等操作已经可以进行了。但是本机安装了C/C 由于远程开发需要在服务器端安装扩展,因此不能使用扩展。没有拓展的VSCode是没有灵魂的,这意味着代码自动补全,代码格式化,悬停提示等实用功能均不可用。我们还需要手动安装插件,因为目标机无法连接外部网络,但这个过程比上面容易得多。

打开VScode Marketplace的C/C 拓展链接:C/C - Visual Studio Marketplace

点击右栏中的Download Extension,下载Linux x64版本的插件。.vsix前面提到的文件GitLab大法上传到目标机,然后在自己的电脑上VSCode打开左侧的扩展按钮,点击扩展栏上的省略号,选择从VSIX可安装安装。

至此,全部过程就结束了,可以在设置里进行个性化的调整。

标签: s30nc15b电感式接近开关

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台