文章目录

前言运行环境

一、建立SSL连接1.将账户信息设为本地账户2.服务器端安装OpenSSH Server3.使用Windows PowerShell建立连接

二、pycharm工程部署到服务器1.在pycharm上与Windows服务器建立连接2.本地工程文件上传到Windows服务器3.项目文件更新

三、使用pycharm的terminal远程运行.py文件四、远程编译器设置

前文链接: 【奶妈级教程】Ubuntu18.04服务器远程连接指南 【奶妈级教程】Ubuntu18.04服务器远程连接的anaconda安装与环境配置

前言

前文已经介绍了如何连接Windows本地与Linux服务器进行远程实验。然而,由于受到设备条件、其他软件系统兼容、上手难度与学习成本等方面的制约,服务器经常需要在Windows系统下运行。因此,本文在经作者测试后整理出了一套连接Windows服务器进行远程实验的可行方法。该方法无需在服务器面前操作,也不需要第三方远程软件(如向日葵、teamviewer等)控制服务器,只是将服务器作为运算资源,在不超出服务器算力上限的情况下可以多人同时使用,解决了原来同一时间只能有一个人操作服务器的痛点,也更容易实现服务器与工作空间的物理隔离,提高了服务器的利用效率和使用者的用户体验。

运行环境

服务器操作系统:Win10专业版客户端操作系统:Win10专业版客户端软件:pycharm2021.3专业版互联环境:服务器与客户端处在同一局域网内,IP地址固定。

一、建立SSL连接

1.将账户信息设为本地账户

远程登录ssh指令使用的用户名和密码必须是本地用户的,如果使用微软账户会报错permission denied。

2.服务器端安装OpenSSH Server

点击路径:开始-设置-应用-应用和功能-可选功能,添加功能中搜索“OpenSSH服务器”并安装。安装成功后效果如下: OpenSSHell Server默认为手动开启,可以在系统的服务中(右击“此电脑”-管理-服务和应用程序-服务)找到OpenSSH Server,将启动类型设为自动开启。 到此为止,设置全部完成。

3.使用Windows PowerShell建立连接

假设服务器用户名为abc,IP地址为192.168.1.100,则检验测试连接是否成功的语句为:

ssh abc@192.168.1.100

PowerShell会提示输入密码,输入服务器的用户密码即可。 连接成功,显示如下。 注意:

1.安装OpenSSH Server的时候需要Windows Update这个服务在开启状态,否则安装失败。2.服务器需要为用户设置密码,用于建立连接时的验证。3.本文只是拿PowerShell举例,terminal可以自行选择cmd、pycharm等,pycharm使用详见第三章 。

参考文献:

通过ssh远程连接Win10终端 pycharm windows 服务器_window使用pycharm远程连接服务器 vscode Remote-ssh 远程控制windows主机

二、pycharm工程部署到服务器

1.在pycharm上与Windows服务器建立连接

在pycharm菜单栏选择tools-deployment-configuration,点击加号选择SFTP建立连接。

这里新建SFTP连接,自定义名称为Server Win10,点击OK。建立好后,点击SSH configuration后面的省略号设置连接参数。如果有已经连接过的服务器可以直接选择现成的参数,否则点击加号新建连接参数。 其中,Host填入服务器IP,User Name填入服务器的用户名,Password填入服务器的登录密码,为了今后连接方便,后面的Save Password建议勾选。可以利用Test Connection来测试一下连接是否成功,成功提示如下: 完成后点击OK即可。Root path为远程服务器默认的根目录,一般点击Autodetect自动识别后,将盘符改成你希望在服务器上保存工程文件的盘符(比如D:),方便后面mappings设置。若选择浏览添加可能出现文件目录变成bad message的bug。

在Mappings选项卡中,Local path填入本地工程文件夹的路径,Deployment path填入希望部署在服务器上的路径,这个路径只需要填上一步中Root path后面的部分即可,点击OK完成设置。

2.本地工程文件上传到Windows服务器

菜单栏点击Tools-Deployment-Upload to(快捷键Ctrl+Alt+Shift+X),选择设置好的服务器名Server Win10,等待上传完成后,点击菜单栏Tools-Deployment-Browse remote Host可以查看上传好的文件,此后即可运行项目了。

注意:

如果本地项目中有空文件夹,则不会被上传,强行上传空文件夹会报错:No files or folders found to process。解决方法为,tools菜单选择deployment-options,将create empty directories勾选即可。

3.项目文件更新

在本地修改代码以及数据后,可以右击项目文件或文件夹,选择Deployment-Upload to…即可将修改内容更新到服务器上。在服务器上得到的结果文件右击选择Download from here即可将结果同步回本地项目的文件夹中。

参考文献: Xshell&pycharm远程运行视频教程

三、使用pycharm的terminal远程运行.py文件

除了本机Windows的cmd和powershell,我们还可以选择不在pycharm上设置编译器,也就是不进行远程调试,在上传项目后直接通过命令行来远程运行(前提是本地将项目调试完成)。步骤如下:

在tools菜单中选择start SSH session与远程服务器建立连接。使用conda env list查看编译器列表并使用conda activate指令选择使用的编译器。跳转至main.py所在文件路径。运行.py文件。

设要运行的文件名为main.py,则在pycharm的terminal中输入指令:

python main.py

运行过程中,可以在powershell输入nvidia-smi -l实时监控GPU利用情况。

注意:

这种方法比较适合本地有GPU用于调试,借助远程服务器做加速运算的情况;若本地计算机没有GPU和CUDA,则调试麻烦相当多,不建议使用。

参考文献: 基于pycharm Windows 服务器-windows客户端 SSH会话远程开发配置

四、远程编译器设置

设置编译器方法参考 通过ssh远程连接Win10终端 pycharm windows 服务器_window使用pycharm远程连接服务器

问题解答: 目前Windows服务器的编译器在设定远程连接时会出现找不到编译器的错误,体现为编译器下拉菜单寻找文件路径时出现Bad message的问题。 若强行添加编译器的路径则会报错: env为linux系统的环境变量,初步判断是不能够识别Windows系统的路径(而在deployment的时候能够识别,就NM离谱!)。目前该问题尚未解决,论坛上也认为这是个老bug,至今未被修复。欢迎大神答疑解惑,也欢迎解决了的朋友给我留言一起探讨。 论坛网址:网址1 网址2 网址3

相关阅读

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。