Linux系统中的文件传输

实验环境

要求:两台主机在同一网段,可以通信
主机A(Redhat企业8):192.168.1.19
主机B(Redhat企业7):192.168.1.29

1. scp

文件上传命令: 【scp】+【 本地文件】 +【 远程用户@远程主机IP:远程主机目录】
文件下载命令:【scp】+【远程用户@远程主机IP:远程主机文件】+【本地目录】
scp参数:

  • 【-r】 复制目录
  • 【-q】 传输文件时不显示进度

示例:
示例①:主机B把文件test 复制给远程主机A
在这里插入图片描述
示例②:在主机B上把远程主机A的文件复制到本地
在这里插入图片描述
示例③:主机B把westos文件复制给主机A,不显示进度
在这里插入图片描述在这里插入图片描述
示例④:主机B把目录复制给主机A
在这里插入图片描述
在这里插入图片描述

2.rsync

2.1 rsync命令

rsyncy用法和scp类似
上传文件:【rsync】+【文件】+【远程用户@远程主机ip:远程主机目录】
下载文件:【rsync】+【远程用户@远程主机ip:远程主机文件】+【本地目录】

2.2 rsync与scp的区别

rsync在复制时,会检测是否已经存在相同的文件,如果有,则不会复制;
scp总是会执行复制动作,有相同文件,则复制后覆盖

2.2.1 rsync与scp对比实验
(1) 实验素材

在主机B中截取3个文件到/mnt目录下,大小分别为10M,20M,30M ;通过复制/mnt目录的时间,来比较scp与rsync命令的区别
在这里插入图片描述
②:我们在传输文件时,需要输入远程主机的密码,手动输入密码的时间会造成实验结果误差,因此我们需要在主机B上设置对主机A免密登录
在这里插入图片描述
在这里插入图片描述
③:编写check_scp.sh,check_rsync.sh脚本,分别执行三次检测scp和rsync传输时间的指令
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(2)实验执行

①:执行check_scp.sh脚本
在这里插入图片描述
②:将scp复制到主机A的/mnt文件删除,纯净实验环境,执行check_rsync.sh脚本
在这里插入图片描述
两次实验效果的对比,说明scp发生了三次复制动作;而rsync只有第一次进行文件复制

2.3 rsync参数

在传输文件时,会忽略很多东西,比如不会复制文件的权限,时间,链接等到远程主机中
在这里插入图片描述
在这里插入图片描述
用rsync命令的相关参数可以对被忽略的内容进行复制

参数作用
-r复制目录
-l不忽略链接
-p不忽略权限
-t不忽略时间戳
-g不忽略拥有组
-o不忽略拥有者
-D不忽略快设备

示例:
示例1:在主机B中创建test目录,并在目录下创建一个链接,用-l 参数复制test目录给主机A,链接也会被复制
在这里插入图片描述
在这里插入图片描述
示例2:在主机B中创建linux目录,修改目录及目录下的文件权限为777,把linux目录传给主机A,文件的权限也一同被复制
在这里插入图片描述
在这里插入图片描述
示例3:主机B将/dev/pts文件传输给主机A,设备文件被忽略,不会对其进行复制
在这里插入图片描述
加上-D参数复制文件,/dev/pts目录中的设备文件也被复制到主机A中
在这里插入图片描述
在这里插入图片描述

3.tar

tar:可以将多个文件合并为一个文件,打包后的文件后缀为“tar”

3.1 tar相关参数

参数解释
-c建立一个压缩文件的参数指令(create 的意思)
-x解开一个压缩文件的参数指令
-t查看 tarfile 里面的文件
-z是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v压缩的过程中显示文件
-f指定打包文件名
-p使用原文件的原来属性
-P可以使用绝对路径来压缩
【- -get】解档指定文件
【- -delete】删除指定文件
-C指定解档路径

3.2 用法

示例1:把file1,file2,file3三个文件打包在test.tar文件中,并查看test.tar里的文件
在这里插入图片描述
示例2:为了观察实验效果,在示例1的基础上删除当前路径所有文件,除了打包好的tar文件;解档test.tar文件,过程中显示文件名
在这里插入图片描述
示例2:将tset.tar中的file1解档
在这里插入图片描述
示例3:将test.tar解档到/mnt目录下
在这里插入图片描述

4. 压缩

压缩是一种通过特定的算法来减小计算机文件大小的机制。这种机制是一种很方便的发明,尤其是对网络用户,因为它可以减小文件的字节总数,使文件能够通过较慢的互联网连接实现更快传输,此外还可以减少文件的磁盘占用空间。linux系统常用压缩格式有:zip , gzip, bzip2 , xz

4.1 zip

压缩文件:把etc.tar文件压缩,压缩后的文件变小
在这里插入图片描述
解压文件:把etc.tar.zip文件解压
在这里插入图片描述

4.2 gzip

压缩文件:压缩后的文件名后缀为gz
在这里插入图片描述
解压文件:
在这里插入图片描述

4.3 bzip2

压缩文件:压缩后的文件后缀为bz2
在这里插入图片描述
解压文件:
在这里插入图片描述

4.4 xz

压缩文件:压缩后的文件名后缀为xz
在这里插入图片描述
解压文件:
在这里插入图片描述

4.5 tar+压缩

4.5.1 gzip格式(z)

打包并压缩文件:
在这里插入图片描述
解压并解档文件:
在这里插入图片描述

4.5.2 bzip2格式(j)

打包并压缩文件:
在这里插入图片描述
解压并解档文件:
在这里插入图片描述

4.5.3 xz格式(J)

打包并压缩文件:
在这里插入图片描述
解压并解档文件:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值