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实现递归遍历文件夹并删除文件
Apr 18 Python
Python实现的随机森林算法与简单总结
Jan 30 Python
PyQt5每天必学之日历控件QCalendarWidget
Apr 19 Python
Vue的el-scrollbar实现自定义滚动
May 29 Python
PyQt5 在label显示的图片中绘制矩形的方法
Jun 17 Python
PyQt4编程之让状态栏显示信息的方法
Jun 18 Python
简单了解python单例模式的几种写法
Jul 01 Python
Django 框架模型操作入门教程
Nov 05 Python
tensorflow模型保存、加载之变量重命名实例
Jan 21 Python
Python yield生成器和return对比代码实例
Apr 20 Python
Python语言中的数据类型-序列
Feb 24 Python
Python中Matplotlib的点、线形状、颜色以及绘制散点图
Apr 07 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 curl CURLOPT_RETURNTRANSFER参数的作用使用实例
2015/02/07 PHP
PHP json_encode() 函数详解及中文乱码问题
2015/11/05 PHP
PHP表单数据写入MySQL数据库的代码
2016/05/31 PHP
PHP实现二维数组按某列进行排序的方法
2016/11/18 PHP
测试JavaScript字符串处理性能的代码
2009/12/07 Javascript
js获取ajax返回值代码
2014/04/30 Javascript
AngularJS入门教程之Hello World!
2014/12/06 Javascript
JavaScript创建一个object对象并操作对象属性的用法
2015/03/23 Javascript
JavaScript+html5 canvas制作的百花齐放效果完整实例
2016/01/26 Javascript
jQuery UI结合Ajax创建可定制的Web界面
2016/06/22 Javascript
jQuery layui常用方法介绍
2016/07/25 Javascript
jq checkbox 的全选并ajax传参的实例
2017/04/01 Javascript
vue 2.0路由之路由嵌套示例详解
2017/05/08 Javascript
Angular4学习笔记之准备和环境搭建项目
2017/08/01 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
2019/10/31 Javascript
Vue 自适应高度表格的实现方法
2020/05/13 Javascript
Python中使用PyHook监听鼠标和键盘事件实例
2014/07/18 Python
python获取一组数据里最大值max函数用法实例
2015/05/26 Python
给Python入门者的一些编程建议
2015/06/15 Python
Django的session中对于用户验证的支持
2015/07/23 Python
Django中对通过测试的用户进行限制访问的方法
2015/07/23 Python
Python实现基于多线程、多用户的FTP服务器与客户端功能完整实例
2017/08/18 Python
利用Python-iGraph如何绘制贴吧/微博的好友关系图详解
2017/11/02 Python
在Python中获取两数相除的商和余数方法
2018/11/10 Python
学习Python爬虫的几点建议
2020/08/05 Python
python asyncio 协程库的使用
2021/01/21 Python
什么是TCP/IP
2014/07/27 面试题
社区八一活动方案
2014/02/03 职场文书
预备党员政审材料
2014/02/04 职场文书
幼儿园小班评语大全
2014/04/17 职场文书
大学社团招新的通讯稿
2014/09/10 职场文书
党员个人查摆剖析材料
2014/10/16 职场文书
优秀少先队员事迹材料
2014/12/24 职场文书
公司奖励通知
2015/04/21 职场文书
青年志愿者服务活动总结
2015/05/06 职场文书
Django框架模板用法详解
2022/06/10 Python