我們在管理服務器或vps的時候,經常要上傳和下載數據。比如當我們需要把數據從一個服務器搬到另一個服務器的時候,通常是從第一個服務器下載數據 到我們電腦,再到ftp工具上傳下載好的數據到遠程服務器。但這樣即浪費時間,又浪費精力。我們何不先在第一臺服務器打包好,就直接傳輸數據到另一臺服務 器呢?而Linux scp命令則剛好能實現兩臺服務器之間傳輸數據的作用。
什麼是scp
scp就是secure copy,是用來進行遠程文件拷貝的。數據傳輸使用 ssh,並且和ssh 使用相同的認證方式,提供相同的安全保證 。 與rcp 不同的是,scp 在需要進行驗證時會要求你輸入密碼或口令。
scp的用法
從 本地 複製到 遠程
命令基本格式:
scp [可選參數] 本地文件名 遠程用戶名@遠程地址:遠程文件或目錄
複製文件例子:
- scp /home/backup.zip [email protected]:/home/others/backup
- scp /home/backup.zip [email protected]:/home/others/otherbackup.zip
第一個是本地文件backup.zip發送到遠程backup目錄下。
第二個是本地文件backup.zip發送到遠程otherbackup.zip文件。
複製目錄例子:
- scp -r /home/backup [email protected]:/home/others/
複製本地目錄backup到遠程目錄others
從 遠程 複製到 本地
命令基本格式:
scp [可選參數] 遠程用戶名@遠程地址:遠程文件或目錄 本地文件名
例子:
- scp [email protected]:/home/others/bakcup.zip /home/newbackup.zip
- scp -r [email protected]:/home/backup /home/other/
第一個是下載遠程文件backup.zip到本地文件newbackup.zip。
第二個是下載遠程目錄bakcup到本地目錄other。
scp可選參數:
-v:和大多數 linux 命令中的 -v 意思一樣 , 用來顯示進度 . 可以用來查看連接 , 認證 , 或是配置錯誤 .
-C:使能壓縮選項
-P:選擇端口 . 注意 -p 已經被 rcp 使用 .
-4:強行使用 IPV4 地址 .
-6:強行使用 IPV6 地址 .