實用的Python(3)超簡單!基於Python搭建個人“雲盤”
阿新 • • 發佈:2020-03-04
# 1 簡介
當我們想要從本地向雲伺服器上傳檔案時,比較常用的有`pscp`等工具,但避免不了每次上傳都要寫若干重複的程式碼,而筆者最近發現的一個基於`Python`的工具`updog`,可以幫助我們在伺服器上搭建類似雲盤的服務,使得我們可以在web介面中完成檔案的上傳與下載,十分的方便,最重要的是,**特別特別特別簡單!**下面就帶大家學習一下`updog`的具體使用方法。
# 2 使用updog
筆者習慣使用`putty`來連線雲伺服器,如圖1(IP地址等資訊已打碼),我們登入後進入頁面:
圖1
因為`updog`是`Python`的一個第三方包,接下來我們直接使用`pip3 install updog`來安裝`updog`,在安裝前請確保伺服器已安裝`Python 3.X`版本:
圖2
接著我們就可以直接使用`updog`來開啟服務,按照如下格式傳參啟動服務:
```bash
updog -d DIRECTORY -p PORT --password PASSWORD
```
其中引數`d`表示服務開啟的根目錄,即在服務開啟後訪問服務無法檢視此目錄同級別或以上的目錄,預設為當前目錄;引數`p`表示服務開啟的埠,預設9090;引數`password`表示密碼,使用**HTTP basic authentication**來進行密碼保護,無使用者名稱,預設無密碼,即直接可以訪問,當然這種不建議,譬如下面我們先切換到根目錄,然後建立名為`updog`的資料夾,並在這個資料夾內開啟`updog`服務:
```bash
cd /
mkdir updog
cd updog
updog -p 666 --password UPDOG
```
圖3
這樣我們就在我們的雲伺服器上開啟了`updog`服務,通過`ip地址:666`來訪問服務:
圖4
可以看到這時提示我們輸入密碼,我們不填使用者名稱,輸入密碼`UPDOG`進入服務:
圖5
可以看到在這個頁面中我們可以可以隨意上傳和下載檔案(但不可以修改檔案,必須在伺服器操作),但這時有一個問題當我們關閉`putty`後,剛才開啟的`updog`服務隨即停止,遂無法正常訪問,這時我們只需要將開啟服務的命令修改為:
```bash
nohup updog -p 666 --password UPDOG &
```
這時我們的服務便在後臺掛起,不會隨著`putty`的關閉而停止:
圖6
並且一臺伺服器可以開啟多個不同配置的`updog`服務,非常方便,而如果想要關閉之前在後臺掛起的服務,可以先通過`fuser -v -n tcp 埠號`來查詢對應的程式ID,然後使用`kill -s 9 程式ID`來關閉指定服務:
圖7
以上就是本文全部內容,如有筆誤之處望