linux之使用scp/rsync命令远程传输文件、rsync命令与scp命令对比

实验环境:
我们需要两台主机,要保证两台主机是可以互相通信的。

  1. 配网,点击查看以前文章,不再复述。
  2. 改主机名字,这一步可以省略。
  3. 使用命令systemctl stop firewalld关闭两台主机的防火墙。
  4. 免密认证

scp(全备份)

scp 本地文件 远程主机用户@远程主机ip:远程主机目录的绝对路径
scp 远程主机用户@远程主机ip:远程主机文件的绝对路径 本地文件

1. 把本地文件复制到远程主机 (上传)

scp file root@172.25.254.200:/root/Desktop
scp -r dir root@172.25.254.200:/root/Desktop   ## -r 表示复制目录
scp -q file root@172.25.254.200:/root/Desktop   ## -q 传输文件时不显示进度
在这里插入图片描述
在这里插入图片描述

2. 把远程文件复制到本地(下载)

scp root@172.25.254.200:/root/Desktop/file* .  ##最后的.表示下载到当前目录
先在lucky2这台主机建立三个文件
在这里插入图片描述
在lucky1这台主机执行命令成功!
在这里插入图片描述

rsync和scp命令的对比

用下图命令创建一个较大的文件
在这里插入图片描述
du -sh /mnt/lucky可以看到文件大小
在这里插入图片描述
写一个脚本,多执行几次方便我们看效果
在这里插入图片描述
用scp可以看出时间都差不多
在这里插入图片描述
我们换用rsync看下效果
在这里插入图片描述
因为后边只做增量检测,没有增加所以不做重复传输
在这里插入图片描述

rsync(支持增量备份)

rsync用法:
rsync 文件 远程用户@远程主机ip:远程主机目录
rsync 远程用户@远程主机ip:远程主机目录 文件路径
为了看出命令效果,我们先做点准备工作:
先创建文件和文件夹
在这里插入图片描述
然后chmod 777 * 提权,再更改下用户和组:
在这里插入图片描述
再做个链接
在这里插入图片描述
下面开始执行命令,可看到效果:
在这里插入图片描述
上图可以看到执行命令后给的提示意思是跳过了链接文件,而且仔细观察可以发现,时间戳,用户用户组权限这些都不一样,加下边参数可以实现原样发送:
rsync
-r   ##复制目录
-l   ##复制链接,链接文件不会被跳过
-p   ##复制权限
-t   ##复制时间戳
-o   ##复制拥有者
-g   ##复制拥有组
-D   ##复制设备文件
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值