1. 程式人生 > 實用技巧 >超簡單!基於Python搭建個人“雲盤”

超簡單!基於Python搭建個人“雲盤”

主題Python

1. 簡介

當我們想要從本地向雲伺服器上傳檔案時,比較常用的有pscp等工具,但避免不了每次上傳都要寫若干重複的程式碼,而筆者最近發現的一個基於Python的工具updog,可以幫助我們在伺服器上搭建類似雲盤的服務,使得我們可以在web介面中完成檔案的上傳與下載,十分的方便,最重要的是,特別特別特別簡單!下面就帶大家學習一下updog的具體使用方法。

2. 使用updog

筆者習慣使用putty來連線雲伺服器,如圖1(IP地址等資訊已打碼),我們登入後進入頁面:

圖1​

因為updog是Python的一個第三方包,接下來我們直接使用pip3 install updog來安裝updog,在安裝前請確保伺服器已安裝Python 3.X版本:

圖2​

接著我們就可以直接使用updog來開啟服務,按照如下格式傳參啟動服務:

updog-dDIRECTORY-pPORT--passwordPASSWORD

其中引數d表示服務開啟的根目錄,即在服務開啟後訪問服務無法檢視此目錄同級別或以上的目錄,預設為當前目錄;引數p表示服務開啟的埠,預設9090;引數password表示密碼,使用HTTP basic authentication來進行密碼保護,無使用者名稱,預設無密碼,即直接可以訪問,當然這種不建議,譬如下面我們先切換到根目錄,然後建立名為updog的資料夾,並在這個資料夾內開啟updog服務:

cd/
mkdirupdog
cdupdog
updog-p666--passwordUPDOG

圖3​

這樣我們就在我們的雲伺服器上開啟了updog服務,通過ip地址:666來訪問服務:

圖4​

可以看到這時提示我們輸入密碼,我們不填使用者名稱,輸入密碼UPDOG進入服務:

圖5​

可以看到在這個頁面中我們可以可以隨意上傳和下載檔案(但不可以修改檔案,必須在伺服器操作),但這時有一個問題當我們關閉putty後,剛才開啟的updog服務隨即停止,遂無法正常訪問,這時我們只需要將開啟服務的命令修改為:

nohupupdog-p666--passwordUPDOG&

這時我們的服務便在後臺掛起,不會隨著putty的關閉而停止:

圖6​

並且一臺伺服器可以開啟多個不同配置的updog服務,非常方便,而如果想要關閉之前在後臺掛起的服務,可以先通過fuser -v -n tcp 埠號來查詢對應的程式ID,然後使用kill -s 9 程式ID來關閉指定服務:

原始碼獲取加群:1136192749