Linux中的文件传输

实验环境

需要2台主机并且保证这两台主机是可以通信的
westos_client : 172.25.254.101
westos_server : 172.25.254.201

scp命令

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

实验步骤
1.在201建立实验素材
touch westos
mkdir westosdir
2.测试
a.把本地文件复制到远程主机(上传)
scp westos root@172.25.254.101:/root/Desktop
在这里插入图片描述
scp -r westosdir root@172.25.254.101:/root/Desktop   ##-r  表示复制目录

在这里插入图片描述
scp -q westos root@172.25.254.101:/root/Desktop    ##-q 传输文件时不显示进度
在这里插入图片描述
b.把远程文件复制到本地(下载)
scp -r root@172.25.254.101:/root/Desktop/file /root/Desktop
在这里插入图片描述

rsync命令

a.rsync与scp命令的对比
实验素材
1)172.25.254.201:
dd if=/dev/zero of=/root/Desktop/westosfile1 bs=1M count=10 ##dd=截取,                 ##if=inputfile,of=outputfile,bs=blocksize,count= 快的个数

dd if=/dev/zero of=/root/Desktop/westosfile2 bs=1M count=20
dd if=/dev/zero of=/root/Desktop/westosfile3 bs=1M count=30
在这里插入图片描述
建立完毕后使用du - sh 查看所有文件大小
在这里插入图片描述
2)在主机之间建立免密登陆使远程文件传输可以直接执行
201中:
ssh-keygen ## 生成密钥
ssh-copy-id -i /root/.ssh/id_rsa.pub. root@172.25.254.101

3)创建测试脚本
vim /mnt/test.sh ##检测scp传输时间
time scp -qr /root/Desktop/* root@172.25.254.20:/root/Desktop
time scp -qr /root/Desktop/* root@172.25.254.20:/root/Desktop
time scp -qr /root/Desktop/* root@172.25.254.20:/root/Desktop
在这里插入图片描述

vim /mnt/test1.sh ##检测rsync的传输时间
time rsync -raCq /root/Desktop/* root@172.25.254.20:/root/Desktop
time rsync -raCq /root/Desktop/* root@172.25.254.20:/root/Desktop
time rsync -raCq /root/Desktop/* root@172.25.254.20:/root/Desktop
在这里插入图片描述

4)执行
scp
sh /mnt/test.sh
在这里插入图片描述
在这里插入图片描述
以上执行效果可以看出scp三次执行时间几乎一致
rsync
sh /mnt/test1.sh
在这里插入图片描述
在这里插入图片描述

以上执行效果可以看出rsync三次执行时间后两次远远小与第一次

rsync用法

rsync 文件 远程用户@远程主机ip:远程主机目录
rsync 远程用户@远程主机ip:远程主机目录 文件路径

rsync
    -r   复制目录
    -l   复制链接
    -p   复制权限
    -t   复制时间戳
    -o  复制拥有者
    -g  复制拥有组
    -D  复制设备文件
实验环境
在client中
watch -n 1 ls -lR /root/Desktop

在server中
touch /root/Desktop/file{1…5}
chmod 777 /root/Desktop/*
useradd westos
chown westos /root/Desktop/*
ln -s /root/Desktop/file1 /root/Desktop/file
执行命令看效果:
rsync -r /root/Desktop root@172.25.254.20:/root/Desktop  同步目录本身其目录中的文件
rsync -r /root/Desktop/ root@172.25.254.20:/root/Desktop  只同步目录中的文件
rsync -rl /root/Desktop/ root@172.25.254.20:/root/Desktop  同步链接
rsync -rlp /root/Desktop/ root@172.25.254.20:/root/Desktop  同步权限
rsync -rlpog /root/Desktop/ root@172.25.254.20:/root/Desktop  同步用户组
rsync -rlpogt /root/Desktop/ root@172.25.254.20:/root/Desktop  同步时间
rsync -rD /dev/pts root@172.25.254.20:/root/Desktop      同步设备文件

文档的归档压缩

文件归档
tar
     c     创建
     f     指定文件名称
     x     解档
     t     查看
     r     向归档文件中添加文件
     --get   解档指定文件
     --delete  删除指定文件
     -C    指定解档路径
实验步骤
tar cf etc.tar /etc/   将/etc/归档成etc.tar
在这里插入图片描述
tar tf etc.tar      查看etc.tar中的内容
在这里插入图片描述

tar rf etc.tar file    向etc.tar中导入文件
在这里插入图片描述
tar xf etc.tar     将etc.tar解档
在这里插入图片描述
tar f etc.tar --get file    解档指定文件
在这里插入图片描述
tar f etc.tar --delete file    删除指定文件
在这里插入图片描述
tar xf etc.tar -C /root/Desktop    指定解档路径

文件的压缩

zip

zip -r etc.tar.zip etc.tar zip格式压缩

在这里插入图片描述
unzip etc.tar.zip     zip格式解压缩
在这里插入图片描述

gzip

gzip etc.tar        gzip格式压缩
gunzip etc.tar.gz      gzip格式解压缩

bzip

bzip2 mnt.tar        bzip2格式压缩
bunzip2 mnt.tar.bz2     bzip2格式解压缩

xz

xz mnt.tar         xz格式压缩
unxz mnt.tar.xz       xz格式解压缩

tar+压缩:

gzip

tar zcf etc.tar.gz /etc
tar zxf etc.tar.gz

bzip2

tar jcf etc.tar.bz2 /etc
tar jxf etc.tar.bz2

xz

tar Jcf etc.tar.xz /etc
tar Jxf etc.tar.xz

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值