两台Linux服务器之间传输文件的四种方式
在日常服务器租用中,有时须要将文件从一台服务器传到另一台服务器,下边给你们介绍四种linux服务器之间传输文件形式。
1.scp
【优点】简单便捷linux关机命令,安全可靠;支持限速参数
【缺点】不支持排除目录
【用法】
scp就是securecopylinux使用ftp传输文件,是拿来进行远程文件拷贝的。数据传输使用ssh,而且和ssh使用相同的认证形式,提供相同的安全保证。
命令格式:
scp[参数]::
举例:
scp/home/work/source.txtwork@192.168.0.10:/home/work/#把本地的source.txt文件拷贝到192.168.0.10机器上的/home/work目录下
scpwork@192.168.0.10:/home/work/source.txt/home/work/#把192.168.0.10机器上的source.txt文件拷贝到本地的/home/work目录下
scpwork@192.168.0.10:/home/work/source.txtwork@192.168.0.11:/home/work/#把192.168.0.10机器上的source.txt文件拷贝到192.168.0.11机器的/home/work目录下
scp-r/home/work/sourcedirwork@192.168.0.10:/home/work/#拷贝文件夹,加-r参数
scp-r/home/work/sourcedirwork@:/home/work/#使用主机名
scp-r-v/home/work/sourcedirwork@:/home/work/#显示详情,加-v参数
2.rcp
【概述】
目标主机须要事先打开rcp功能linux使用ftp传输文件,并设置好rcp的权限:把源主机加入到可信任主机列表中,否则难以在源主机上使用rcp远程复制文件到目标主机。
3.wget
【优点】简单便捷,支持排除目录,支持限速参数【缺点】只能从远程机器将文件或文件夹下载到本地,但是远程机器须要支持ftp服务(比如启动proftpd);参数较多,使用上比scp复杂
【用法】
wget是一个从网路上手动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP合同下载,并可以使用HTTP代理。
命令格式:
wget[参数]ftp:///#proftpd格式
举例:
wgetftp://192.168.0.10//home/work/source.txt#从192.168.0.10上拷贝文件夹source.txt
wgetftp:////home/work/source.txt#使用主机名
wget-nH-P/home/work/ftp:////home/work/source.txt#指定本地保存路径,使用参数“-P路径”或者“--directory-prefix=路径”;-nH,--no-host-directories不创建主机目录
wget-r-l0-nH-P/home/work/ftp:////home/work/sourcedir#递归下载sourcedir目录,使用参数-r;参数-l,--level=NUMBER最大递归深度(inf或0代表无穷).
wget--cut-dirs=3-r-l0-nH-P/home/work/ftp:////home/work/sourcedir#-参数-cut-dirs=NUMBER忽视NUMBER层远程目录,本例上将myhost上的sourcedir目录保存到本地的work目录下。
wget--limit-rate=200k--cut-dirs=3-r-l0-nH-P/home/work/ftp:////home/work/sourcedir#-参数--limit-rate=RATE限定下载输率
wget--limit-rate=200k--cut-dirs=3-r-l0-nH-P/home/work/-X/home/work/sourcedir/notincludedirftp:////home/work/sourcedir#排除路径使用-X参数
wget-q--limit-rate=200k--cut-dirs=3-r-l0-nH-P/home/work/-X/home/work/sourcedir/notincludedirftp:////home/work/sourcedir#参数-q表示安静模式,无输出;默认是-v,冗余模式
4.rsync
【优点】功能强悍,操作类似scp,支持排除目录,支持限速参数;还支持本地复制。
【缺点】暂无
【用法】
rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看下来了——remotesync。它的操作方法和scp和相像,而且比scp强悍好多。使用双引号分割主机名和文件路径时,是使用rsync服务器,这儿不做介绍。
命令格式:
rsync[参数]::
举例:
rsync/home/work/source.txtwork@192.168.0.10:/home/work/#把本地的source.txt文件拷贝到192.168.0.10机器上的/home/work目录下
rsyncwork@192.168.0.10:/home/work/source.txt/home/work/#把192.168.0.10机器上的source.txt文件拷贝到本地的/home/work目录下
rsyncwork@192.168.0.10:/home/work/source.txtwork@192.168.0.11:/home/work/#把192.168.0.10机器上的source.txt文件拷贝到192.168.0.11机器的/home/work目录下
rsync-r/home/work/sourcedirwork@192.168.0.10:/home/work/#拷贝文件夹,加-r参数
rsync-r/home/work/sourcedirwork@:/home/work/#使用主机名
rsync-r-v/home/work/sourcedirwork@:/home/work/#显示详情,加-v参数
rsync-r-v--excludesourcedir/notinclude/home/work/sourcedirwork@:/home/work/#排除子目录,注意:--exclude旁边的路径不能为绝对路径,必须为相对路径才可以linux怎么读,否则匹配不上,就不会被排除掉。