PyCharm如何配置SSH和SFTP連接遠程服務器

簡介

  • SSH,Secure Shell,安全外殼協議,用於遠程登錄會話
  • SFTP,Secret File Transfer Protocol,安全文件傳送協議,用於同步文件

Windows 連接遠程服務器進行 Linux 環境下的 Python 開發需要結合 SSH 和SFTP

安裝

安裝 PyCharm Professional

PyCharm Community 沒有該選項,無法配置 SSH Interpreter

登陸遠程服務器

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便可使用

Tools → Deployment → Configuration…

+ → SFTP → New server name 隨意填(如 user@host:port) → 取消勾選 Visible only for this project → SSH configuration → + → 根據 SSH 信息對應填上 → Test Connection

SFTP 這裡 Test Connection → Autodetect

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

配置 Python 解釋器和同步文件夾,是否用 sudo 權限看情況勾選

初試

main.py

print(__file__)

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

快捷鍵:Ctrl + Alt + Shift + X

遇到的坑

1. EOF while reading packet

需要啟動 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

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持LevelAH。

推薦閱讀: