aptitudeはapt-getよりも優れているとまだ考えられていますか?


191

Ubuntuを初めて使用したときaptitudeは、「in-thing」を使用していましたが、いくつかの改善点がありましたapt-get。私apt-getは今、それが「追いついた」と言って正しいaptitudeですか?それは使用されているものとほとんど違いがありません(ただし、どちらかを選択し、それに固執することが望ましいです)?

さらに、aptitudeデフォルトのUbuntuインストールから削除されるように設定されている場合apt-get、特にCLIに興味のある新しいユーザーをガイドする場合、誰もがに戻る必要がありますか?


1
今日のクールな子供たちaptは、それらのいずれかの代わりに使用します:itsfoss.com/apt-vs-apt-get-difference
tatsu

回答:


131

私が見る限り、10.04では、aptitudeとapt-getの主な違いは次のとおりです。

  1. aptitude明示的なパッケージごとのフラグを追加し、依存関係を満たすためにパッケージが自動的にインストールされたかどうかを示します。これらのフラグ(aptitude markautoまたはaptitude unmarkauto)を操作して、aptitudeがパッケージを処理する方法を変更できます。

    apt-get同じ情報を追跡しますが、明示的に表示しません。apt-markフラグの操作に使用できます。

  2. aptitudeは、インストールされたパッケージを削除するたびに未使用のパッケージを削除するよう提案しapt-getますが、明示的にwith apt-get autoremoveまたは指定するように求められた場合にのみ削除します--auto-remove

  3. aptitude両方における機能のほとんどを単一のコマンドラインのフロントエンドとして機能apt-getし、apt-cache:16.04の時点でapt、最も一般的に使用されるコマンドといくつかの追加機能を含むコマンドがapt-getありapt-cacheます。

  4. apt-cacheの「検索」とは対照的に、aptitude「検索」の出力には、パッケージのインストール済み/削除済み/パージ済みのステータス(およびaptitudeの独自のステータスフラグ)も表示されます。また、「インストール」出力は、依存関係を満たすためにインストールされているパッケージと、未使用のため削除されているパッケージをマークします。

  5. aptitude (テキストのみ)対話型UIがあります。

私は個人的aptitudeにコマンドラインパッケージ管理にのみ使用しています(テキストUIは使用しません)。その出力はapt-get/ よりも読みやすいと思いますapt-cache

ただし、aptitudeUbuntuで標準ではなくなった場合はapt-get、手順とハウツードキュメントで使用する以外に選択肢はありません。

(個人的には、10.10でそれが消えるのを見るとかなりがっかりします。特にaptitudeの改善apt-getはほとんどユーザビリティ側にあるためです。コマンドラインを使用しない人は気にしません...)


10
パッケージ名のaptitude search'es、パッケージ名のapt-cache + description(すべてのハウツーをで始める必要がありますsudo apt-get install aptitude
-LassePoulsen

3
2.ただし、apt-getは未使用のパッケージがあり、で削除できることを通知しますapt-get autoremove
sepp2k

2
apt-getのことで行ったように適性の欠点の1つは、ピン止めを検討することができないことである
txwikinger

4
Aptitudeは正しく読み取り/etc/apt/preferences(およびその中の固定)しますが、現在は無視し/etc/apt/preferences.d/ます。これは既知のバグであるため、すぐに修正される可能性があります。
リッカルドムリ

3
Aptitudeには、変更ログを簡単に取得するオプションがありますaptitude changelog package-name。私はそのような機能をに認識していませんapt-get
レーケンシュタイン

21

今では個人的な選択の問題だと思います。私はタイピングaptitude searchが私よりも理にかなっているapt-cache searchと思うし、実行する代わりに、検索出力でそこにインストールしたパッケージを教えてくれるのが好きですdpkg -l


2
検索中にアプリケーションがインストールされているかどうかを確認できることは非常に便利です。apt-cache検索はaptitude検索よりもはるかに高速であることがわかりました。
マークデビッドソン

私はapt-cache検索に2文字のbashエイリアスを使用aptitude searchします。または、おそらく同様に使用します。
ベラク

私が見つけたapt-getのは、探索よりも徹底的であることに気づいたaptitude。後者はパッケージ名のみを見るようですが、前者も説明を検索するようです。例えばを検索してみてくださいbuild-essential
スパーホーク

13

以前のapt-getは依存関係を適切に管理しなかったため、それらを使用していたパッケージがアンインストールされた後でも、孤立した依存関係がシステムに残る-これは、孤立した依存関係を削除するために使用されなくなりました

sudo apt-get autoremove

aptitudeは常にこれを正しく行い、依存関係をよりよく追跡しますが、現在は両方のパッケージマネージャーが仕事をしています。

Ubuntuでは、apt-getを使用する方が適切です。これは、会社によってサポートおよび承認されているためです。debianでは、aptitudeを使用します


2
最後の文は正確ではありません。aptitudeUbuntuで問題なくサポートされており、デフォルトでインストールされます。その点でもUbuntuとDebianの間に違いはありません。
loevborg

3
10.10にデフォルトのインストールから削除されます
kashif

1
私の経験でaptitudeは、インストールされた依存関係の追跡は常に劣っていました。それはプログラムを削除するときに無関係なものを削除する傾向があり、その過程で他のプログラムを壊してしまいました
...-Izkata

何それと同等apt-get autoremoveaptitudeapt-get autoremove削除することを勧める古いカーネルがありますが、で削除する方法はありませんaptitude
アレクセイ

1
@Alexeyを使用できますaptitude remove '~g'。(ソースaptitudeパッケージを削除すると、未使用の依存関係を自動的に削除するように提供することに注意してください。
-nyuszika7h

6

他の答えに加えて、apt-get単純な操作ではしばしば顔を出し、依存関係のバージョンの不一致や壊れたパッケージを処理する能力がないことに注意する価値があります(壊れたパッケージはで修正できると主張していますがapt-get install -f、私は文字通り私の人生でその仕事を見たことがない)。

何らかの理由で、私はまだ使用してapt-get、デフォルトでは、それは問題に遭遇したとき、私は通常とそれらを解決終わるaptitude遭遇すると思われることはありませんこれは、apt-getの多くの問題を。


私も同様の紛争解決の経験aptitudeがあり、その意味でより良い代替案です。
ヴォルカンヤズーチ

1
記録のために、私はapt-get install -fが私のシステムを修正するのを見ました。aptitudeに問題があったため、これを修正し、最初にapt install aptitudeをしました:)選択は良いことです(tm)
teknopaul

3

私の個人的な経験では、aptitudeとapt-getの機能は非常に似ています。

ユーザーの選択に影響を与える可能性のある主な違いは、aptitudeがncursesインターフェイスを提供し、安全アップグレードと便利なオプションを提供することです。

個人的に私は常にapt-getを使用し、新しいユーザーもapt-getを使用することをお勧めします。あなたが言ったように、デフォルトでUbuntuからaptitudeが削除されるように設定されているので、これが依然として最良の推奨事項のようです。彼らがaptitudeを使いたかったかのように、必要に応じてapt-getを使用してaptitudeをインストールする方法を知る必要があります:)


ncursesインターフェースが何であるかを説明してもらえますか?
8128

@fluteflute:ncursesは、テキストユーザーインターフェイスを実現するために使用されるライブラリです。en.wikipedia.org/wiki/Ncurses
dierre

1

サーバーでは、パッケージの変更ログ、選択的なアップグレードなどをチェックするための非常に優れたインターフェースが付属しているため、Atitudeが好きです。apt-getはより高速ですが、あまり面倒なことなくすべてを更新したい場合は常にそれを使用します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.