vscode支持ssh远程开发
文章目录
- 一、生成ssh使用的公钥/密钥对
- 二、使用vscode通过ssh连接服务器
- 1.安装插件
- 2.配置文件
- 3.连接服务器
- 4.新建文件夹,存放不同的任务
- 5.为不同的项目选择不同的conda环境
- 三、使用scp命令与服务器互传文件、文件夹
- 1.检查Windows 系统是否支持scp命令
- 2.在Windows系统本地的电脑向服务器传输文件、文件夹
- 3.在服务器向Windows系统本地的电脑传输文件、文件夹
- 四、FileZilla使用密钥文件连接linux服务器,上传文件
- 1.下载并安装FileZilla
- 2.使用私钥文件配置站点管理器
- 3.上传文件或文件夹
- 五、远程使用服务器运行程序
- 1.通过vscode编辑、调试代码
- 2.使用nohup命令运行程序
- 2.1 运行程序
- 2.2 停止运行程序
- 2.3 查看日志信息
一、生成ssh使用的公钥/密钥对
vscode通过ssh连接服务器实现免密登录+删除(吐血总结)
二、使用vscode通过ssh连接服务器
1.安装插件
2.配置文件
此时应该已经在生成密钥对时就配置好了,
Host <服务器的名字>HostName <服务器的ip>User <ssh登录的用户名>Port <端口号>IdentityFile <私钥所在地址>
配置好后就可以直接在cmd窗口中输入以下命令,远程登录服务器
ssh <服务器的名字>
3.连接服务器
右击服务器,我选择在新窗口连接。
如果之前在生成密钥对时,设置了密码会要求填写密码。
新窗口如下,按步骤操作可以看到服务器的文件架构。
4.新建文件夹,存放不同的任务
在前面的图片中,选择确定。
选择第二个图标,新建文件夹Workspace
5.为不同的项目选择不同的conda环境
点击框中的内容,切换项目所在的conda环境,当前就在base环境中。
三、使用scp命令与服务器互传文件、文件夹
1.检查Windows 系统是否支持scp命令
在cmd窗口检查Windows 系统是否支持scp命令
2.在Windows系统本地的电脑向服务器传输文件、文件夹
- 上传文件
scp 本地文件的filename 远程服务器的用户名@远程服务器的ip:远程服务器的目标目录
- 上传文件夹
scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolder
3.在服务器向Windows系统本地的电脑传输文件、文件夹
- 下载文件
scp RemoteUserName@RemoteHostIp:RemoteFile FileName
- 下载文件夹
scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderName
四、FileZilla使用密钥文件连接linux服务器,上传文件
1.下载并安装FileZilla
FileZilla客户端的安装配置教程以及使用教程(超级详细)
2.使用私钥文件配置站点管理器
3.上传文件或文件夹
在服务器窗格中选好目标位置。在本地窗格中选择要上传文件或文件夹,选中右击,点击上传,就可以上传到服务器的目标位置。
五、远程使用服务器运行程序
1.通过vscode编辑、调试代码
此时,我已经利用FileZilla把项目文件夹,上传至Workspace中。在资源管理器中打开main.py,就可以远程编辑代码了,对修改、调试程序代码非常方便。
缺点:当本地关闭vscode程序或断网,会影响服务器上代码的运行。如果想24小时运行程序,建议使用nohup命令。
2.使用nohup命令运行程序
2.1 运行程序
nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。
nohup 命令,在默认情况下(非重定向时),会输出一个名叫 nohup.out 的文件到当前目录下(Linux nohup 命令)。
我比较喜欢使用下面的命令运行py文件,它会把报错信息、print函数输出的信息都重定向输入到 logfile.log 文件中。方便我们根据报错信息,后续修改代码。nohup.out文件也包含logfile.log中的信息,但是它包含多个py文件运行输出的信息。建议还是每个需要运行的py文件,对应一个logfile.log文件。(第一次通过服务器远程跑代码)
(base) username@lthpc:~/Workspace/project name/code$ nohup python -u main.py > logfile.log 2>&1 &
该代码返回一个进程号PID,如
[1] 1651179
2.2 停止运行程序
kill -9 进程号PID
2.3 查看日志信息
显示nohup.out或logfile.log文件的最后10 行内容
tail -f nohup.out
tail -f logfile.log
相关文章:

vscode支持ssh远程开发
文章目录 一、生成ssh使用的公钥/密钥对二、使用vscode通过ssh连接服务器1.安装插件2.配置文件3.连接服务器4.新建文件夹,存放不同的任务5.为不同的项目选择不同的conda环境 三、使用scp命令与服务器互传文件、文件夹1.检查Windows 系统是否支持scp命令2.在Windows系…...
Java线程详解
一、线程的基本概念 1. 什么是线程? 线程是程序执行的一个单元,它是进程中的一个实体,是被系统独立调度和分派的基本单位。一个进程可以包含多个线程,这些线程共享进程的资源,如内存空间和文件句柄,但每个…...

java -jar启动项目报错:XXX.jar中没有主清单属性
XXX.jar中没有主清单属性 1、错误复现2、错误原因3、解决方案 java -jar启动项目报错:XXX.jar中没有主清单属性 1、错误复现 今天使用springboot给项目打了jar包,使用命令启动时报错,截图如下: 2、错误原因 项目的pom文件配置如…...

【Vue - Element 】实现表单输入框的远程搜索功能
需求 表单是一个常见的元素,而在表单中,常常需要用户从大量的数据中选择一个或多个选项。 为了提高用户体验,提供远程搜索功能可以帮助用户快速找到所需的选项,而不是从冗长的下拉列表中手动查找。 以该需求为例,我…...
Linux(Centos 7.6)命令详解:split
1.命令作用 Linux系统中的一个用于拆分文件的命令。它可以将一个大文件拆分成多个小文件,以便于传输、存储或处理 2.命令语法 Usage: split [OPTION]... [INPUT [PREFIX]] Usage: split [选项]... [输入文件] [输出文件前缀] 3.参数详解 OPTION: -a, --suffi…...

八股学习 Redis
八股学习 Redis 使用场景常见问题问题1、2示例场景缓存穿透解决方案一解决方案二 问题3示例场景缓存击穿解决方案 问题4示例场景缓存雪崩解决方案 问题5示例场景双写一致性强一致方案允许延时一致方案 问题6RDB方式AOF方式两种方式对比 问题7示例场景惰性删除定期删除 使用场景…...
如何通过高防服务隐藏服务器源IP
在网络安全领域,隐藏服务器的真实源IP地址是保护服务器免受直接攻击的重要手段之一。暴露的源IP地址容易成为黑客攻击的目标,尤其是DDoS攻击、端口扫描和暴力破解等威胁。高防服务(如阿里云盾、AWS Shield等)不仅提供强大的流量清…...

【WEB】网络传输中的信息安全 - 加密、签名、数字证书与HTTPS
文章目录 1. 概述2. 网络传输安全2.1.什么是中间人攻击2.2. 加密和签名2.2.1.加密算法2.2.2.摘要2.2.3.签名 2.3.数字证书2.3.1.证书的使用2.3.2.根证书2.3.3.证书链 2.4.HTTPS 1. 概述 本篇主要是讲解讲一些安全相关的基本知识(如加密、签名、证书等)&…...

借助Claude实现Playwright的自动化(MCP Server)
借助Claude实现Playwright的自动化(MCP Server) MCP Server自己开发也是可以的,现在也有很多开箱即用的MCP Server,可以在https://github.com/modelcontextprotocol/servers中查找 Playwright的MCP Server Playwright的MCP Server是社区开发的,它能够为LLM提供操作浏览器的…...
【区间DP】【hard】力扣730. 统计不同回文子序列
给你一个字符串 s ,返回 s 中不同的非空回文子序列个数 。由于答案可能很大,请返回对 109 7 取余 的结果。 字符串的子序列可以经由字符串删除 0 个或多个字符获得。 如果一个序列与它反转后的序列一致,那么它是回文序列。 如果存在某个 …...
【Vim Masterclass 笔记11】S06L24 + L25:Vim 文本的插入、变更、替换与连接操作同步练习(含点评课)
文章目录 S06L24 Exercise 06 - Inserting, Changing, Replacing, and Joining1 训练目标2 操作指令2.1. 打开 insert-practice.txt 文件2.2. 练习 i 命令2.3. 练习 I 命令2.4. 练习 a 命令2.5. 练习 A 命令2.6. 练习 o 命令2.7. 练习 O 命令2.8. 练习 j 命令2.9. 练习 R 命令2…...
分布式组件底层逻辑是什么?
分布式组件是指在分布式系统中执行特定功能的模块,通常分布在多个物理节点上,共同协作完成任务。其底层逻辑包括多个方面,从通信和数据管理到一致性和容错设计,具体如下: 1.分布式组件的核心特点 分布性:功…...
Spring Boot中的扫描注解如何使用
在 Spring Boot 中,扫描注解是指通过注解来告诉 Spring 框架应该扫描哪些包、哪些类或哪些特定的组件,并将其作为 Spring 容器中的 bean 进行管理。Spring Boot 主要通过以下几种注解来实现自动扫描: ComponentScanSpringBootApplicationCom…...

初识JVM HotSopt 的发展历程
目录 导学 目前企业对程序员的基本要求 面向的对象 实战 学习目标 JVM 是什么 JVM 的三大核心功能 各大 JVM look 看一下虚拟机 HotSopt 的发展历程 总结 导学 目前企业对程序员的基本要求 面向的对象 实战 学习目标 JVM 是什么 JVM 的三大核心功能 即时编译 主要是…...

基于springboot果蔬供应链信息管理平台
基于Spring Boot的果蔬供应链信息管理平台是一种集成了先进信息技术和果蔬供应链管理理念的综合性系统。 一、背景与意义 随着人们生活水平的提高和对健康饮食的重视,果蔬市场需求不断增长。然而,果蔬供应链涉及多个环节,包括种植、采摘、加…...
掌握 React 关键:理解 super () 和 super (props) 的不同应用
在 React 中,super() 和 super(props) 都与 React 类组件的构造函数(constructor)以及继承有关。为了理解它们之间的区别,我们需要了解 JavaScript 类继承机制以及 React 类组件的工作原理。 1. super() 与 super(props) 的区别 …...
Scala语言的软件开发工具
Scala语言的软件开发工具概述 Scala是一种多范式编程语言,它结合了面向对象编程和函数式编程的特性。随着大数据技术的发展和互联网应用的广泛普及,Scala逐渐成为了开发高性能应用和后端服务的热门选择。为了更好地进行Scala开发,开发者需要…...

斯坦福大学李飞飞教授团队ARCap: 利用增强现实反馈收集高质量的人类示教以用于机器人学习
近年来,通过人类示范进行模仿学习在教授机器人操控技能方面取得了令人瞩目的进展。为了进一步扩大训练数据集的规模,近期的研究开始采用便携式数据采集设备,无需依赖物理机器人硬件。然而,由于在数据采集过程中缺乏机器人实时反馈…...

【Linux】从零开始:编写你的第一个Linux进度条小程序
Linux相关知识点可以通过点击以下链接进行学习一起加油!初识指令指令进阶权限管理yum包管理与vim编辑器GCC/G编译器make与Makefile自动化构建GDB调试器与Git版本控制工具 文章目录 一、知识铺垫1.1 回车与换行概念1.2 缓冲区 二、实现简单倒计时三、进度条3.1 Verrs…...

web前端第八次作业---制作音乐榜单
制作音乐榜单 代码: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><s…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...

Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...