问题描述

最近,我一直在备份大量数据,并且我注意到可以将文件另存为.gz或.tar.gz,或.7z和.tar.7z等。正常的和.tar.*变体之间有什么区别?在制作备份时,他们中的哪一位会被告知?

最佳解决办法

如果您来自Windows背景,则可能熟悉zip和rar格式。这些是压缩在一起的多个文件的档案。

在Unix和Unix-like系统(如Ubuntu)中,归档和压缩是分开的。

tar将多个文件放入一个(tar)文件中。

gzip压缩一个文件(仅)。

因此,为了获得一个压缩的压缩文档,您可以将两者合并,首先使用tar或pax将所有文件合并到一个文件(archive.tar),然后使用gzip它(archive.tar.gz)。如果只有一个文件需要压缩(notes.txt),则不需要tar,因此您只需执行gzip notes.txt即可生成notes.txt.gz。还有其他类型的压缩,例如compress,bzip2和xz,其工作方式与gzip相同(除了使用不同类型的压缩技术之外)

次佳解决办法

这取决于你在找什么……压缩或存档?

当我谈论归档时,我的意思是保留权限,目录结构等。

压缩可能会忽略大部分内容,只是将文件放在较小的包中。

要保留文件权限,请使用tar:

tar cpvf backup.tar folder

p标志将保存文件权限。使用z标志进行gzip压缩或使用j标志进行bzip压缩。

tar czpvf backup.tar.gz folder #backup.tgz is acceptable as well

tar cjpvf backup.tar.bz2 folder #backup.tbz2 works too

如果你想有一个tar文件,你可以使用P标志打包tar:”update”:

tar cpPvf backup.tar folder

然后进行更新,用’u’替换’c’,并且在解包时,可以使用’k’保存已存在的文件。

tar upPvf backup.tar folder #updating a tar file

tar xpPkvf backup.tar #extracting a tar with permissions(p) and not extracting(k) files that exist on disk already

P标志以完整路径保存文件,所以 – /home /username vs home /username(注意前导斜杠)。

7z压缩提供更大的压缩,但不保留文件所有权,权限等.Rzip是另一种压缩实用程序,它也提供与7z相当的压缩。

我猜想backup.tar.7z文件只是一个压缩7z文件的tar文件(有权限),但如果压缩出现小问题,我不会感到惊讶,因为7z可能无法转储文件元数据。 It’s 7z’s排除文件元数据的能力,它可以提供很好的压缩(当然还有其他的东西)。

压缩也完全依赖于数据类型。某些文件压缩不好,因为它们可能已经被其他方式压缩(即.mp3,.jpg,.tiff /with lzma,.rpm等)。

第三种解决办法

gzip或bzip2不知道file system – 文件名,目录,树形结构。只是压缩输入流,然后输出结果。即使gzip或bzip2也不能将目录独立存档。这就是为什么结合焦油。

tar(存档) – 只是档案文件结构。 gzip,bzip2(压缩器) – 只是压缩输入。

我认为这个策略来自‘do one thing well’ unix哲学。焦油效果很好?离开它。需要比gzip更多的压缩比率?这里是bzip2或7zip。

第四种办法

它不同的压缩方式,tar本身就被简单归档(很少压缩或不压缩)。 tar.gz是一个tar档案,但内容由gzip(中等压缩)压缩,因此.gz和tar.7z使用7zip压缩(通常是超高压缩)

备份时我会推荐tar.7z,因为它具有最高的压缩率,节省了空间,但使用了额外的程序(7zip)。 .tar.gz将会是更大的文件并且执行相同的工作,您也可以使用bzip(.tar.bz /bz2),尽管我不确定这是否适合您,因为我使用gzip或7zip

第五种办法

通常,* .tar文件只是由tar程序创建的tar文件,* .gz程序由gzip,* .tar.gz(有时也包含* .tgz)为gziped tar文件创建,* .7z由7zip创建。

但是,在Linux /Unix中,无论如何都可以命名文件,因此它完全由文件的创建者决定。

第六种办法

Tar(磁带归档器)传统上被用作Unix /Linux中的一个容器来打包文件以便移动。它打包文件结构并维护文件属性,但不压缩文件。

压缩程序压缩文件使其更小,但它们可能无法处理多个文件,并且/或者它们可能无法处理Linux所需的文件属性。由于tar已经存在并且是well-supported,所以没有理由将程序归档到这个功能上,这是platform-specific(对于Windows和Linux来说是不同的)。而且,不同的压缩程序可能在不同类型的文件上表现不同,因此选择多于一个是合意的。

参考资料

linux tar 7z,.tar.gz和.gz或.tar.7z和.7z有什么区别?相关推荐

  1. Linux下压缩、解压缩、效率,linux tar bz、bz2、gz、zip

    linux入门常用的指令中,属压缩解压缩最容易记混.现在来梳理一下: tar 参数使用: -v 显示操作过程(必加) -f 指定压缩文件(必加) -j 支持bzip2解压文件(bz.bz2后缀的文件) ...

  2. linux下.tar.gz和.gz文件解压详解

    .tar.gz和.gz文件是两种不同的文件,需要区别对待,解压命令当然也不同咯,下面来分享一下他们各自的解压方法. 1. .tar.gz文件,这种文件是tar文件的压缩文件,可以使用tar命令进行解压 ...

  3. linux中解压.tgz, .tar.gz ,zip ,gz, .tar文件

    将.tgz文件解压在当前目录: tar zxvf MY_NAME.tgz 将.tar.gz文件解压在当前目录: tar zxvf MY_NAME.tar.gz tar -xvf file.tar // ...

  4. Linux:文件压缩解压gz、tar.gz、tar.xz、tar.bz2、tgz、zip

    目录 tar.tar.gz.tar.xz.tar.bz2.tgz gz zip tar.tar.gz.tar.xz.tar.bz2.tgz 1.压缩 tar -zcvf 压缩文件名.tar.gz 被压 ...

  5. 解压命令linux tgz,tar 解压_linux中的“tar命令”怎么解压“.tgz”与“.tar.gz”文件?...

    在LINUX下如何将tar压缩文件解压到指定的目录下 一.解压.tar.gz格式到指定的目录下: 命令格式为:tar -zxvf [压缩包文件名.tar.gz] -C  [路径]/ 例如:tar -z ...

  6. linux下压缩gz文件怎么打开,在Linux系统中打开或解压缩.gz文件及提取tar.gz文件的方法...

    本文本文介绍如何打开(或解压缩).gz文件的方法.Gzip是一种流行的压缩算法,可在保持原始文件模式.所有权和时间戳的同时减小文件大小,此算法通常用于压缩Web元素,以加快页面加载速度.按照约定,使用 ...

  7. Linux下解压.tar.gz 和.gz文件解压的方式

    tar.gz 使用tar命令进行解压 tar -zxvf java.tar.gz gz文件的解压 gzip 命令 gzip -d java.gz 解压gz文件到特定目录,tar.gz包内提取某个文件在 ...

  8. gz文件解压 linux,linux下.tar.gz和.gz文件解压详解

    .tar.gz和.gz文件是两种不同的文件,需要区别对待,解压命令当然也不同咯,下面来分享一下他们各自的解压方法. 1. .tar.gz文件,这种文件是tar文件的压缩文件,可以使用tar命令进行解压 ...

  9. Linux解压tar.gz、zip、tar.bz2 文件与对应的命令

    文章目录 xxx.tar.gz xxx.zip xxx.tar.bz2 xxx.tar.gz tar -zxvf xxx.tar.gz xxx.zip unzip xxx.zip xxx.tar.bz ...

最新文章

  1. CentOS 5 升级mysql5.1启动服务时报错
  2. IDEA 不能显示项目里的文件结构
  3. linux 二级域名设置
  4. ES6新特性_ES6扩展运算符的应用---JavaScript_ECMAScript_ES6-ES11新特性工作笔记014
  5. Machine Learning Lecture Notes
  6. 交换机vlan划分实验
  7. WPS for linux 安装及windows字体添加
  8. 怎么将PDF文件分成若干个小文件呢
  9. 【区块链扩容】侧链技术 Plasma(Layer 2)
  10. Java为图片加水印
  11. jsp快递信息管理系统
  12. 协方差矩阵和矩阵相关系数的理解
  13. IIQ文件内gps信息的分析
  14. 【扩展欧几里得】Codeforces Round #406 (Div. 2) A. The Monster
  15. oracle dba导入,“只有DBA才能导入由其他DBA导出的文件”各种解决办法
  16. delta和gamma中性_在期权交易中,Delta、Gamma、Theta、Vega都是什么?
  17. 关于现时构型的ds和初始构型的dS
  18. 嵌入式RFIDIC卡读写模块|读卡刷卡模块HX880D系列的应用与操作说明
  19. GitBook制作电子书
  20. 超分辨率图像重建算法综述

热门文章

  1. 《崔庆才Python3网络爬虫开发实战教程》学习笔记(5):将爬虫爬取到的数据存储到TXT,Word,Excel,Json等文件中
  2. CentOS 7.3 安装与配置vsftp
  3. [技术发展-21]:网络与通信技术的应用与发展快速概览-1- 互联网网络技术
  4. 推荐五款很实用却比较冷门的电脑软件
  5. 【好记性不如烂笔头】排序算法之归并排序(三)小和问题
  6. VB.net:VB.net编程语言学习之添加引用打包安装项目的简介、案例应用之详细攻略
  7. 千亿云计算市场,相见恨晚的企业私有云存储平台
  8. C语言结构体的1字节对齐(代码实现)
  9. 开源OA协同办公平台搭建教程丨服务器端命令:数据导入导出及配置
  10. Python实操 :破解密码