linux 之间 copy 传输文件方法:ftp、samba、sftp、scp、sz/rz
?
不同的 Linux 之間 copy 文件通常有4種方法
- 1.ftp
- 2.samba服務
- 3.sftp
- 4.scp
前三種方法都比較繁瑣,最簡單的方法就是 scp
?
?
scp
scp 本地用戶名@IP地址:文件名1 遠程用戶名@IP地址:文件名2
[本地用戶名@IP地址:] 可以不輸入,可能需要輸入遠程用戶名所對應的密碼.可能有用的幾個參數:-v 和大多數linux命令中的-v意思一樣,用來顯示進度.可以用來查看連接,認證,或是配置錯誤.-C 使能壓縮選項.-P 選擇端口.注意-p已經被rcp使用.-4 強行使用IPV4地址.-6 強行使用IPV6地址.拷貝單個文件命令:scp file username@ip:filepath說明:file: 要拷貝的文件名username: 遠程登錄的用戶名,ip:遠程服務器ipfilepath:遠程文件路徑拷貝文件夾命令如下(多加上一個-r 參數即可):scp -r file username@ip:filepathscp 就是 secure copy, 是用來進行遠程文件拷貝的。
數據傳輸使用 ssh1, 并且和 ssh1 使用相同的認證方式 , 提供相同的安全保證。
scp 與 rcp 不同的是:scp 會要求你輸入密碼如果需要的話 。
scp 命令是 SSH 中最方便有用的命令了,在兩臺服務器之間直接傳送文件,僅僅用 scp 一個命令就完全解決了。?
你可以在一臺服務器上 以 root 身份運行?
#scp servername:/home/ftp/pub/file1 .? 這樣就把另一臺服務器上的文件 /home/ftp/pub/file1 直接傳到本機器的當前目錄下
#scp /tmp/file2 servername:/boot? 把本機上的文件 /tmp/file2 送到另一臺機器的 /boot 目錄下。傳送過程用 SSH 加密。
把當前一個文件 copy 到遠程服務器上:?
? ? #scp /home/a.txt root@192.168.0.8:/home/root
? ? 然后會提示輸入192.168.0.8的root密碼,接著就開始復制傳輸了。
把遠程主機 copy 到當前主機的當前目錄下:?
? ? #scp root@192.168.0.8:/home/b.txt .?
復制文件夾: scp -r root@192.168.0.8:/home/ /root/home2
?
pscp
Windows <<------>> Linux ? Windows 和 Linux 相互 copy
1.使用FTP工具
2.使用pscp
PSCP(PuTTY Secure Copy client)是PuTTY提供的文件傳輸工具,通過SSH連接,在兩臺機器之間安全的傳輸文件,可以用于任何SSH(包括SSHv1、SSHv2)服務器
1、下載:
可以從 http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html 下載pscp,并將其放入windows的system32 文件夾下,這樣在dos命令窗口中就能直接調用使用了。如果system32下沒有,則只能cmd進入pscp所在文件夾,然后在pscp所在文件夾進行操作。
2、使用
(一)Windows —> Linux上傳文件:
1)、開始→運行→cmd進入到dos模式,輸入以下命令:
pscp f:\new.txt admin@10.10.10.10:/home
2)、回車后,提示輸入密碼,輸入Linux服務器上該用戶的登錄密碼后,文件會上傳到Linux服務器的/home目錄下。
具體操作如下:
C:\Documents and Settings\Administrator>pscp f:\new.txt admin@10.10.10.10:/home
admin@10.10.10.10's password:
new.txt ? ? ? ? ? ? ? ? ? | 0 kB | ? 0.0 kB/s | ETA: 00:00:00 | 100%
C:\Documents and Settings\Administrator>
(二)Linux —> Windows下載文件:
1)、開始→運行→cmd進入到dos模式,輸入以下命令:
pscp admin@10.10.10.10:/home/new.txt f:\new_copy.txt
2)、回車后,提示輸入密碼,輸入密碼后文件將上傳到目標機器的/home/hollyfee目錄下。
其中:admin為linux的用戶名,10.10.10.10為遠程Linux主機ip地址,/home/new.txt為linux下的文件,f:\new_copy.txt為保存在本地的文件。
具體操作如下:
C:\Documents and Settings\Administrator>pscp admin@10.10.10.10:/home/new.txt f:\new_copy.txt
hollyfee@130.75.7.156's password:
new_copy.txt ? ? ? ? ? ? ?| 0 kB | ? 0.0 kB/s | ETA: 00:00:00 | 100%
C:\Documents and Settings\Administrator>
?
5.使用 psftp (psftp是putty的組成部分,可以用于本地文件和遠程文件的傳輸控制)
1. 建立遠程連接
? ? psftp
? ? open hostname
? ? openusername@hostname
2. 操作遠程服務器
?? ?pwd?: 查看當前所在目錄
?? ?cd +路徑:進入某個目錄
?? ?ls :列出當前目錄下的文件
?? ?dir:列出當前目錄下的文件
?? ?rm +文件名:刪除文件
?? ?del+文件名:刪除文件
?? ?put+本地文件:上傳本地文件到遠程服務器
?? ?get+遠程文件:下載遠程文件到本地機器
3. 操作本地文件
?? ?lpwd:查看本地機器當前所在目錄
?? ?lcd+路徑:更改本地機器的當前目錄
??? !dir:列出本地機器當前目錄的文件(感嘆號!表示執行本地命令)
4. 關閉連接
?? ?close:關閉連接,不退出psftp
?? ?quit:關閉連接而且退出psftp
?? ?exit:關閉連接而且退出psftp
?
?
rz 和 sz
?
xshell 有 xftp 可以實現圖形化的 相互傳遞文件。SecureCRT 可以 在服務器安裝 rz 和 sz 來實現相互傳遞文件
xshell 百度云下載:https://pan.baidu.com/s/12NvmlHiDowNXkG0_M4jdBg#list/path=/
?FileZilla Client ( ftp 客戶端) :?https://filezilla-project.org/download.php?type=client
在 linux 中 rz 和 sz 命令允許開發者與主機通過串口進行傳遞文件了。
下面我們就來簡單的介紹一下rz 和 sz 命令的例子。
sz:將選定的文件發送(send)到本地機器?
rz:運行該命令會彈出一個文件選擇窗口,從本地選擇文件上傳到 Linux 服務器
安裝命令:?yum install lrzsz
- 從服務端發送文件到客戶端:?sz filename?
- 從客戶端上傳文件到服務端:?rz 。在彈出的框中選擇文件,上傳文件的用戶和組是當前登錄的用戶
?
?
?
總結
以上是生活随笔為你收集整理的linux 之间 copy 传输文件方法:ftp、samba、sftp、scp、sz/rz的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小甲鱼 OllyDbg 教程系列 (十一
- 下一篇: 浅谈 Windows API 编程