前言
??本篇文章介绍一下 Pycharm 如何配置远程连接信息,使其能够在本地使用服务器上的GPU等硬件资源,并在本地完成代码的运行与调试。
??所需软硬件环境:
环境 | 版本 |
---|
本地系统 | Windows 10 | 服务器 | Ubuntu 20.04 | IDE | Pycharm 2021.1.3 | 代码目录 | F:\Python\PyTorch\amc-master |
1. 配置SSH连接服务器
![在这里插入图片描述](https://img-blog.csdnimg.cn/3735f56efe5e48c6ac11e1880deed6fc.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center)
![在这里插入图片描述](https://img-blog.csdnimg.cn/72aa91dc56024d61bf9f78d1ad222570.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ??Tools
?
?
>
-->
??> Deployment
?
?
>
-->
??> Configuration 对连接服务器信息进行配置
??可能有的小伙伴工具栏没有Tools 这一个选项,通常是破解后的软件没有这一选项,可以双击Shift 键,输入Tools 进行搜索可以找到: ![在这里插入图片描述](https://img-blog.csdnimg.cn/8abcb30ad94c41deaaf76a56f81d2b6b.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/e004948aab594fbf8c103302f5d617ad.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/65110457b29949f88b8c8b795789d4e0.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center)
??先点击+,选择SFTP,创建一个web server :
![在这里插入图片描述](https://img-blog.csdnimg.cn/99ad34cf12c14b6c9cd739e1792a9774.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ??我的web server 的名字是Ubuntu-py38 ,然后按下面的图示进行配置SSH :
![在这里插入图片描述](https://img-blog.csdnimg.cn/4b7f618a4f1843519fdb6618ec96abd9.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/4e2eef19c9544064bcaa3bccc151eaf5.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center)
??Host: 服务器IP ??User name: 用户名 ??Password: 用户登录密码
??然后点击Test Connection,出现Successful connected! 表示与服务器建立了连接,若连接失败,请检查服务器是否开启了SSH ;然后点击Apply应用该配置。
ps -e |grep ssh
service ssh start
sudo apt-get update
sudo apt-get install openssh-server
??然后再点击Deployment 页面中的Test Connection,也是OK的
![在这里插入图片描述](https://img-blog.csdnimg.cn/191d0eeb456a4c628705b35136a90931.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center)
2. 配置代码文件同步路径
??接着就配置在Pycharm 显示的服务器的根目录,这里将Root path 配置为/home/liyanpeng/pywork ,这里不建议填写根目录或其他目录,否则Pycharm 会显示服务器上的该目录下的所有文件夹及其文件。
![在这里插入图片描述](https://img-blog.csdnimg.cn/56a6e05bf9754ebab5a1065abac524f0.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ??接着点击一下Mappings选项卡来配置目录的映射信息,该目录将存放本地同步到服务器上的文件:
![在这里插入图片描述](https://img-blog.csdnimg.cn/3fe27f9970bf44a9b69f3c79652d1ec5.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center)
??Local path: 表示本地的工程代码路径,默认已经自动填充 ??Deployment path: 表示服务器端的相对路径,相对于Root path 来说的,这里默认不填,但会有一个警告信息,而且会导致后面代码无法同步,根据箭头所指的信息,这里填上 /
![在这里插入图片描述](https://img-blog.csdnimg.cn/d3761818cd6f4d67bfd030d2fee98167.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center)
3. 同步代码到服务器上
??接着依次点击Tools
?
?
>
-->
??> Deployment
?
?
>
-->
??> Sync With Local来将本地代码同步到服务器上:
![在这里插入图片描述](https://img-blog.csdnimg.cn/97dd8d1947574dfaa19bf9865dc87ce0.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/aa380c53620b463daad25dcee8e8b51d.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center)
![在这里插入图片描述](https://img-blog.csdnimg.cn/c61e6ea53071465e907ba6108290bb33.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center)
4. 配置远程Python运行环境
??默认是本地的Anaconda 环境,因为我们的代码是要在服务器上跑,所以需要使用服务器上的Python 环境,下面添加服务器上的Python 环境:
![在这里插入图片描述](https://img-blog.csdnimg.cn/3dd649b42c674a7eb9dc56eefa19bdf8.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ??按照图示选择刚刚创建的web server ,下面有一行字Remote SDK is saved in IDE settings,so it needs the SSH configuration to be saved there too. ,意思是说,远程的SDK 保存在了IDE settings 中,所以SSH 的配置信息也要保存在那里,点击Move 将配置信息移动到IDE settings 中,然后点击Next。
![在这里插入图片描述](https://img-blog.csdnimg.cn/6794fe798dcf447498dbfefa4d15cc21.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ??然后就会看到远程的Python 解析器所在的目录以及项目代码默认的路径,第一个可以不改,但最好改成在服务器上安装好的anaconda 的环境,方便管理,我的anaconda 环境为/home/liyanpeng/anaconda3/envs/torch/bin/python ;下面的代码同步的文件路径换成我们在配制同步代码文件时的那个路径/home/liyanpeng/pywork :
![在这里插入图片描述](https://img-blog.csdnimg.cn/9803740b4be94cce8c8c92c805225b44.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/af93bca60e474729b0855e51bcda6913.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/7c034e8a5d9d47f9a95a176d1625e3c7.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ??配置完成之后,会自动对代码文件做一个同步:
![在这里插入图片描述](https://img-blog.csdnimg.cn/0c995a73790646f3977862a50a16b759.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ??可以看到代码中已经没有红色的缺少库文件错误信息,且经过Debug ,显示的是服务器端的Python 环境:
![在这里插入图片描述](https://img-blog.csdnimg.cn/5b6990ea380c48f996eb5a478139655f.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/e8a6897b265b4b78b8c3a57302997248.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMwNzUw,size_16,color_FFFFFF,t_70#pic_center)
??OK,配置完毕!
结束语
??不知不觉间,已经毕业一个多月了,也已经一个多月没有也文章了,Markdown 的一些命令都快忘记了,哈哈哈哈哈。突然由学校转到工作上,还真有点小不适应,前段时间一直在忙着熟悉工作岗位,感觉节奏有点小快,哈哈哈哈,冲冲冲!!!!
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210419171612199.jpg#pic_center)
|