9.linux中的文件传输

9.linux中的文件传输


前言


一、实验环境配置

关闭虚拟机客户端和服务端的图形模式
systemctl set-default mu(会补齐)
init 3 以无图的方式运行虚拟机
9.linux中的文件传输在主机上可以远程连接虚拟机 ctrl+shift+t 在一个shell中打开多个tab
ssh root@172.25.254.139/239
9.linux中的文件传输9.linux中的文件传输开启客户端与服务端免密传输

9.linux中的文件传输
测试:传输文件不需要密码
9.linux中的文件传输


二、文件传输

scp 上传:scp 要上传文件的绝对路径 root@172.25.254.139:原文件所在绝对路径 会改变元数据(时间)
scp /mnt/westos1 root@172.25.254.139:/mnt
9.linux中的文件传输9.linux中的文件传输

scp -q /mnt/westos2 root@172.25.254.139:/mnt/
-q quiet 静默传输 传输不显示提示
9.linux中的文件传输
scp -r /mnt/westosdir root@172.25.254.139:/mnt/
-r 传输目录
9.linux中的文件传输
9.linux中的文件传输scp 下载:scp root@172.25.254.109:/要下载文件的绝对路径 下载到本机哪儿的绝对路径
9.linux中的文件传输-p 不会改变元数据(时间)

scp传递没有增量,即使存在也会完整传输;不会做增量检测

rsync 传输前会做增量检测

测试:
dd if=/dev/zero of=/mnt/westos1 bs=1M count=500 创建大文件,每块1M 一共500块,为传输做准备

9.linux中的文件传输du -sh /mnt/westos1 du -sh 读取文件大小 du westos也可以 而且du更加精确
9.linux中的文件传输编写脚本1.sh 运行脚本让westos传输三次,并且记录每次时间
9.linux中的文件传输9.linux中的文件传输可以看到三次传输时间相差不多,
修改脚本,使用rsync进行传输
time rsync -aCq /mnt/westos1 root@172.25.254.109:/mnt 增量传送并且查看时间
9.linux中的文件传输-a 对数据进行压缩
-C 数据相同的内容自动检测
-q 静默传输
man rsync 查看rsync怎么用
9.linux中的文件传输明显看到,第二次第三次只做了增量检测,文件并未改动,所以传输时间相比第一次大大降低。

  • rsync 注意:/mnt传送的是整个文件夹,/mnt/传送的时文件夹里的内容
    9.linux中的文件传输先创建好测试文件,更改权限和用户组,建立链接(ln -s westos westosfile),ll查看所有属性。

-r 复制目录
9.linux中的文件传输9.linux中的文件传输

-l 复制链接
9.linux中的文件传输9.linux中的文件传输

-t 复制时间戳
9.linux中的文件传输

-o 复制拥有者
9.linux中的文件传输

-g 复制拥有组
9.linux中的文件传输

-D 复制设备文件 /dev/pts/
9.linux中的文件传输


三、文件归档压缩

1.文件归档

  • tar 文件归档
    c 创建
    f 指定文件名称
    tar cf etc.tar /etc
    9.linux中的文件传输

v 显示过程
tar xf etc.tar
t 查看
tar tf etc.tar
9.linux中的文件传输

r 向归档文件中添加文件
–get 解档指定文件
向归档文件中添加westos文件再解档
9.linux中的文件传输–delete 删除指定文件
-C 指定解档路径
9.linux中的文件传输

-P 不会去掉‘/’ 慎用,会覆盖掉之前的文件

2.文件压缩

压缩格式:zip 、gzip 、bzip2 、xz

zip -r :zip -r etc.tar.zip etc.tar 将etc.tar压缩成zip格式
9.linux中的文件传输
文件明显变小。
unzip:unzip etc.tar.zip 解压
9.linux中的文件传输
gzip: gzip etc.tar
gunzip:gunzip etc.tar
9.linux中的文件传输bzip2 etc.tar
bunzip2 etc.tar.bz2
9.linux中的文件传输xz etc.tar
unxz etc.tar.xz
9.linux中的文件传输归档压缩一起:
tar zcf etc.tar.gz /etc
9.linux中的文件传输

tar jcf etc.tar.bz2 /etc
9.linux中的文件传输

tar Jcf etc.tar.xz /etc
9.linux中的文件传输


总结

本章主要学习了远程文件传输,文件归档与文件压缩。

上一篇:linux scp命令参数及用法详解--linux远程复制拷贝命令使用实例


下一篇:linux scp命令用法