文档章节

linux 备份、压缩、加密

SibylY
 SibylY
发布于 2015/12/09 16:57
字数 1520
阅读 199
收藏 5
tar -cvf - /home | tar -xvf -

说明:把/home 拷贝到当前目录下,管道前半句把/home打包放到标准输出流中,后半句是把输入流-里的内容解包到当前目录。

 

tar是Linux常见的一种归档文件(原生不包括压缩功能)

gzip是gnu/Linux的一种压缩文件工具,算法是基于 DEFLATE,文件是gz,可以和tar组合。

zip是一种规范开放的压缩文件,算法不定,但主要是用 DEFLATE
rar的算法专有,但发行时附送解码器允许解码器再开发,编码器专有
7zip和zip差不多,算法不定,主要用bzip2和lzma,而且完全开源。
zip和7z更像是压缩容器,因为算法不是格式固定,允许支持其他压缩算法

大小与区别
tar是无压缩的,比压缩效率,gz的算法最原始,所以较低,其次zip,接着rar,7z两个主要算法基本上略优于rar,基本不相上下。

在Linux里面,tar一般和其他没有文件管理的压缩算法文件结合使用,用tar打包整个文件目录结构成一个文件,再用gz,bzip等压缩算法压缩成一次。也是Linux常见的压缩归档的处理方法。


zip相对比较老,格式规范可知,所以积累了各种加解压实现,有较好的兼容性,不过现有文件格式相对而言比较落后,还有会有文件名乱码问题(因为文件名是用非Unicode编码)

rar和7z就新些,所用算法压缩效率也好很多,兼容性不及zip,不过rar的编码器有专利,但可以不制作编码器的情况使用或者再开发发行版的解码器(所以其他压缩管理工具可以调用rar的解码器来解压rar,但不能加压,百度云的在线解压rar可能是使用或者再开发过unrar文件),7z的文件和管理程序都是开源的,文件格式也比较好(支持Unicode文件名),两个主要压缩算法的性能都很好,只是差何时能普及而取代zip而已。

压缩率bzip2 > gzip > zip

zip的通用性较好,而现在windows下软件winrar,7zip等对tar.gz的支持也非常好。推荐用tar.gz,bzip2要耗费更多的cpu

gzip可以极大的加速网站.有时压缩比率高达80%,近来测试了一下,最少都有40%以上,还是相当不错的.在Apache2之后的版本,模块名不叫gzip,而叫mod_deflate

在网络传输、设备之间转存、复制大文件等时,由于网络不稳定等因素可能造成数据不一致,这就需要校验文件的完整性。

md5sum命令用于生成和校验文件的md5值。它会逐位对文件的内容进行校验。是文件的内容,与文件名无关,也就是文件内容相同,其md5值相同。md5值是一个128位的二进制数据,转换成16进制则是32(128/4)位的进制值。md5校验,有很小的概率不同的文件生成的md5可能相同。比md5更安全的校验算法还有SHA*系列的。

-b 以二进制模式读入文件内容

-t 以文本模式读入文件内容

-c 根据已生成的md5值,对现存文件进行校验

--status 校验完成后,不生成错误或正确的提示信息,可以通过命令的返回值来判断。

对同内容不同名的文件进行md5,md5值一样,

-b、-t虽然是不同的读入模式,但是在进行求md5的时候,是一样的,因为是逐位校验的。

md5sum值逐位校验,所以文件越大,校验时间越长。 ————————————————

【tar option】tar --help

-c, --create            create a new archive建立压缩档案
-x, --extract, --get    extract files from an archive解压
-t, --list              list the contents of an archive查看内容
-r, --append            append files to the end of an archive向压缩归档文件末尾追加文件
-u, --update            only append files newer than copy in archive更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。

-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出

下面的参数-f是必须的

-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

--exclude=PATTERN        exclude files, given as a PATTERN

 

tar -czvf proftpd.tar.gz /home/proftpd --exclude *.log
#压缩/home/proftpd目录下文件(除去.log文件)到proftpd.tar.gz

 

压缩

tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg 

tar -czf jpg.tar.gz *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz

 tar -cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2

tar -cZf jpg.tar.Z *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux

zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux

解压

tar -xvf file.tar //解压 tar包

tar -xzvf file.tar.gz //解压tar.gz

tar -xjvf file.tar.bz2   //解压 tar.bz2

tar -xZvf file.tar.Z   //解压tar.Z

unrar e file.rar //解压rar

unzip file.zip //解压zip

总结

1、*.tar 用 tar -xvf 解压

2、*.gz 用 gzip -d或者gunzip 解压

3、*.tar.gz和*.tgz 用 tar -xzf 解压

4、*.bz2 用 bzip2 -d或者用bunzip2 解压

5、*.tar.bz2用tar -xjf 解压

6、*.Z 用 uncompress 解压

7、*.tar.Z 用tar -xZf 解压

8、*.rar 用 unrar e解压

9、*.zip 用 unzip 解压

 

© 著作权归作者所有

SibylY
粉丝 33
博文 450
码字总数 371841
作品 0
海淀
程序员
私信 提问
【 Linux学习】Linux环境下利用OpenSSL对大文件进行AES加解密

版权声明:本文为【欧阳鹏】原创文章,欢迎转载,转载请注明出处! 【http://blog.csdn.net/ouyang_peng】 https://blog.csdn.net/qq446282412/article/details/83117025 一、背景 之前的几篇...

欧阳鹏
2018/10/17
0
0
Linux和类Unix系统上5个惊艳的开源备份软件

 一个好的备份计划是非常必要的,这样可以有能力恢复被下面几种情形顺坏的数据: 人为损坏 RAID或者磁盘损坏 文件系统损坏 数据中心损毁以及其它   在这篇文章里我会给你列举一些惊艳的开...

Ryan-瑞恩
2014/11/30
3.9K
0
mysql运维-备份恢复之percona-xtrabackup

mysql的物理备份分两种: 冷备:停止服务,拷贝data目录,然后重启服务,完成。如果需要恢复,停止服务,删掉当前在用data,把之前拷贝的data复制过来,再开启服务,就OK了!因为冷备需要停掉...

坦途abc
2018/08/28
36
0
Linux使用scp命令进行文件远程拷贝详解

前言 scp是 secure copy的缩写, scp是Linux系统下基于ssh登陆进行安全的远程文件拷贝命令。Linux的scp命令可以在Linux服务器之间复制文件和目录。 使用语法: scp [参数] [源路径] @IP:/目标...

开元中国2015
2018/12/11
51
0
对 Linux 用户一记暴击:Dropbox 或将停止支持 Linux​​​​​​​

云存储服务 —— 尤其是与本地备份计划搭配使用时,坦率地说,它是有史以来最好的计算创新之一。试想一下,你可以随时随地轻松地将重要文件备份到非现场位置,这有多酷?说实话 —— 在云之前...

局长
2018/08/12
3.2K
12

没有更多内容

加载失败,请刷新页面

加载更多

好程序员大数据教程分享Scala系列之模式匹配和样例类

好程序员大数据教程分享Scala系列之模式匹配和样例类 1.样例类 在Scala中样例类是一中特殊的类,样例类是不可变的, 可以通过值进行比较,可用于模式匹配。 定义一个样例类: 构造器中每一个...

好程序员官网
1分钟前
0
0
让nginx上的静态网页在访问的时候没有html后缀

需求背景: 公司产品小姐姐觉得这个访问带html后缀不专业,要求访问不带html后缀 nginx 配置 #原配置 location / { index index.html index.htm index.php; try_files $...

Linux_Anna
2分钟前
0
0
beetl的内置函数

函数调用Beetl内置函数请参考附录,以下列出了常用的函数date 返回一个java.util.Date类型的变量,如 date() 返回一个当前时间(对应java的java.util.Date); ${date( "2011-1-1" , "yy...

gantaos
3分钟前
1
0
spring cloud 2.x版本 Gateway自定义过滤器教程

前言 本文采用Spring cloud本文为2.1.8RELEASE,version=Greenwich.SR3 [toc] 本文基于前两篇文章eureka-server、eureka-client、eureka-ribbon、eureka-feign和spring-gataway的实现。 参考......

毛毛向前冲V5
6分钟前
2
0
VPGAME 的 Kubernetes 迁移实践

作者 | 伍冲斌 VPGAME 运维开发工程师 导读:VPGAME 是集赛事运营、媒体资讯、大数据分析、玩家社群、游戏周边等为一体的综合电竞服务平台。总部位于中国杭州,在上海和美国西雅图分别设立了...

阿里巴巴云原生
11分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部