質問: 「apt-get」と「aptitude」の本当の違いは何ですか? (「wajig」はどうですか?) 両方ともapt-getおよびaptitudeは、debian派生linuxのコマンドラインパッケージ管理インターフェースであり、さまざまなオプションがありますが、まだ混乱しています。内部では、同じaptシステムを使用していませんか?debianはなぜこれらの並行ツールを維持しているのですか? (ボーナス質問:一体何が wajig ?)
回答: 最も明らかな違いは、aptitudeがターミナルメニューインターフェースを提供する(ターミナルのsynapticによく似ている)のに対し、apt-getは提供しないことです。それぞれのコマンドラインインターフェイスのみを考慮すると、それらは非常によく似ており、ほとんどの場合、どちらを使用するかは問題ではありません。両方の最近のバージョンでは、手動でインストールされたパッケージと、依存関係としてインストールされた(したがって、自動削除の対象となる)パッケージが追跡されます。実際、さらに最近では、2つのツールが更新され、手動でインストールされたパッケージと自動的にインストールされたパッケージの同じデータベースを実際に共有するようになりました。過去。いくつかの小さな違いがあります: aptitudeは適格なパッケージを自動的に削除しますが、apt-getを実行するには別のコマンドが必要です pgrade対dist-upgradeのコマンドは、aptitudeでおそらくより正確な名前safe-upgradeおよびfull -upgrade、それぞれ。 aptitudeは実際にはapt-getだけでなく、apt-cacheやapt-markなどのいくつかの関連ツールの機能も実行します。 aptitudeには検索のためのわずかに異なるクエリ構文があります(apt-cacheと比較して) aptitudeにはwhyおよびwhy-notコマンドがあり、どのmanually installedパッケージが、実行したいアクションを妨げているかを通知します。 実行したいアクション(パッケージのインストール、削除、更新)が競合する場合、aptitudeはいくつかの潜在的な解決策を提案できます。 apt-getは、「申し訳ありません、daveです。それを許可することはできません。」 他にも小さな違いはありますが、それらは私が考えることができる最も重要なものです。要するに、aptitudeはsynapticや他の高レベルのパッケージマネージャーフロントエンドのカテゴリに適切に属しています。たまたまapt-getに似たコマンドラインインターフェイスもある。ボーナスラウンド:wajigとは何ですか?apt-cacheやapt-markなどの「コンパニオン」ツールについて、どのように説明したか覚えていますか?ええと、それらはたくさんあります。それらを頻繁に使用すると、どのコマンドがどのコマンドを提供するか覚えていないかもしれません。 wajigはその問題の1つの解決策です。これは基本的にディスパッチャであり、これらすべてのツールのラッパーです。また、必要に応じてsudoを適用します。 wajig install fooと言うと、wajigは「ok、installはapt-getによって提供され、管理者権限が必要です」と言ってsudo apt-get install fooを実行します。 wajig search fooと言うと、wajigは「ok、searchはapt-cacheによって提供され、管理者権限を必要としません」と言い、apt-cache search fooを実行します。 apt-get、apt-mark、apt-cacheなどの代わりにwajigを使用すると、この問題が発生することはありません。$ apt-get search foo e: invalid operation search wajigが舞台裏で何をしているか、特定のコマンドを実装するためにどのツールを使用しているかを知りたい場合は、--simulateおよび--teachingモードがあります。私がよく使用する2つのwajigコマンドはwajig listfiles fooとwajig whichpkg /usr/bin/fooです。