bsdtarとGNU tarの違いは何ですか?

bsdtarとGNU tarの違いは何ですか?

私はいつもGNUを使ってきましたtar。しかし、私が見たすべてのGNU / Linuxディストリビューションはbsdtarリポジトリにそれを提供します。一部のIIRCでは、デフォルトでインストールされているケースも見ました。私はPKGBUILDで見たように、Arch GNU / Linuxがbasedevel(たぶんbase、わかりませんが)の一部としてそれを要求すると確信しています。

bsdtar代わりになぜGNUを使用したいのですかtar?利点は何ですか?

私が質問者であることを参照してくださいBSDとGNU / Linuxユーザースペースの主な違いは何ですか?

ベストアンサー1

Ubuntuは実際にはbsdtartarの実装でバンドルされています。libarchiveこれは古典的なものとは異なるはずですbsdtar。一部のBSDバリアントはlibarchiveFreeBSDなどのtar実装を使用します。

GNUtar実際にサポート他のtar変種自動圧縮検出。

〜のように可視化する貼り付けた内容は、特定の内容を含むUbuntuの紹介ですlibarchive

  1. libarchivebsdtar定義によると、これは既存のライブラリとは異なり、ライブラリですGNUtar
  2. libarchiveいくつかの古いよく知られていないGNU tarバリアントは読むことができません。特に、一部のヘッダーはbase64でエンコードされているので、tarファイルは7ビットの純粋なASCIIになります(これは1.13.6-1.13.11の場合であり、1.13から変更されました。
  3. libarchivebsdtartar以外のファイル(zip、iso9660、cpioなど)を読み込みますが、古典的なbsdtarは読みません。

これでlibarchive問題が解決したので、ほとんどがクラシックでサポートされているものに帰結しますbsdtar

ここでマンページを見ることができます。

もともと質問でクラシックのメリットが何であるか尋ねましたが、bsdtar実際にそのようなメリットがあるのか​​よくわかりません。本当に重要なのは、すべてのシステムで実行する必要があるシェルスクリプトを作成する場合は、渡した内容がすべてのバリアントでtar実際に有効であることを確認する必要があることです。

GNUtarlibarchive' bsdtar、classic bsdtar、'はもちろん、ほとんどの場合接するtar実装ですが、(初期QNXなど)他の実装もあると確信していますstar。 //機能が最も豊富ですが、多くの点で元の標準から外れてから古い(おそらくより良い方向)。BusyBoxtarlibarchiveGNUtarstar

おすすめ記事