apt-get
、aptitude
、およびsynaptic
の違いは何ですか?また、通常の日常的なパッケージ管理に推奨される選択肢はどれですか?
これは基本的な質問ですが、サイトに掲載しておくと良い情報になると思います。さらに、Ubuntuは比較的初心者なので、専門家の説明を使用できます。
おそらく最も人気のあるパッケージマネージャーは、apt-get、aptitude、synaptic、およびSoftware Centerです。他にもあります(Linux Mintには独自のものがあり、KDE用に設計されたものもあります)が、これらは最も頻繁に遭遇するものです。
apt-getはシンプルなコマンドラインツールです。インストールしたいものの正確なパッケージ名を知っていて、GUIをクリックして取得したくない場合に便利です。
aptitudeはapt-getに非常に似ており、クレイジーな依存関係の状況によりうまく対処できると聞いています。どちらが本当に良いかは議論の余地があります。
synapticは低レベルのGUIです。これは、かなり高度なユーザーであるが、コマンドラインユーティリティに慣れていない場合に適しています。
Software Centerは、非常に高レベルで、使いやすいGUIです。ソフトウェアは適切に分類されているため、必要なアプリが正確にわからない場合は、必要なものをすばやく見つけることができます。また、Software Centerは、このリストで商用アプリケーションを購入できる唯一のパッケージマネージャーであるという点でも際立っています。
dpkgは、ほとんどのDebianベースのシステムであまり使用されていない低レベルのパッケージマネージャー標準です。現実には、apt-get、aptitude、synaptic、およびUbuntu Software Centerはすべてdpkgまたはaptのフロントエンドであり、それ自体がdpkgのフロントエンドです。
「通常の日常的なパッケージ管理に推奨される選択肢」という質問に対する答えとして、Software Centerはほとんどの用途に推奨されると言えます。しかし、より多くの経験を積むにつれて、低レベルのパッケージマネージャーの機能のいくつかが役立つことに気付くでしょう。
Debian FAQ には、さまざまなパッケージマネージャーのかなり良い説明があります。 (dpkg
、apt-get
、aptitude
、tasksel
、synaptic
)
mac9416の優れた答え に加えて、KubuntuはUbuntuと同じコマンドラインツール、つまりdpkg
、apt-get
、およびaptitude
を提供します。 2つのグラフィカルパッケージマネージャーもあります。
Adeptはapt-get
の簡単なGUIであり、ソースリストの編集、カテゴリまたは名前によるパッケージの閲覧、ステータスの確認、そしてそれらをインストール/アンインストールします。
KPackageKitは、PackageKitのシンプルなGUIです。これは、舞台裏でapt-get
を使用する新しいクロスディストリビューションパッケージ管理システムです。さまざまな条件でプログラムを検索したり、プログラムをインストールおよびアンインストールしたり、定期的にアップグレードしたり、ソースリストを編集したりできます。
私は個人的にapt-getを好んでいます。なぜならそれはコマンドラインプログラムだからです。また、パッケージをインストールするための構文は非常に簡単です。
sudo apt-get install パッケージ名
パッケージのインストールと削除には、apt-getを毎日使用しています。
SynapticはGUIベースであり、aptitudeはテキストベースです。
基本的に、それらは低レベルでのみ異なります。
dpkg:適切なパッケージマネージャーでさえない、aptはそれを使用する
apt-get:コマンドライン、パッケージ名がわかっている場合のみ
aptitude:テキストベースですが、ユーザーフレンドリー
synaptic:GUIのaptitudeと同等
ソフトウェアセンター:日常ユーザー向け
ところで、これらはすべてUbuntuの唯一のパッケージマネージャーであるaptのフロントエンド(dpkgを除く)です。
上記の注意を逃れたaptitudeとapt-getの主な違いの1つは、apt-get
とは異なり、aptitude
が依存関係の衝突がある場合に異なるオプションを提供することです。 apt-get
は単に失敗します。 aptitude
は、そのため、はるかに柔軟で多用途です。 GUIパッケージマネージャーを使用したことがないので、Synapticなどがこのような状況をどのように処理するかわかりません。
ほとんど言及されていない他のツールの1つはtasksel
です。特定のタスクを選択し、インストール用にマークしてからインストールするために使用されます(おそらく[aptitude
-不明)。
tasksel --list-tasks
を実行して、使用可能なタスクを確認します。