一般的に、私は次のことを観察しました。
質問:
利用可能な圧縮形式と方法は多種多様であり、まったく圧縮せず、1つのアーカイブに多数のファイルを保存するように設計されているものや、その他の新しい実験用コンプレッサー( [〜#〜] paq [〜 #〜] ベース)は、上記の操作の実行にかかる時間に関係なく、可能な限り積極的に圧縮するように設計されています。
圧縮方法の選択から必要な機能を評価し、それが使用されるコンテキストも考慮する必要があります。
さまざまな機能と考慮事項は次のとおりです。
一般的に言えば、Zipが最も普及している形式ですが、4 GBを超えるサイズは一般的にサポートされていません(あるとしても)。セキュリティサポートは一般に不十分と見なされます(標準パスワードはプレーンテキスト攻撃で侵害される可能性があり、さらに暗号化は一般に商用Zipソフトウェアベンダーによる形式の非公式な派生物として実装されます)。
それとは別に、他のほとんどの一般的な形式は、より多くのソフトウェアをインストールすることにより、すべてのオペレーティングシステムで何らかの形でサポートされます。
私の個人的な選択は7-Zipです。これは、優れた柔軟な圧縮機能を備えているためです。それはWindows上で独特のユーザーインターフェースを持っているにもかかわらず。 LinuxおよびMacOS X用のデコンプレッサがあります(ただし、標準でGUIベースではありません)。
頭に浮かぶことの1つは、Jeff Atwoodからの(2年前の)ブログ投稿です: マルチコア時代のファイル圧縮 。その記事で彼は、3つ以上のコアを実行している場合、bzip2が7-Zipよりも優れていることを発見しました。
最初の質問ですが、7-Zipは、多くのアルゴリズムを使用してデータを圧縮および解凍できるアーカイバです。
2番目の質問では、プラットフォームが特定の形式をサポートするツールをサポートしていることを確認してください。たとえば、Macでは [〜#〜] rar [〜#〜] の使用は避けます。使用することは可能であり、それをサポートする無料のユーティリティがありますが、RARをサポートするWindowsユーティリティが持っているはるかに豊富なインターフェイスが欠けています(私の経験では)。
他の人が述べたように、特定の圧縮形式の選択は、使用法と対象読者に大きく依存します。
.tar.gzおよびtar.bz2アーカイブは、Linuxシステムでの使用に最適です(および拡張機能としてLinuxユーザーとファイルを共有するため)。tar、gzip、およびbzip2ツールはプラットフォーム上でほぼ遍在し、.tar形式は完全であるためです。 Unix権限およびその他のプラットフォーム固有のプロパティのサポート。 tarアーカイブを圧縮するためのgzipとbzip2のどちらを選択するかは、主に速度と圧縮率の決定であり、bzip2はより小さなファイルを配信しますが、圧縮速度ははるかに遅くなります。これらの形式の欠点には、Windowsとの互換性が低く、単一のファイルを抽出するためにアーカイブ全体を解凍する必要がある(潜在的な)ことが含まれます。
Zipアーカイブは、ネイティブツールを使用してほとんどのプラットフォームで抽出できるため、7-Zipなどのサードパーティのアーカイブソフトウェアのインストールに不安を感じる技術者以外のユーザーにアーカイブを送信する場合に最適です。圧縮レベルは、より高度なアルゴリズムほど良くなく、Unixのアクセス許可をサポートしていませんが、たとえば、休日の写真のアーカイブを祖母に送信したい場合は、優れた形式です。 Zipは、基本的なパスワード保護も提供し、アーカイブ内のどこからでもファイルをすばやく抽出できます。
可能な限り最高の圧縮率が必要な場合は、7-Zipが適しています。 Zipと同様に、Unixファイルのアクセス許可や所有権をサポートしておらず、ほとんどのプラットフォームにデフォルトでインストールされていないため、使用する作業が少し多くなりますが、圧縮率の向上が重要な場合は、Windowsで使用する価値があります。すべてのLinux環境では、「xz」または「lzma」圧縮ツールをtarと一緒に使用することをお勧めします。これらは、「gzip」および「bzip2」とまったく同じように動作しますが、7などのより高度なLZMAアルゴリズムを使用します。 -Zip。
例として、これらの場合に前述の形式を使用します。
私はRARを避けます私が知っている誰かからRARファイルを受け取るときはいつでも、それはプロプライエタリであり、おそらく彼/彼女はライセンスのないソフトウェアを使用しているので、そのフォーマットの使用をやめるように彼/彼女に言います(ほとんどの人WinRARの試用版をダウンロードして、永久に使用し続けてください)。
PS:私はUbuntu(主に)とWindows(デュアルブートとVirtualBoxの両方)を実行しています。
人気のあるツールがそれらを統合しているためにしばしば混同される少なくとも4つの別々の仕事があります:
.tar.gzと.tar.bzの遍在性は、すべてを実行する単一のツールではなく、単一のジョブを適切に実行する小さなツールというUnix哲学に対応しています。 TARファイル形式は圧縮または暗号化をサポートしていませんが、任意のコンプレッサー(.tar.Zipまたは.tar.7zを含む)でさらに圧縮できます。 GZipとBZip2の仕事は、単にファイルストリームを別のファイルストリームに圧縮することです。圧縮層は、メタデータ、暗号化、またはチェックサムを保持する方法を気にする必要はありません。しかし、時間の経過とともに、コンプレッサーをより便利に操作するために、tar
プログラムにいくつかのショートカットが作成されました。
Zipおよび7zファイル形式では、これらの個別のジョブは、単一のスーパーファイル形式の単一のプログラムによって実行されます。
これらはすべてポータブル形式であるにもかかわらず、なぜ上記の傾向が維持されているように見えるのですか?特定のプラットフォームで特定のアーカイブ形式を使用することに特別な利点はありますか?
プログラミングに使用されるさまざまなツール(makeなど)ではファイルのアクセス許可や変更時間などを保持することが重要であるため、プログラムのソースコードは従来から.tar.gzまたは.tar.bz2として配布されていました。
個別のアーカイブと圧縮のステップは何年にもわたって非常にうまく機能しており、アーカイブと圧縮を自由に組み合わせることができるという明らかな利点があり、その欠点(2ステップの圧縮プロセス)は、よりスマートなツールを開発することで簡単に回避できます(最新のLinux圧縮プログラムのほとんどは、.tar.gzまたは.tar.bz2に直接圧縮し、中間ステップを非表示にします)。
他のファイル形式に移行する強い理由はありません。新しいコンプレッサーは、伝統を破ることを正当化するための大幅に優れた圧縮率を備えておらず、tarはすべてを十分に保存できます。