Linux中的文件传输优化
1.scp远程传输命令
注意:为了保证两台主机可以进行文件传输,我们需要关闭两台主机的防火墙—systemctl disable --now firewalld
本地主机:num1 172.25.254.116
元城主机:num2 17225.254.216
1.1把本地文件复制到远程主机
scp -q 本地文件 远程主机用户@远程主机IP:远程主机目录 ##-q表示复制文件时不显示进度
scp -r 本地文件 远程主机用户@远程主机IP:远程主机目录 ##-r表示复制目录
1.2把远程文件复制到本地
scp 远程主机用户@远程主机ip:远程主机文件的绝对路径下的文件 本地目录
scp -r #复制目录
-q #传输文件时不显示进度
2.rsync远程同步命令
rsync命令的特点:
优点:传输速度快,rsync可以做增量的检测,已经复制过的文件不会再复制
缺点:短时间内会增大I/O输出负载
2.1 rsync和scp对比
在每次进行远程文件传输时,都要输入接收方的密码进行传输认证,为了便于后续实验,我们可以进行以下操作实现文件传输免密功能:
[root@num1 ~]# ssh-keygen
[root@num1 ~]# cd .ssh/
[root@num1 .ssh]# ls
authorized_keys id_rsa id_rsa.pub known_hosts
[root@num1 .ssh]# ssh-copy-id -i id_rsa.pub root@172.25.254.216
验证:
用time命令分别检测rsync和scp命令的执行时间
scp三次执行时间一般来说基本一致,这是由于scp命令实现的是对文件的精准传输,不会对远程主机上的文件情况做检测。
rsync三次系统执行时间明显小于scp命令,这是因为rsync命令在传输过程中对远程主机上的文件做了重复检测,其执行时间如下:
2.2 rsync用法
rsync 文件 远程用户@远程主机IP:远程主机目录 ##本地文件同步远程主机
rsync 远程用户@远程主机IP:远程主机目录 文件路径 ##远程文件同步本地主机
注意:在同步目录时,目录输入格式不同,操作效果也不同
如:/mnt 同步目录本身 /mnt/ 同步目录中的内容
参数 | 解释 |
---|---|
-r | 复制目录 |
-l | 复制链接 |
-p | 复制权限 |
-t | 复制时间戳 |
-o | 复制拥有者 |
-g | 复制拥有组 |
-D | 复制设备文件 |
建立实验素材和监控:
rsync -r /mnt root@172.25.254.216:/mnt
同步目录本身其目录中的文件
rsync -r /mnt/ root@172.25.254.216:/mnt
只同步目录中的文件
rsync -rl /mnt/ root@192.168.42.71:/mnt
同步链接
rsync -rlp /mnt/ root@192.168.43.71:/mnt
同步权限
rsync -rlpog /mnt/ root@192.168.43.71:/mnt
同步用户和组
rsync -rlpogt /mnt/ root@192.168.43.71:/mnt
同步时间
rsync -rD /dev/pts /mnt/ root@192.168.43.71:/mnt
同步设备文件
3.文件归档压缩
3.1文件归档
参数 | 解释 |
---|---|
c | 创建 |
f | 指定文件名称 |
x | 解档 |
t | 查看 |
r | 让文档中添加文件 |
get | 解档指定文件 |
delete | 删除指定文件 |
-C | 指定解档路径 |
3.2文件压缩
zip
zip -r etc.tar.zip etc.tar:zip格式压缩
unzip etc.tar.zip:zip格式解压缩
gzip
gzip gzip etc.tar:gzip格式压缩
gunzip etc.tar.gz:gzip格式解压缩
bzip
bzip2 bzip2.etc.tar:bzip2格式压缩
bunzip2 etc.tar.bz2:bzip2格式解压缩
xz
xz .etc.tar:xz格式压缩
unxz etc.tar.xz:xz格式解压缩
3.3tar+压缩:打包后同时进行压缩
gzip
tar zcf etc.tar.gz /etc:打包后以gzip格式压缩
tar zxf etc.tar.gz:gzip格式解压缩
bzip
tar jcf etc.tar.bz2 /etc:打包后以bzip2格式压缩
tar jxf etc.tar.bz2:bzip2格式解压缩
xz
tar Jcf etc.tar.xz /etc:打包后以xz格式压缩
tar Jxf etc.tar.xz:xz格式解压缩