PyCharm 配置SSH和SFTP连接远程服务器


Posted in Python onMay 11, 2022

简介

  • SSH,Secure Shell,安全外壳协议,用于远程登录会话
  • SFTP,Secret File Transfer Protocol,安全文件传送协议,用于同步文件

Windows 连接远程服务器进行 Linux 环境下的 Python 开发需要结合 SSH 和SFTP

安装

安装 PyCharm Professional

PyCharm Community 没有该选项,无法配置 SSH Interpreter

PyCharm 配置SSH和SFTP连接远程服务器

登陆远程服务器

ssh user@host [-p port]

查看是否开启 SSH 服务

service sshd status

如果显示 Loaded: not-found (Reason: No such file or directory) 或 sshd: unrecognized service,则需要安装

sudo apt-get install openssh-server

如果显示 Active: inactive (dead),则需要启动

sudo /etc/init.d/ssh restart

只要 SSHD 服务启动了,SFTP便可使用

PyCharm 配置SSH和SFTP连接远程服务器

Tools → Deployment → Configuration…

PyCharm 配置SSH和SFTP连接远程服务器

+ → SFTP → New server name 随意填(如 user@host:port) → 取消勾选 Visible only for this project → SSH configuration → + → 根据 SSH 信息对应填上 → Test Connection

PyCharm 配置SSH和SFTP连接远程服务器

SFTP 这里 Test Connection → Autodetect

PyCharm 配置SSH和SFTP连接远程服务器

File → Settings → Project: xxx → Python Interpreter → 设置 → Add… → SSH Interpreter → Existing server configuration

PyCharm 配置SSH和SFTP连接远程服务器

配置 Python 解释器和同步文件夹,是否用 sudo 权限看情况勾选

PyCharm 配置SSH和SFTP连接远程服务器

初试

main.py

print(__file__)

PyCharm 配置SSH和SFTP连接远程服务器

可能需要手动同步:Tools → Deployment → Upload to…

快捷键:Ctrl + Alt + Shift + X

遇到的坑

1. EOF while reading packet

PyCharm 配置SSH和SFTP连接远程服务器

需要启动 SSHD 服务

2. sudo: unable to resolve host xxx: No such file or directory

sudo vim /etc/hosts

添加

127.0.0.1       localhost xxx

3. vim /etc/hosts 报错 “/etc/hosts” E166: Can’t open linked file for writing

查看真实路径

readlink /etc/hosts

或者把文件删了

4. Can’t get remote credentials for deployment server xxx@xxx:xx password

没填 sudo 的密码,可以重新配,直接 SSH Interpreter → New server configuration


Tags in this post...

Python 相关文章推荐
python生成日历实例解析
Aug 21 Python
python3实现暴力穷举博客园密码
Jun 19 Python
Python科学计算之NumPy入门教程
Jan 15 Python
Python探索之爬取电商售卖信息代码示例
Oct 27 Python
django js实现部分页面刷新的示例代码
May 28 Python
django DRF图片路径问题的解决方法
Sep 10 Python
python实现石头剪刀布小游戏
Jan 20 Python
Python利用itchat库向好友或者公众号发消息的实例
Feb 21 Python
python中matplotlib实现随鼠标滑动自动标注代码
Apr 23 Python
解决pytorch 损失函数中输入输出不匹配的问题
Jun 05 Python
OpenCV-Python实现怀旧滤镜与连环画滤镜
Jun 09 Python
Python答题卡识别并给出分数的实现代码
Jun 22 Python
Python 文字识别
May 11 #Python
解决Python保存文件名太长OSError: [Errno 36] File name too long
May 11 #Python
Python 匹配文本并在其上一行追加文本
May 11 #Python
Python 一键获取电脑浏览器的账号密码
May 11 #Python
图神经网络GNN算法
May 11 #Python
python神经网络ResNet50模型
May 06 #Python
python和anaconda的区别
May 06 #Python
You might like
PHP查询MySQL大量数据的时候内存占用分析
2011/07/22 PHP
php中的PHP_EOL换行符详细解析
2013/10/26 PHP
PHP中file_exists()判断中文文件名无效的解决方法
2014/11/12 PHP
php中debug_backtrace、debug_print_backtrace和匿名函数用法实例
2014/12/01 PHP
PHP url的pathinfo模式加载不同控制器的简单实现
2016/08/12 PHP
JavaScript执行顺序详细介绍
2013/12/04 Javascript
javascript从image转换为base64位编码的String
2014/07/29 Javascript
Angular 页面跳转时传参问题
2016/08/01 Javascript
简单理解Vue条件渲染
2016/12/03 Javascript
JS中闭包的经典用法小结(2则示例)
2016/12/28 Javascript
详解能在多种前端框架下使用的表格控件
2017/01/11 Javascript
浅谈javascript的闭包
2017/01/23 Javascript
npm国内镜像 安装失败的几种解决方案
2017/06/04 Javascript
VUE实现表单元素双向绑定(总结)
2017/08/08 Javascript
jQuery选择器之表单元素选择器详解
2017/09/19 jQuery
解决vue页面刷新或者后退参数丢失的问题
2018/03/13 Javascript
原生javascript的ajax请求及后台PHP响应操作示例
2020/02/24 Javascript
Javascript数组及类数组相关原理详解
2020/10/29 Javascript
python使用urllib模块开发的多线程豆瓣小站mp3下载器
2014/01/16 Python
Python变量作用范围实例分析
2015/07/07 Python
python魔法方法-自定义序列详解
2016/07/21 Python
python的re正则表达式实例代码
2018/01/24 Python
python利用高阶函数实现剪枝函数
2018/03/20 Python
用pycharm开发django项目示例代码
2018/10/24 Python
对Python3使运行暂停的方法详解
2019/02/18 Python
Python列表切片操作实例总结
2019/02/19 Python
python opencv minAreaRect 生成最小外接矩形的方法
2019/07/01 Python
使用python socket分发大文件的实现方法
2019/07/08 Python
基于Python新建用户并产生随机密码过程解析
2019/10/08 Python
css3 图片圆形显示 如何CSS将正方形图片显示为圆形图片布局
2014/10/10 HTML / CSS
css3加js做一个简单的3D行星运转效果实例代码
2017/01/18 HTML / CSS
全球领先的鞋类零售商:The Walking Company
2016/07/21 全球购物
美国汽车轮胎和轮毂销售网站:Tire Rack
2018/01/11 全球购物
公司财务自我评价分享
2013/12/17 职场文书
优秀团队申报材料
2014/12/26 职场文书
2019大学竞选班长发言稿
2019/06/27 职场文书