Linux:使用 SCP 安全傳輸檔案和目錄

2021/10/06 701 2 作業系統 , 伺服器 , Linux

若常使用 Linux 作業系統的人,應該會常常需要使用 scp 指令來傳輸檔案和目錄,這個指令全稱「Secure Copy」,即「安全複製」的意思,它是命令列上頭相當常用的程式,使用 SSH 安全加密傳輸的方式(請記得確認遠端伺服器有啟用 SSH,才可以使用 SCP 喔!),可將本地端的資料複製(上傳)到遠端,也能將將遠端的資料複製(下載)到本地端,甚至能將遠端的資料複製(傳輸)到另一台遠端伺服器上頭,簡單來說就是兩台機器間的檔案傳輸都可以用上它,非常方便。

指令:scp [options] user@src_server:src_file user@dest_server:dest_file

說明

[options] 是 scp 支援的選項,以下列出幾個:

  • -B 批次模式(可防止索取密碼或通行碼)
  • -C 壓縮模式(傳輸檔案時啟用壓縮,可節省傳輸量)
  • -c 用於加密數據傳輸的密碼
  • -i 使用公開金鑰認證(私鑰檔)登入伺服器
  • -l 使用 Kbit/s 單位指令頻寬限制
  • -P 指定遠端的 SSH 傳輸埠(預設傳輸埠為 22)
  • -p 保留檔案修改時間與權限
  • -r 連同所含子目錄之複製,否則將只傳輸該目錄底下的檔案(遞迴複製檔案)
  • -v 顯示傳輸進度與相關資訊(本地複製無法顯示進度)
  • -4 強制使用 IPv4 來傳輸
  • -6 強制使用 IPv6 來傳輸

user@src_server:src_file 即來源使用者帳號、伺服器位址及檔案或目錄的完整路徑,舉例:root@192.168.1.105:test.txt
user@dest_server:dest_file 即目的地使用者帳號、伺服器位址及檔案或目錄的完整路徑,若是本地,可忽略使用者帳號、伺服器位置,舉例:C:\Users\user\Desktop\,這樣就代表要將檔案傳輸至本機 Windows 作業系統的桌面上。

若用公開金鑰認證(私鑰檔)登入伺服器,就可以不用輸入密碼進行傳輸,更加方便!舉例:scp -i C:\Users\user\Desktop\key\key root@192.168.1.105:test.txt C:\Users\user\Desktop\test,指令詳細解釋是用指定路徑中的私鑰檔來登入 192.168.1.105 的 root 帳號,接著將 test.txt 檔案傳輸至本機的 C:\Users\user\Desktop\test,即桌面下的 test 目錄。

若要限速傳輸,可以在 [options] 中加入 -l 500,即限速為 500 Kbit/s。其他選項也是一樣的做法喔!

附上 scp 傳輸 test.txt 時留下的預設資訊:test.txt 100% 5 0.1KB/s 00:00


▲ 本文精選圖片。

[完]

贊助廣告 ‧ Sponsor advertisements

留言區 / Comments

萌芽論壇