九.Linux系统中的文件传输

tech2026-08-31  0

一.实验环境

需要2台主机并且保证这两台主机是可以通信的

westos_linux : 172.25.254.10 westos_node1 : 172.25.254.20

westos_linux&westos_node1:

systemctl disable firewalld  systemctl stop firewalld

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

实验步步骤: (1).在rhel7建立实验素材

touch westos mkdir westosdir

(2).测试

a)把本地文件复制到远程主机    (上传)                           (直接覆盖) scp      westos       root@172.25.254.20:/root/Desktop

scp -r    westosdir    root@172.25.254.20:/root/Desktop            -r 表示复制目录

scp -q    westos        root@172.25.254.20:/root/Desktop          -q 传输文件时不显示进度

b)把远程文件复制到本地(下载) scp root@172.25.254.20:/root/Desktop/westos_rhel8   /root/Desktop

2.rsync

(1) rsync(对照复制,对比.增量复制)和scp命令的对比 实验素材: a)172.25.254.10: 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

b)在主机之间建立免密登陆使远程文件传输可以直接执行 rhel7中: ssh-keygen        生成密钥 ssh-copy-id -i /root/.ssh/id_rsa.pub. root@172.25.254.20

c)创建测试脚本 vim check_scp.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 check_rsync.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

d)first:执行scp  sh check_scp.sh real    0m1.334s user    0m0.210s sys    0m0.490s    第一次系统执行时间

real    0m1.642s user    0m0.412s sys    0m0.383s    第二次系统执行时间

real    0m1.586s user    0m0.309s sys    0m0.497s    第三次系统执行时间 以上执行效果我们可以看出scp三次执行时间几乎一致

second:rsync执行 sh check_rsync.sh real    0m1.603s user    0m0.399s sys    0m0.557s    第一次系统执行时间

real    0m0.329s user    0m0.012s sys    0m0.010s    第二次系统执行时间

real    0m0.348s user    0m0.014s sys    0m0.022s    第三次系统执行时间 以上执行效果我们可以看出rsync三次执行时间后两次远远小与第一次

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

远程文件

rsync     -r    复制目录

    -l    复制链接

    -p    复制权限     -t    复制时间戳     -o    复制拥有者     -g    复制拥有组

    -D    复制设备文件

   等于-a

二.实验环境

在westos_node1中watch -n 1 ls -lR /root/Desktop中

在westos_linux中

touch /root/Desktop/file{1..5}

mkdir dir1

chmod 777 /root/Desktop/dir1 useradd westos chown westos /root/Desktop/dir1

ln -s /root/Desktop/dir1/file1 /root/Desktop/dir1/file 链接

westos_linux执行: 执行命令看效果: rsync  -r root@172.25.254.20:/root/Desktop/      dir1      同步目录本身其目录中的文件

rsync  -r root@172.25.254.20:/root/Desktop/     dir1/        只同步目录中的文件

rsync  -rl root@172.25.254.20:/root/Desktop/     dir    同步链接

rsync  -rlp root@172.25.254.20:/root/Desktop/     dir1      同步权限 rsync  -rlpog dir1 root@172.25.254.20:/root/Desktop/             同步用户组

rsync  -rlpogt root@172.25.254.20:/root/Desktop/        同步时间 rsync -rD root@172.25.254.20:/dev/pts             同步设备文件

三.文件的归档压缩

1.文件归档 tar     c创建       t查看        f 指定文件名称          r 向归档文件中添加文件

    x        解档     v        现实过程

    --get        解档指定文件

    --delete    删除指定文件

    -C        指定解档路径

2.文件的压缩

zip zip -r  mnt.tar.zip mnt.tar    zip格式压缩 unzip     mnt.tar.zip        zip格式解压缩

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

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

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

3.tar+压缩   (xz>bz>gz压缩比)

gzip tar zcf etc.tar.gz /etc    =   tar cf etc.tar /etc  +  gzip etc.tar

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

最新回复(0)