如何在 Linux 中使用 sFTP 上傳或下載文件與文件夾
sFTP(安全文件傳輸程序)是一種安全的交互式文件傳輸程序,其工作方式與 FTP(文件傳輸協議)類似。 然而,sFTP 比 FTP 更安全;它通過加密 SSH 傳輸處理所有操作。
它可以配置使用幾個有用的 SSH 功能,如公鑰認證和壓縮。 它連接並登錄到指定的遠程機器,然後切換到交互式命令模式,在該模式下用戶可以執行各種命令。
在本文中,我們將向你展示如何使用 sFTP 上傳/下載整個目錄(包括其子目錄和子文件)。
如何在 Linux 中使用 sFTP 傳輸文件/文件夾
默認情況下,SFTP 協議采用和 SSH 傳輸協議一樣的方式建立到遠程服務器的安全連接。雖然,用戶驗證使用類似於 SSH 默認設置的密碼方式,但是,建議創建和使用 SSH 無密碼登錄,以簡化和更安全地連接到遠程主機。
要連接到遠程 sftp 服務器,如下建立一個安全 SSH 連接並創建 SFTP 會話:
$ sftp tecmint@192.168.56.10
登錄到遠程主機後,你可以如下運行交互式的 sFTP 命令:
sftp> ls #list directory
sftp> pwd #print working directory on remote host
sftp> lpwd #print working directory on local host
sftp> mkdir uploads #create a new directory
Run sFTP Commands on Remote Linux
- Linux 主機上運行 sFTP 命令*
如何使用 sFTP 上傳文件夾
要將整個目錄上傳到遠程 Linux 主機中,請使用 put
命令。但是,如果目錄名稱不存在於遠程主機上的工作目錄中,你將收到錯誤,如下麵的屏幕截圖所示。
因此,首先在遠程主機上創建一個具有相同名稱的目錄,然後從本地主機上傳它,-r
參數允許拷貝子目錄和子文件:
sftp> put -r Tecmint.com-articles
sftp> mkdir Tecmint.com-articles
sftp> put -r Tecmint.com-articles
使用 sFTP 上傳文件夾
要保留修改時間、訪問時間以及被傳輸的文件的模式,請使用 -p
標誌。
sftp> put -pr Tecmint.com-articles
如何使用 sFTP 下載文件夾
要從遠程 Linux 主機下載整個 fstools-0.0 文件夾到本機中,如下所示使用 get 命令帶上 -r
標誌:
sftp> get -r fstools-0.0
使用 sFTP 下載目錄
如果文件夾已經下載完成了,接著查看本機的工作目錄。
要退出 sFTP shell,輸入:
sftp> bye
或者
sftp> exit
此外,閱讀這篇 sFTP 命令和使用技巧。
請注意,為了防止用戶訪問遠程主機上的整個文件係統,出於安全原因,你可以使用 chroot Jail 將 sFTP 用戶限製到其主目錄中。
原文發布時間為:2017-03-01
本文來自雲棲社區合作夥伴“Linux中國”
最後更新:2017-05-25 17:02:06