何らかの理由で、私は常にRPMベースのディストリビューション(Fedora、Centos、および現在openSUSE)を使用してきました。私はしばしば人々がdebがrpmより優れていると言うのを聞いています。しかし、理由を尋ねたとき、決して一貫した答えを得ることはできません(通常、情熱的な好言状と多くの唾液を吐きます)。
いくつかの歴史的な理由があるかもしれないことを知っていますが、2つの異なるパッケージング方法を使用する現代のディストリビューションの場合、どちらか一方と他のものの技術的(または他の)利点を伝えることができる人はいますか?
ベストアンサー1
多くの人は、ソフトウェアのインストールをDEBとapt-get
比較して、rpm -i
DEBが良いと言います。しかし、これはDEBファイル形式とは何の関係もありません。実際の比較はdpkg
vsrpm
とaptitude
/ apt-*
vs zypper
/ですyum
。
ユーザーの観点から見ると、これらのツール間に大きな違いはありません。 RPMとDEBの両方の形式は、いくつかのメタデータが添付されたアーカイブファイルです。どちらも同じように曖昧で、インストールパスがハードコードされている(うん!)、マイナーな詳細だけが異なります。dpkg -i
どちらもrpm -i
コマンドラインで指定されていない限り、依存関係をインストールする方法はわかりません。
apt-...
これらのツールに加えてzypper
。yum
これらのツールはリポジトリをダウンロードし、すべてのメタデータを追跡し、自動的に依存関係をダウンロードします。各個別パッケージの最終インストールは、下位レベルのツールに委ねられます。
これは、完了するのに長い時間がかかる大量apt-get
のメタデータを迅速に処理するのに長い間優れていました。yum
RPMはrpmfindなどのサイトの影響を受けます。このサイトでは、10を超えるディストリビューションに互換性のないパッケージを見つけることができます。Apt
DEBパッケージのこの問題は、すべてのパッケージが同じソースからインストールされるため、完全に隠されています。
私の考えでは、これがzypper
実際にギャップを減らし、apt
RPMベースのディストリビューションを使用するのを恥じる理由はありません。 OpenSUSEビルドサービスを使用して互換性のあるパッケージの巨大なインデックスを取得するのも簡単ではありませんが、それは良いことです。