web-dev-qa-db-ja.com

Ubuntu(et al)で使用されているリポジトリシステムのコンセプトの長所と短所は何ですか?

WebからアプリケーションをダウンロードしてインストールするWindowsおよびMacシステムよりも優れていますか?

3
akshatj

1つの中央リポジトリからソフトウェアをインストールすることには、良い点と悪い点があります。

良い:

  • すべてが1か所にあるので、どこを見るかわかります。
  • 本当に簡単なカタログタイプのアプリケーション(aptitude、synapticなど)を可能にします
  • 優れたディストリビューションはリポジトリをかなり厳密に維持するため、かなりの品質管理が行われます。つまり、信頼できないソースよりもリポジトリからソフトウェアを信頼できるということです。
  • ソフトウェアの依存関係の非常に豪華な自動解決を行うことができます(まあ、それを行うことができますもっと簡単に少なくとも)
  • 更新の単一ソース-個々のアプリ(またはアプリのWebサイト)の更新を確認する必要はありません。すべて1か所で更新されます
  • これにより、OSのすべての既知の良好なソフトウェアを世界中のさまざまなサーバーにミラーリングできます(たとえば、私が作業している場所ではUbuntuレポミラーを維持しています)。

悪い:

  • リポジトリ外の他のソースからインストールするのは簡単ではありません
  • 独占的というよりもオープンソースソフトウェアを対象としています
  • それは制限を感じます。リポジトリにいない場合はレーダーにありません(ただし、はい、リポジトリの外部からソフトウェアをインストールすることはできますが、非常に難しいため、多くの人が気にする必要はありません)

全体として、ほとんどのLinuxディストリビューション(実際には、おそらくほとんどのUNIX)の短所を長所が上回っています。これが、Unixの世界で多く使用されている理由です。さまざまな方法で使用されます。 ubuntuのdeb/aptリポジトリ、Fedora/redhat/others rpm/yum repos、* bsdのportsツリー、gentooのportage、pkgsrcなど、リストは続きます。それらのいくつかは他のものより良い仕事をします:)

11
Ben Williams

おそらくより良い質問は、xとyのパッケージマネージャーの違いは何ですか?

Mac OSパッケージマネージャー:Darwinports

Windowsパッケージマネージャー:Windows_update

ますます動きがリポジトリの方向になり、ウェブページからのダウンロードから離れて、あなたは「なぜ?」と尋ねています。本当に、これを見る最善の方法は、すでに書かれていることを読むことです:

"影響

Ian Murdockは、パッケージ管理は「Linuxが業界にもたらした最大の進歩」であり、オペレーティングシステムとアプリケーションの境界を曖昧にし、「新しいイノベーションを[...]マーケットプレイスと[...] OSを進化させます "。[1]"

-wikipedia、パッケージ管理

信頼性は、セキュリティの追加に加えて、パッケージ管理の主な利点です。 http://packages.ubuntu.com にアクセスして、サポートされているすべてのソフトウェアを文字通り見るのも簡単です。パッケージマネージャーのボックス内でプレイしている限り、物事は自動的に機能し、安全です。もちろん、標準の警告エンプター条件があります。もしそれが本当に完璧に機能すれば、メーリングリストは必要ありません。

これを、レジストリの "修正"や、パッケージマネージャーがない場合のそのようなメンテナンスと比較してください。 Macでは、サードパーティソフトウェアの「公式」パッケージマネージャーがないことは非常に注目に値しますが、私のウィキペディアを読むと、Mac OSユーティリティはなんらかのパッケージマネージャーに含まれていますが、名前はわかりません。

2
Thufir

まず、「Linuxリポジトリシステム」は実際には1つではありません。各Linuxディストリビューションは、使用するパッケージ管理システム(または1つを使用するかどうか)を自動的に決定し、通常は独自のリポジトリを持っています。

Ubuntuは、Debianのdpkg/aptパッケージ管理システムをUbuntu独自のリポジトリで使用します。これが基本的にどのように機能するか:aptを介してインストールできるアプリケーションごとに、基本的にアプリケーションのファイル(Ubuntu用にコンパイルされた実行可能ファイルを含む)といくつかのメタデータを含む圧縮されたアーカイブであるdpkg-packageがあります。パッケージの説明とパッケージの依存関係。これにより、パッケージマネージャーは、パッケージをインストールする前に他にインストールする必要があるパッケージを認識します(たとえば、ゲームにopenglとSDLをインストールする必要がある場合、gnomeアプリケーションにはgnomeをインストールする必要があります。インストール済みなど)。

現在、リポジトリは、特定のUbuntuバージョンのパッケージがUbuntuのパッケージメンテナによってアップロードされる場所です。次に、Aptは使用可能なリポジトリーを参照して、インストールするパッケージとその依存関係を見つけ、ダウンロードしてインストールします。

これは、自分ですべてをダウンロードするよりも優れています。a)すべてを自分でダウンロードする必要がないb)すべての依存関係を見つけるためにWeb全体を探し回る必要がない、c)Windowsのような状況にならない各ゲームは独自のバージョンのDirectXをインストールします。

2
sepp2k