linux下远程传输文件的方式sftp.scp,rsync,rcp

来源:岁月联盟 编辑:exp 时间:2011-09-20

 1、scp: scp 命令是 SSH 中最方便有用的命令了,scp就是secure copy,是用来进行远程文件拷贝的。数据传输使用 ssh,并且和ssh 使用相同的认证方式,提供相同的安全保证 。 与rcp 不同的是,scp 在需要进行验证时会要求你输入密码或口令。
scp [options] [本地用户名@IP地址:]文件名 1 [远程用户名 @IP 地址 :] 文件名 2
       -v 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .
 
-C 使能压缩选项 .
 
-P 选择端口 . 注意 -p 已经被 rcp 使用 .
 
-4 强行使用 IPV4 地址 .
 
-6 强行使用 IPV6 地址 .
 
-r Recursively copy entire directories.
 
       -p  保留原来的一些属性
举例:scp -p test.sh 10.48.30.191:/root(将当前目录下的test.sh文件拷贝到10.48.30.191root目录下)
          scp 10.48.30.191:/root/test.sh /root (把191root下的test.sh文件拷贝到本机root目录下)
2、rcp:RCP is not a secure or encrypted method of transferring files.
    rcp命令有两种格式。第一种格式用于文件到文件的拷贝;第二种格式用于把文件或目录拷贝到另一个目录中。
rcp [options] [[user@]host1:]file1 ... [[user@]host2:]file2
options:    -r 递归地把源目录中的所有内容拷贝到目的目录中。要使用这个选项,目的必须是一个目录。 -p 试图保留源文件的修改时间和模式,忽略umask。
  举例:rcp -p test.sh 10.48.30.191:/root(将当前目录下的test.sh文件拷贝到10.48.30.191root目录下)
          rcp 10.48.30.191:/root/test.sh /root (把191root下的test.sh文件拷贝到本机root目录下)
3、sftp:安全文件传输协议
    sftp 与 ftp 有着几乎一样的语法和功能。S
    FTP 为 SSH的一部份,是一种传输档案至 Blogger 伺服器的安全方式。SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接操作。
    使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果您对网络安全性要求更高时,可以使用SFTP代替FTP。
    用法举例:sftp root@10.48.30.192:/root/test.sh(直接将192上的文件复制到本地)
                     sftp root@10.48.30.192:/root  (直接连接到192的root目录下,这样就可以使用get put等命令了)
                     当你使用security CRT时,可以使用快捷键Alt + p ,可以直接连接到windows的用户家目录。就可以将windos本地的文件上传到linux中,也可以从linux中下载所需的文件。
4、rsync:是类unix系统下的数据镜像备份工具
可以镜像保存整个目录树和文件系统,可以很容易做到保持原来文件的权限、时间、软硬链接等等,优化的流程,文件传输效率高。可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。
需要注意的是必须在服务器A和B上都安装rsync,其中A服务器上是以服务器模式运行rsync,而B上则以客户端方式运行rsync。这样在web服务器A上运行rsync守护进程,在B上定时运行客户程序来备份web服务器A上需要备份的内容。
   服务器端启动:
       usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf
 
可能需要root权限运行.
 
/etc/rsyncd/rsyncd.conf 是你刚才编辑的rsyncd.conf的位置.
 
也可以在/etc/rc.d/rc.local里加入让系统自动启动等.
 
 客户端启动:
    rsync [OPTION] SRC [SRC] [USER@]HOST:DEST
  option:
  -a 参数,相当于-rlptgoD,-r 是递归 -l 是链接文件,意思是拷贝链接文件;-p 表示保持文件原有权限;-t 保持文件原有时间;-g 保持文件原有用户组;-o 保持文件原有属主;-D 相当于块设备文件;
 
-z 传输时压缩
 
-P 传输进度;
 
-v 传输时的进度等信息,和-P有点关系,自己试试。可以看文档;

作者“lovecode”