在VScode中使用SSH进行远程开发

本文介绍如何在Jetson Nano上安装SSH及常用命令,并通过VSCode实现高效远程开发。涵盖免密登录设置与VSCode远程开发环境搭建。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

本文是Jetson_Nano无人车开发系列中关于远程开发的分享。

在Linux开发中,大部分情况下由于设备空间有限主板是无法携带显示器的,所以我们需要使用远程的方式进行开发。关于远程软件可以根据其是否带桌面分为两大类。带桌面的远程开发工具有很多,比如:TeamViewer、Nomachine、MobaXterm等。但是带桌面其传输的数据量大,就会导致延迟的现象,使用起来很不爽。不带桌面的也很多,例如:putty、Xshell、等。今天主要是分享vscode与ssh结合使用进行开发,这样既有命令行,也有编辑器,开发起来效率会有显著提升。当然,如果可以熟练使用vim,emacs等命令行编辑器的话开发效率是最高的,但vim的插件配置起来简直是令人头疼,尤其是自动补全插件YouCompletMe,安装起来一言难尽。所以,结合vscode和ssh进行远程开发是一个不错的选择。


一、安装ssh

win10一般是自带ssh工具,无需专门下载。仅在nano上安装即可。

1、在nano上安装ssh

sudo apt update
sudo apt install openssh-server

2、开启ssh服务

sudo service sshd start

3、确认是否开启

在终端中输入以下命令,如果已启动,会打印:[+] ssh

service --status-all | grep ssh

二、ssh常用命令

scp传输命令,如果传输的是文件夹,在命令里添加-r即可

scp [PC文件路径] [nano账号]@[nanoip]:[nano路径]    #PC发送给nano

scp [nano账号]@[nanoip]:[nano路径] [PC文件路径]    #nano发送给PC

三、免密登录

使用ssh登陆的时候需要我们在命令行里输入密码,每次都输就有点麻烦,其实主要还是懒,我们可以添加密钥,这样两台常用机器之间登录就可以省去输密码。

前提:主机A与主机B均安装并打开ssh服务,且在同一局域网下。

主机A与主机B可以都是Linux系统,也可以一个是Windows一个是Linux。在这里,主机A是我的笔记本win10,主机B是Nano。依次执行以下操作,可以免去从主机A登录主机B时的密码。为了方便以后登录,最好是给主机B配置静态IP。

1、在主机A上生成rsa密钥:

打开cmd,输入以下命令:

ssh-keygen -t rsa

2、将A主机生成的公钥拷贝到B主机上

在cmd终端先执行以下内容:

function ssh-copy-id([string]$userAtMachine, $args)
{ 
    $publicKey = "$ENV:USERPROFILE" + "/.ssh/id_rsa.pub" 
    if (!(Test-Path "$publicKey"))
        { Write-Error "ERROR: failed to open ID file '$publicKey': No such file" }
    else 
        { & cat "$publicKey" | ssh $args $userAtMachine "umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/authorized_keys || exit 1" } 
}

再执行:

ssh-copy-id [nano账号]@[nanoip]

配置好之后登录效果如下:

 图3.1:免密登录效果图

四、vscode中使用ssh

注意:remote-ssh一定不要安装最新版本!!!

在Windows安装Vscode,并在插件管理的地方下载插件remote-ssh。 

                                        图4.1:下载步骤

安装完成之后,左边栏和左下角会出现图标:

 图4.2:remote-ssh使用入口

随便点击上面两个入口中的一个,然后按照vscode的提示一步一步添加要登陆的机器即可。

再次注意:一定不要安装最新版本的remote-ssh插件!!!

添加好机器后,检查用户目录下.ssh文件夹中的config配置文件,正确格式如下:

Host 别名
    HostName 配置好的Nano静态IP
    User Nano用户名

图4.3:配置文件格式

配置好之后登录效果如下,这是登陆成功nano并在vscode上打开Nano家目录下的.bashrc文件的图示。左下角绿色部分显示的是连接情况。

图4.4:效果展示

remote-ssh也支持使用tmux,点击终端右边的加号就可以看到。

图4.5:效果展示


 

 

总结:

        本文介绍了ssh如何安装与一些常用命令和如何在vscode中使用ssh。

        由于笔者水平有限,出现错误也是在所难免,随时欢迎各位的交流与批评指正。 

        本文为原创博客,如需转载,请联系本人,注明出处即可。

<think>好的,我需要帮助用户了解如何通过命令行在VSCode中配置SSH远程服务器连接。首先,我得回忆一下VSCodeSSH扩展和相关配置步骤。根据提供的引用,用户提到使用VSCode SSH插件连接远程服务器,但现有的教程可能没有详细说明命令行操作。 首先,用户需要安装必要的插件,比如Remote - SSH。这一步通常在VSCode的扩展市场中完成,但用户可能想知道是否有命令行安装方法。不过,VSCode的扩展一般通过GUI安装,但也可以通过命令面板(Ctrl+Shift+P)输入“Install Extensions”来搜索安装,或者使用code --install-extension命令。例如,code --install-extension ms-vscode-remote.remote-ssh。 接下来是配置SSH连接。用户可能需要编辑本地的SSH配置文件(~/.ssh/config),添加服务器信息。这部分可以通过命令行使用文本编辑器如nano或vim完成。例如,添加Host、HostName、User和IdentityFile等参数。 然后,用户需要通过命令行启动VSCode并连接到远程服务器。使用code .命令在项目目录打开VSCode,然后通过命令面板选择“Remote-SSH: Connect to Host”并选择配置好的主机。不过,用户可能想知道是否有直接通过终端命令连接的方式,比如code --remote ssh-remote+<hostname>,这样可以跳过GUI操作。 另外,用户提到频繁输入密码的问题,这可以通过SSH密钥对解决。生成密钥对后,将公钥上传到服务器,这样在连接时就不需要每次输入密码了。这部分操作可以通过ssh-keygen和ssh-copy-id命令完成。 需要注意的是,VSCodeSSH连接主要依赖GUI操作,但部分步骤可以通过命令行实现,比如编辑配置文件和生成密钥。用户可能需要结合命令行和VSCode的命令面板来完成整个配置过程。同时,确保所有步骤符合引用中的方法,比如正确安装插件和配置SSH参数[^1][^2]。</think>### 通过命令行配置VSCode SSH远程连接的步骤 #### 1. 安装VSCode的Remote-SSH扩展 虽然扩展通常通过图形界面安装,但也可以通过命令行安装。打开终端,执行: ```bash code --install-extension ms-vscode-remote.remote-ssh ``` #### 2. 配置SSH连接文件 通过命令行编辑SSH配置文件: ```bash vim ~/.ssh/config ``` 添加以下内容(示例): ``` Host MyRemoteServer HostName 192.168.1.100 # 远程服务器IP或域名 User username # 远程服务器用户名 IdentityFile ~/.ssh/id_rsa # 本地私钥路径(可选) ``` 保存后测试连接: ```bash ssh MyRemoteServer ``` #### 3. 生成SSH密钥对(避免频繁输入密码) 生成密钥(命令行执行): ```bash ssh-keygen -t rsa -b 4096 ``` 将公钥上传到远程服务器: ```bash ssh-copy-id -i ~/.ssh/id_rsa.pub username@192.168.1.100 ``` #### 4. 通过命令行启动VSCode并连接 在本地终端输入以下命令直接连接(需先安装Remote-SSH扩展): ```bash code --folder-uri vscode-remote://ssh-remote+MyRemoteServer/path/to/project ``` 或分步操作: 1. 打开VSCode后按 `Ctrl+Shift+P` 调出命令面板 2. 输入 `Remote-SSH: Connect to Host` 3. 选择配置好的主机名(如`MyRemoteServer`) #### 5. 验证连接 成功连接后,VSCode左下角会显示`SSH: MyRemoteServer`状态,即可直接在远程服务器上编辑文件或运行终端命令[^2]。 ---
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值