Pycharm配置ssh实现在linux server(ubuntu 16.04)上调试和开发(二)
在上一篇文章中,我们通过ssh连接Linux server上的python interpreter,实现了本地(win 10环境)Pycharm远程调试Linux环境下python代码的目的1 。最近在玩阿里云Oss的时候发现,发现还有另一种方法可以实现上述目的。尽管实现顺序不同,但两种方法本质上都是通过SFTP+远程pyhton interpreter实现的。
下面介绍第二种方法
1. 配置SFTP
SFTP,即安全文件传输协议( Secure File Transfer Protocol ),利用ssh连接安全的传输文件、遍历本地和远程服务器上的文件系统。在Pycharm上,打开Tools | Deployment | Configuration…,在Deployment中点击左边的“+”添加一个SFTP部署配置,输入名字[email protected]
接着在Connection标签页中设置Host,User name(root or other users,e.g lollows),Passsword,点击Test Connection测试连接是否有效。
Root path是文件上传的根目录,可以使用Autodect自动填写。建议不要勾选Visible onlyfor this project
在Mappings标签页填写Local Path(本地工程目录,就是需要将这个目录下的文件夹同步到服务器上面),Deployment path(相对于Connection标签页下的root path,就是将同步本地文件夹到这个目录下),Web path不填。 对于不想同步文件夹,需要在“Excluded path”标签页内添加。
2. 上传和下载文件
选择 Tools | Deployment |Browse Remote Host,可查看linux server上的文件夹目录。选中要上传的目录,选择 Tools | Deployment | Upload to [email protected]即可上传。下载同样的道理
3.配置ssh Interpreter
选择本地Project | Setting(CTRL + ALT + S)–>>选择Project Interpreter | Add…
注意:上一篇文章中我们直接在配置ssh Interpreter时选用New server configuration,这会新建一个SFTP配置。不同于上一篇文章,由于前面我们已经配置好了SFTP,故在这里选用Existing server configuration。
如果前面配置SFTP时勾选了Visible onlyfor this project,这一步会提示如下:大体意思是说Remote SDK需要deployment server保存在IDE settings中,需要我们选择
1.create copy of this deployment server in IDE settings
2.Move this server ti IDE settings。
选1的话,仅deploment server的副本对所有工程可见,选2的话deploment server对所有工程可见。为了方便,我们选择2,这相当于去掉了勾选Visible onlyfor this project
下面配置interpreter为/home/lollows/anaconda3/bin/python3.7,这里也可以使用conda管理的虚拟环境。
选择Execute code using this interpreter with root privilege via sudo,
设置Sync folders–>>/code 注意:配置SFTP时已经设置Root path=/home/lollows
注意修改源码或者添加新文件后,要等Pycharm将其自动同步到服务器再继续下一次的调试,等待时间长短受网络和文件大小影响。
-
由于某种原因,程序代码必须正式运行在linux服务器上 ↩︎