VsCode连接远程Linux编译环境的便捷处理

1.免输登录密码

免输命令的正确方法是使用公钥和私鈅在研发设备,和linux服务器上校验身份。公钥和私钥可在windows系统上生成。公钥要发送到linux服务器。私钥需要通知给本地的ssh客户端程序,相关的操作如下:

  1. 生成 SSH Key:

    • 打开终端或命令提示符窗口。
    • 输入以下命令:
      ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    • 按照提示选择密钥存储位置和密码(或直接回车跳过密码)。
    • 生成完成后,会在指定位置生成两个文件:id_rsa (私钥)和 id_rsa.pub(公钥)。
  2. 将公钥添加到远程linux服务器:

    • 登录到远程服务器。
    • 找到或创建 .ssh 文件夹(一般位于用户主目录下,cd ~)。
    • 打开 authorized_keys 文件,将公钥文件 id_rsa.pub 的内容添加到文件末尾。
      • 如果对应文件不存在,直接重命名即可。
    • 保存文件并退出。
  3. 配置windows平台 SSH 客户端秘钥模式登陆:

    • 打开终端或命令提示符窗口。
    • 输入以下命令:ssh-add .ssh/id_rsa ,将私钥添加到 SSH agent 中。
      • 注意,对于windows平台,默认的.ssh配置和文件,都在当前用户的.ssh目录下,这是一个隐藏目录。
    • 在 SSH 客户端中此时已经可以使用私钥进行身份认证。全程无需密码。
  4. 连接远程服务器无密码测试:

    • 打开终端或命令提示符窗口。
    • 输入以下命令:ssh username@remote_host,其中 username 是远程服务器上的用户名,remote_host 是远程服务器的地址或 IP。

注意,第三步,你可能遇到SSH agent未启动的问题, 这个按网上的搜索处理即可。你需要:1.确认windows平台的OpenSSH,SSH Agent都已经安装并运行。这类操作需要用到管理员模式的powershell.

SSH agent不仅仅是VSCode在用。信任链路一但建立,各种远程连接服务:ssh命令行工具、scp都可以从中受益。比如:

2.命令行文件拷贝 - 使用scp

注意,可能是因为版权问题,windows平台的scp服务器很难部署,但是反向操作很容易,那么,我们始终可以在 windows一侧,用客户端的模式去上传下载linux上的文件。

scp root@192.168.76.3:/home/fengxh/pjtxxxx/src/shake_src.log .

shake_src.log 100% 222KB 10.3MB/s 00:00

上述scp 命令输入时,甚至会有linux下的文件名自动补全功能,即使这个文件身处remote server far far away。无需输密码,方便的文件传递,那么源码呢?相关的git版本管理系统可以跨平台使用吗?是的,可以:

3.无GitStack之类的GitServer,基于scp模式的跨平台TortoiseGit连接

tortoiseGit是支持ssh,scp模式的git库读写的。

配置时:

远程连接部分,按照ssh协议,然后root用户访问:ssh://root@192.168.76.3:/home/fengxh/pjtxxxx

之后,输入密码后,右键操作和windows本地的git工作区访问没有什么两样:

并且,这种连接模式还是支持linux本身的账户权限分配的。可能比git自带的git服务器还好用。

相关推荐
weigangwin9 分钟前
agent-workspace-linux 不是远程桌面:Linux AI 工作区的隔离边界验收
linux·xvfb·mcp·桌面隔离·权限边界·bubblewrap·agent-workspace
Dovis(誓平步青云)2 小时前
远程办公软件文件传输实测:6 款工具的速度、稳定性和办公体验对比
linux·运维·服务器·后端·生成对抗网络
Java小白笔记2 小时前
Docker 安装配置完全指南:MacOS 、Windows、Linux环境下的安装、配置与验证
linux·macos·docker
qetfw4 小时前
CentOS 7 搭建 LDAP 目录服务
linux·运维·centos
ALINX技术博客5 小时前
【黑金云课堂】FPGA技术教程Linux开发:系统进阶-PS DMA
linux·fpga开发
Lary_Rock5 小时前
MTK SecureBoot全链路配置指南
前端·vscode·github
IT方大同5 小时前
linux简介
linux·运维·服务器
mounter6256 小时前
从内存隔离到运行时防线:透视 Linux 内核安全强化的博弈与演进
linux·网络·安全·linux kernel·kernel
微道道7 小时前
Linux盒子局域网内使用 .local 域名访问,告别IP变化烦恼
linux·运维·服务器·hermes
Yolanda948 小时前
【编程工具】关于IDEA的Mark Directory as操作的一点探索记录
java·ide·intellij-idea