![d5ec885d9c3bf3321754de97e6affca3.png](https://i-blog.csdnimg.cn/blog_migrate/721048a113066938f5c76eccfd0fbb40.jpeg)
前提:pycharm是专业版professional版本,不是社区版。
![90a82b9a18cb4ef7b7f96d1e738e13b7.png](https://i-blog.csdnimg.cn/blog_migrate/671a9da39510cb18c7bc9faec3106d69.png)
学生可以用学校官方的邮件地址申请免费的专业版Free educational licenses,网址:https://www.jetbrains.com/community/education/#students。
Linux 服务器:带GPU, 运算速度快。本地pycharm,熟悉的环境,可视化的操作界面。如何在本地pycharm上愉快的利用远程服务器上的GPU资源呢?那就是为pycharm配置远程解释器interpreter。具体操作分服务器端和windows本地端两部分介绍。
Linux 服务器端操作:
- 用putty等工具ssh连接远程Linux服务器,用自己的用户名、密码登录。
- 进入要创建工程的文件夹,如:
cd /nfs/users/.../pycharm_project
3. 在该文件夹内创建一个文件夹,用于存放所有工程文件,如:
mkdir ExploitabilityPrediction
4.进入工程文件夹
cd ./ExploitabilityPrediction
5.为该工程创建一个名为venv的虚拟环境 (不知道如何在linux创建虚拟环境的,百度一下),如:
virtualenv -p python3 venv
6.激活服务器中使用的虚拟环境
source ./venv/bin/activate
7.查看虚拟环境的interpreter路径,该路径在配置pycharm的时候要用到。
which python
![a50d4805b00108157964138fff4656b1.png](https://i-blog.csdnimg.cn/blog_migrate/5f9955de11347a8db95d50b4c615aebb.png)
8.顺便说一句,远程虚拟环境安装软件包,运行程序,也是要先运行source ./venv/bin/activate激活虚拟环境。
windows操作系统pycharm端操作
1.新建项目,选择合适的存放位置,给项目取名,建议和服务器端保持一致,默认创建新的虚拟环境。
![2592184d625f4ec13410bdc69d582a6b.png](https://i-blog.csdnimg.cn/blog_migrate/ebbea40ba490dbad96f4a82be1b5b7e8.png)
2.Tools > Deployment > Configuration
![94bd4508e2d63c0644991ecc43d241d1.png](https://i-blog.csdnimg.cn/blog_migrate/f846598a7cde12eb6f6da17ce68abf1c.png)
3.新建一个SFTP
服务器,名字建议和工程名字保持一致:下图省略步骤3,输入SFTP服务器名字的弹出对话框。最重要的是第7步,root path设置为server端工程文件路径。
![71c9202f78f4daff13dca0332c0e43c5.png](https://i-blog.csdnimg.cn/blog_migrate/047b817af3684000b0e062f729ee4386.jpeg)
4.继续配置SFTP服务器的Mapping 选项卡。local path填写windows本地端python工程文件夹路径。Deployment path填写 /,表示上一步填写的root path的根目录。
![4905b4d6f4eb8130bec9387692692bff.png](https://i-blog.csdnimg.cn/blog_migrate/0b4378bf19832ab7c739cf703731adb4.jpeg)
5.继续配置SFTP服务器的excluded paths。表示server 端和windows端不同步的文件夹。我一般会把两边的虚拟环境文件夹不同步,因为两边硬件不一样,安装的包版本等不一样,同步容易造成混乱。也可以根据情况自行添加其他不想同步的文件夹,比如data等。
![6d84be74bf48c748489471a11f8f4fdb.png](https://i-blog.csdnimg.cn/blog_migrate/50d2ae5166456fbd27ac68eefd37c27b.png)
![91b1dc75c58905cec2c304d4b608237d.png](https://i-blog.csdnimg.cn/blog_migrate/0c5cfbf01345cd1b091a67b36c1cc51e.png)
6.点击OK。完成SFTP服务器的配置。
7.Tools > Deployment > Browse Romote Host 可以在pycharm的右边显示远程工程文件夹
![f1a916c679f9812a002bbe3772a9ae09.png](https://i-blog.csdnimg.cn/blog_migrate/3abc96fe30bbd5c13f5236415d6a339c.jpeg)
选中远程端文件,右键,点击Download from here可以将远程文件下载到本地。同理,右键本地文件点击,Deployment -> upload to可以上传到已经配置好的SFTP服务器。
![8abbc5331243bf0741f7280913d554c3.png](https://i-blog.csdnimg.cn/blog_migrate/aa9573a92b08d67a7f13c710f7437132.jpeg)
8.pycharm 将本地python工程的解释器interpreter配置为server端的远程interpreter
8.1 pycharm->file->setting->Project Interpreter 点击图中步骤3所示位置的图标->点击add (新建interpreter)
![7790c0c430ab038331fca68cd16d6f9b.png](https://i-blog.csdnimg.cn/blog_migrate/7f564e400d7af59df19962a6233234ed.jpeg)
8.2 选择SSH Interpreter,填写相关内容,next
![703ce7053c5f198da782f22c643359a7.png](https://i-blog.csdnimg.cn/blog_migrate/c70facfa106a18d9c40566aecf5edbdf.png)
8.3输入密码,next
![fa0e9dd0febac78c903b9e922365efe0.png](https://i-blog.csdnimg.cn/blog_migrate/d366b7a0fbccbdf89a27f8b0e7ba0d10.png)
8.4 这一步最重要!
1.填写远程interpreter的路径。是在server端配置的最后一步用which python命令查看到的路径。2.配置远程端和本地端同步文件夹,3、4即两边的工程文件夹。5.是否自动将本地文件上传到server端。可以不选,每次手动右键->deployment ->upload to 6.finish
![23595fefe46c987225336b4bad6eef0c.png](https://i-blog.csdnimg.cn/blog_migrate/8c56b6799d1d22bfe501ff4eba1bdafd.jpeg)
配置成功之后可以发现python console已经是远程interpreter了。
![6d0f7a4a1a64a0f09f6fb7a1b57dc500.png](https://i-blog.csdnimg.cn/blog_migrate/9c846c4f44aa5b3466724c5a7f2af4cb.jpeg)
9.通过pycharm ssh连接远程server 的terminal: tool->Start SSH session->选择一个配置好的SFTP服务器即可。
![9f9df21f83975310a4a468fc03b30c54.png](https://i-blog.csdnimg.cn/blog_migrate/aa62947a85de4869e5da40a753301d3c.jpeg)
![3b06fcf2975fd89f4a3175fc5d26dd02.png](https://i-blog.csdnimg.cn/blog_migrate/6b8e415827b2bb486491d5df55b6a547.png)
完结,撒花!
参考链接:
https://scientificrat.com/2018/04/12/pycharm%E8%AE%BE%E7%BD%AE%E8%BF%9C%E7%A8%8Binterpreter/