命令linuxtar(文件方式文件名备份命令)「linux tar备份文件」

1、简介tar命令是类Unix和类Unix系统上的压缩打包工具,可以将多个文件合并为一个文件,打包后的文件名亦为“tar”
目前,tar文件格式已经成为POSIX标准,最初是POSIX.1-1988,目前是POSIX.1-2001
本程序最初的设计目的是将文件备份到磁带上(tape archive),因而得名tar
2、sar命令常用格式[root@RedHat_test ~]# man tar-c新建打包文件,同-v一起使用 查看过程中打包文件名-v压缩或解压过程中,显示过程-f要操作的文件名-r表示增加文件,把要增加的文件追加在压缩文件的末尾-t表示查看文件,查看文件中的文件内容-x解压文件-z通过gzip方式压缩或解压,最后以.tar.gz 为后缀-j通过bzip2方式压缩或解压,最后以.tar.br2 为后缀
压缩后大小小于.tar.gz-u更新压缩文件中的内容-p保留绝对路径,即允许备份数据中含有根目录-P保留数据原来权限及属性
3、压缩# 压缩方式一[root@RedHat_test01]# tar -jcvf log.tar.bz2 yunweimaoyunweimao[root@RedHat_test01]# lslog.tar.bz2 yunweimao# 压缩方式二[root@RedHat_test01]# tar -zcvf log.tar.gz yunweimaoyunweimao[root@RedHat_test01]# lslog.tar.gz yunweimao4、解压# 解压文件方式一[root@RedHat_test01]# lslog.tar.bz2[root@RedHat_test01]# tar -jxvf log.tar.bz2yunweimao[root@RedHat_test01]# lslog.tar.bz2 yunweimao# 解压文件方式二[root@RedHat_test01]# lslog.tar.gz[root@RedHat_test01]# tar -zxvf log.tar.gzyunweimao[root@RedHat_test01]# lslog.tar.gz yunweimao5、查询#查看压缩文件名[root@RedHat_test01]# tar -tf log.tar.gzyunweimao#查看压缩文件文件:所属权限、用户名用户组、日期等[root@RedHat_test01]# tar -tvf log.tar.gz-rw-r--r--root/root 462020-02-2517:47 yunweimao6、加密压缩#语法:tar -czvf - file | openssl des3 -salt -k password -out /path/to/file.tar.gz[root@RedHat_test01]# lsyunweimao[root@RedHat_test01]# tar -czvf - yunweimao | openssl des3 -salt -k 123456 -out log.tar.gz[root@RedHat_test01]# lslog.tar.gz yunweimao7、解密解压#语法:openssl des3 -d -k password -salt -in /path/to/file.tar.gz | tar xzf -[root@RedHat_test01]# lslog.tar.gz[root@RedHat_test01]# openssl des3 -d -k 123456 -salt -in log.tar.gz | tar xzf -[root@RedHat_test01]# lslog.tar.gz yunweimao8、查阅上述 tar包内有哪些文件[root@RedHat_test01]# lslog.tar.gz[root@RedHat_test01]# tar -ztvf log.tar.gz-rw-r--r--root/root 02020-02-2517:58 maoxiaopu-rw-r--r--root/root 462020-02-2517:47 yunweimao9、解压部分文件[root@RedHat_test02]# tar -czvf data.tar.gz log2010.loglog2012.loglog2013.loglog2014.loglog2015.loglog2016.loglog2017.loglog2018.loglog2019.loglog2021.log[root@RedHat_test02]# rm -rf log20[root@RedHat_test02]# lsdata.tar.gz[root@RedHat_test02]# tar -zxvf data.tar.gz log2012.loglog2012.log[root@RedHat_test02]# lsdata.tar.gz log2012.log10、文件备份下来,并且保存其权限[root@RedHat_test02]# ls -Zd -rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 log2012.log-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 log2018.log-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 log2020.log-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 log2021.log[root@RedHat_test02]# tar -zcvpf data.tar.gz log2012.loglog2018.loglog2020.loglog2021.log[root@RedHat_test02]# rm -rf log20[root@RedHat_test02]# lsdata.tar.gz[root@RedHat_test02]# tar -zxvpf data.tar.gzlog2012.loglog2018.loglog2020.loglog2021.log[root@RedHat_test02]# ls -Zd -rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 data.tar.gz-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 log2012.log-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 log2018.log-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 log2020.log-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 log2021.log# 这个 -p 的属性是很重要的,尤其是当您要保留原本文件的属性时11、在文件夹当中,比某个日期新的文件才备份# 在 /home 当中,比 2020/02/27 新的文件才备份[root@RedHat_test02]# tar -N '2020/02/27' -zcvf home.tar.gz /home12、备份的时候排除部分文件或目录[root@RedHat_test02]# lsbin conf logs[root@RedHat_test02]# tar -czvf test.tar.gz --exclude c.log --exclude logsbin/conf/13、往tar包追加和删除内容1.只能已归档的文件才能追加文件
#如果tar.gz文件是如此生成
即tar.gz是压缩(-z)和归档(-c)文件,则无法给它追加文件
[root@RedHat_test02]# tar -zcvf data.tar.gz log
2.生成可以追加的tar文件[root@RedHat_test02]# lslog2018.log log2019.log log2020.log log2021.log[root@RedHat_test02]# tar -cvf data.tar.gz log2018.loglog2019.loglog2020.loglog2021.log3.追加文件[root@RedHat_test02]# touch log2022.log[root@RedHat_test02]# tar -rvf data.tar.gz log2022.loglog2022.log4.查看归档内容[root@RedHat_test02]# tar -tf data.tar.gzlog2018.loglog2019.loglog2020.loglog2021.loglog2022.log5.删除tar包里的文件[root@RedHat_test02]# tar --delete -vf data.tar.gz log2018.log log2019.log[root@RedHat_test02]# tar -xvf data.tar.gzlog2020.loglog2021.loglog2022.log关于运维学习、分享、交流,笔者开通了微信公众号【运维猫】,感兴趣的朋友可以关注下,欢迎加入,建立属于我们自己的小圈子,一起学运维知识
命令linuxtar(文件方式文件名备份命令)
(图片来源网络,侵删)

联系我们

在线咨询:点击这里给我发消息