linux中的系统文件传输、归档、压缩

环境为redhat系统内有两台虚拟机,分别是desktop(主机名为node1)和server(主机名为node2)。所有操作均在虚拟机内操作。

首先说一下如何修改主机名

hostnamectl set-hostname node2.example.com                  ##修改用户名为node2

 

一、rsync数据镜像备份工具,用法格式有点像scp,但与scp有一些区别,rsync比scp更快

例如 : scp  /etc  和 /etc/没有区别

               rsync   /etc 表示包含etc目录    /etc/    不包含etc目录

rsync   -<>        dir            username@ip     ##备份文件到服务器 
rsync   -<>        username@ip    dir             ##备份文件到本机
rsync   -r   rsync -r /etc/ [email protected]:/nmt       ##递归备份目录

1.用一个实验来理解rsync的用法

touch lei{1..5}
chown student.student *
chmod 777 *
ln -s /mnt/lei1 /mnt/file
ll

 

rsync -r /mnt/ [email protected]:/mnt/

 

查看同步后的文件,会发现,权限和时间以及拥有者和用户组都不一样,还跳过了软链接

那么如何才能将这些属性都完全复制呢

rsync
         -r        ##递归备份目录
         -l        ##保留软链接文件
         -p        ##保留文件权限
         -t        ##保留文件时间戳
         -g        ##保留文件用户组
         -o        ##保留文件拥有者

按照上面rsync的注释,我们输入命令

rsync -rpogtl /mnt/ [email protected]:/mnt/

 

这样就成功的将文件的各个属性成功的复制到了node 2这台主机上

linux系统中还有一些硬件信息等文件,需要用到下面D这个参数

rsync       -Dr        ##保留文件设备信息

二.tar归档,可归档的文件不包括链接文件

tar    -c                        ##建立一个归档文件的参数指令 (create 的意思 )
       -x                        ##解开一个归档文件的参数指令
       -t                        ##查看tarfile里面的文件                               
       -v                        ##压缩的过程中显示文件
       -f                        ##指定打包文件名名
       -f     --get              ##单独获取一个文件
       -f     --delete           ##删除其中一个文件
       -p                        ##使用原文件的原来属性
       -P                        ##可以使用绝对路径来归档
       -xf  file   -C dir        ##将文件归档到某个目录

1.把etc目录归档且名字设为etc.tar

tar  cf etc.tar /etc

 

2.如何查看归档的文件内容

tar tf etc.tar

3.如何添加文件进归档文件

tar -rf etc.tar lei1

 

tar tf etc.tar

 

4.如何使归档文件释放

tar xf etc.tar

 

5.如何在归档文件中取出一个自己想要的文件

tar -f etc.tar --get lei1

 

6.如何删除归档文件中的一个文件

tar -f etc.tar --delete lei1

 

tar tf etc.tar            ##c看上一个这个命令的最后,会发现这了lei1文件已经不见了

7.如何把归档文件解除归档到某个目录

tar -xf etc.tar -C /home/Public

 

3.压缩

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

gzip/bzip/xz/zip  file(压缩成的) file(被压缩的)     ##压缩文件
    -r                                               ##递归压缩
gunzip/bunzip/unxz/unzip   file(要解压的)            ##解压文件
du -sh file       ##查看文件大小
file file(文件)  ##查看文件类型

 1.如何把文件压缩成zip格式的

zip -r etc.tar.zip etc.tar

 

如何解压zip文件的格式

unzip  etc.tar.zip

 

2.如何把文件压缩成gz格式

gzip etc.tar

如何把gz文件解压缩

gunzip etc.tar.gz

3.如何把文件压缩成bz2格式

bzip2 etc.tar

如何解压bz2格式的文件

bunzip2 etc.tar.bz2

4.如何把文件压缩成xz格式

xz etc.tar

 

如何解压xz格式

unxz etc.tar.xz

 

总结,综合来看 ,xz格式的文件压缩后最小,但耗时最长

四、如何使归档和压缩同时进行

tar    -z                        ##用gzip压缩 
       -j                        ##用bzip2压缩
       -J                        ##用xz缩                

1.如何将文件归档并且压缩成zip格式

tar -zcf etc.tar.gz /etc

 

2.如何将文件归档并且压缩成bz2格式

tar jcf etc.tar.bz2 /etc

3.如何将文件归档并且压缩成xz格式

tar Jcf etc.tar.xz /etc


猜你喜欢

转载自blog.csdn.net/weixin_40543283/article/details/83042594