如何使用visual studio code的插件remote ssh远程操作virtual box虚拟机
0 Remote-SSH是什么?为什么要用它?
The Remote-SSH extension lets you use any remote machine with a SSH server as your development environment. This can greatly simplify development and troubleshooting in a wide variety of stations. You can:
Develop on the same operating system you deploy to or use larger, faster or more specialized hardware than your local machine.
Quickly swap between different, remote development environments and safely make updates without worrying about impacting your local machine.
Access an existing development environment from multiple machines or locations.
Debug an application running somewhere else such as a customer site or in the cloud.
No source code needs to be on your local machine to gain these benefits since the extension runs commands and other extensions directly on the remote machine. You can open any folder on the remote machine and work with it just as you would if the folder were on your own machine.
(摘自Remote-SSH官方介绍)
(注:本博客是我上编译原理实验课时的虚拟机配置方法)
由于我们的虚拟机镜像没有图形化界面,写代码不方便,宿主机又没有实验环境,可以用vscode的这个插件,直接在虚拟机中写代码并编译。(我不会vim......)
1 安装虚拟机镜像
下载虚拟机安装文件和VirtualBox软件,并在VirtualBox里成功安装虚拟机。
2 配置虚拟机网络设置
打开VirtualBox,选中刚才安装的Ubuntu虚拟机,单击设置。
在设置界面左侧选网络,确认网卡1已启用,且连接方式为网络地址转换(NAT),然后单击高级。

选择端口转发。

在端口转发设置窗口中,先单击右侧绿色加号添加转发规则,然后名称随便起,主机端口可以用一个2222(应该随便写个数都可以,只要不造成主机端口冲突就行),子系统端口填22,IP地址可以不写(一定要写的话,主机IP可填127.0.0.1,子系统IP可以在虚拟机运行ifconfig查看虚拟机IP并填写),单击OK完成设置。

3 虚拟机安装ssh
在VirtualBox中登录虚拟机,先输入以下命令安装ssh:
sudo apt install openssh-server
如果这一步报错 “Unable to locate package open-ssh service"则输入以下命令更新软件列表和软件:
sudo apt update
sudo apt upgrade
然后再输入上面第一个命令安装,安装完成后输入以下命令启动服务:
sudo /etc/init.d/ssh start
输入以下命令检查是否成功安装并启动:
netstat -tlp
如果显示三行类似下图的输出则说明成功(我也不懂这输出啥意思,但有ssh。。,就假装成功了,大家不要学我一知半解):

4 安装visual studio code
去官网下载安装即可
5 下载插件
打开vscode,在扩展商店安装remote SSH插件(或remote development插件)。
6 用Gitbash测试能不能连上虚拟机(这步不做也没关系)
首先打开虚拟机并登录。
然后在宿主机打开gitbash,输入下面命令(注意不是在虚拟机中直接输入):
ssh -p 2222 cp@127.0.0.1
其中2222是我第2步转发规则里面填的主机端口(各位一定要和自己第2步填的一样),cp是虚拟机用户名,127.0.0.1不用改。
如果成功登录说明虚拟机一侧配置好了。
7 配置vscode
安装完插件后,左下角会出现一个绿色按钮,如下图,单击它

选择Remote-SSH: Open Configuration File...

下一步选择C盘Users目录下的那个config文件进入。
按下图格式填写设置,Host是你vscode中显示你虚拟机的名字(我填了vbox),可以自己起名,HostName填写127.0.0.1,User填写cp(虚拟机用户名),Port填第2步设置端口转发规则里的主机端口(我是2222,各位与自己填的一样即可),完成后保存即可。

然后按ctrl+,进入设置界面,选扩展------Remote-SSH

找到Remote Platform选项,单击添加项,在项这一栏填入你虚拟机的名字(我填的是vbox),值这一栏填linux(因为要连接的虚拟机是linux)。

8 登录虚拟机
点击vscode右侧的远程资源管理器图标(下图左红圈),点击SSH TARGETS中的虚拟机右侧的图标登录。

在新窗口中输入密码,当左下角的绿色按钮显示SSH:vbox(vbox是我的主机名,你的电脑上显示的应该是你的主机名),就说明连接成功,得到下图界面。
单击终端,选择新终端,就能看到终端的welcome欢迎界面。

如果没有看到彩色welcome欢迎界面,则单击上图右侧红圈圈出的下拉菜单,并点击”选择默认shell“选项,选中zsh即可。
以上内容不保证对,如有错误或疑问,欢迎大家提出。
9 参考链接
https://www.jianshu.com/p/d59ed9f226d1
https://blog.csdn.net/qq_38004174/article/details/87896135
https://www.jianshu.com/p/0f2fb935a9a1
https://www.itranslater.com/qa/details/2104614987065984000
如何使用visual studio code的插件remote ssh远程操作virtual box虚拟机的更多相关文章
- 【Visual Studio Code】插件
[Visual Studio Code]插件 转载:https://www.cnblogs.com/yangchongxing/p/10625628.html 目录 ================= ...
- ionic2——开发利器之Visual Studio Code 常用插件整理
1.VsCode官方插件地址: http://code.visualstudio.com/docs 2.使用方法,可以在官网中搜索需要的插件或者在VsCode的“”扩展“”中搜索需要的插件 添加方法使 ...
- Visual Studio Code 常用插件
这里记录在Visual Studio Code中,我经常用到的插件. C#这个就不必说了,想用VIsual Studio Code调试和编辑C#代码,必须要装这个插件.东西还好,就是每次安装和更新插件 ...
- visual studio code emmet 插件不提示?解决方案
使用visual studio code编辑.vue文件时,emmet插件无法使用, 可以通过以下方试解决: code →首选项 →设置 ,在右侧窗口“用户配置”.“工作区设置”添加以下代码: // ...
- visual studio code常用插件
1.auto close tag2.chinese language pack for visual studio code3.debugger for chrome4.docker5.html cs ...
- MySql连接Visual studio Code First插件
到mySql官网Downloads==> MySQL on Windows==>MySQL for Visual Studio 下载插件安装即可
- visual studio code前端插件及常用快捷键【转】
通用插件 HTML Snippets 超级实用且初级的 H5代码片段以及提示 HTML CSS Support 让 html 标签上写class 智能提示当前项目所支持的样式新版已经支持scss文件检 ...
- Visual Studio Code必备插件
HTML Snippets: 超级实用且初级的 H5代码片段以及提示 HTMLHint: html代码检测 HTML CSS Support : 让 html 标签上写class 智能提示当前项目所支 ...
- Visual Studio Code 常用插件整理
常用插件说明: 一.HTML Snippets 超级使用且初级的H5代码片段以及提示 二.HTML CSS Support 让HTML标签上写class智能提示当前项目所支持的样式 三.Debugg ...
- 【转】Visual Studio Code必备插件
先ctrl+shift+p,弹出命令面板-选中Extensions:Install Extensions 或者直接点击左侧栏这个扩展按钮(Ctrl+Shift+X) 然后左侧栏就会显示出很多插件,如图 ...
随机推荐
- Solon Java Framework v1.12.0 发布
一个更现代感的 Java 应用开发框架:更快.更小.更自由.没有 Spring,没有 Servlet,没有 JavaEE:独立的轻量生态.主框架仅 0.1 MB. @Controller public ...
- [常用工具] 基于psutil和GPUtil获取系统状态信息
本文主要介绍在Python3中利用psutil库获取系统状态,利用GPUtil获取gpu状态. psutil (process and system utilities)(进程和系统实用程序)是一个跨 ...
- Asp-Net-Core权限认证
title: Asp.Net Core权限认证 date: 2022-10-27 16:17:52 tags: - .NET 翻了很多的博客,文档,发现asp.net core自带的权限认证还是比较复 ...
- 小H的小屋
题解 [NOI2004]小H的小屋 前记 又鸽了好久,这回可要努力更新了 2019.6.2,痛下杀心,把电脑上所有的游戏都删掉了,提前160天奋力备考NOIP.目标:A类省队! 我是传送门 题解 这道 ...
- Java集合 - ConcurrentHashMap
介绍 ConcurrentHashMap 技术是为了解决问题而生的,ConcurrentHashMap 解决了多个线程同时操作一个 HashMap 时,可能出现的内部问题.当多个线程同时操作一个 Ha ...
- js节流防抖 减少服务器请求
- angular打包出现JavaScript堆内存不足、启动也会内存溢出解决办法\increase-memory-limit' 不是内部或外部命令,
## 打包出现JavaScript堆内存不足 最近打包遇到这种报错 Ineffective mark-compacts near heap limit Allocation failed - Java ...
- 《深入理解Java虚拟机》第三章读书笔记(一)——垃圾回收算法
参考书籍<深入理解java虚拟机>周志明著 系列文章目录和关于我 本文主要介绍垃圾回收理论知识 1.jvm哪些区域需要进行垃圾回收 虚拟机栈,本地方法栈,程序计数器都是线程私有的,随线程而 ...
- io流概述-一切皆为字节
io流概述 什么是io 生活中,你肯定经历过这样的场景.当你编辑一个文本文件,忘记了ctrl+s,可能文件就白白编辑了当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里.那么数据都是在哪些设 ...
- C++中进程间相互通信的方法
详细资料查看https://www.cnblogs.com/swunield/articles/3893250.html 在我看来主要分方式就是 1.共享内存 2.postmessage发送出去 3. ...
