私はUbuntuでソフトウェアのインストールがどのように機能するかを理解しようとしている初心者です。私はシステムに多くのソフトウェアをインストールしましたが、何かをインストールしたいときはいつでも、それがどのように機能するかを本当に理解せずにグーグルでフォローします。
Sudo apt-get install
ソフトウェアをインストールする方法がたくさんあるのはなぜですか?違いはなんですか?これらの異なるインストール方法はどのように機能しますか?ヘルプまたはリンクをいただければ幸いです。
各方法を順を追って説明します。
apt-get
はDebian PPAシステムを使用してソフトウェアをインストールします。これは、ソフトウェアセンターからソフトウェアをインストールするときにバックグラウンドで実行されます。dpkg
はさらにバックグラウンドにあります。 Ubuntuは、単にソフトウェアを管理するのではなく、実際にソフトウェアをインストールするために使用します。 apt-get
などの高レベルのメソッドは実用性に優れているため、このメソッドを使用できる場合は使用しないでください。apt-get
を好む傾向がある上級ユーザー向けには設計されていません。ただし、一般ユーザーはUbuntuエコシステムにアクセスしやすくなります。apt-get
に代わるGUIのようなものです。 apt-get
の場合、パッケージの名前を知る必要があります。代わりに、Synapticはコンピューターが認識しているパッケージをリストし、クリックすることでそれらをインストールできます。ソフトウェアセンターよりも高度であり、apt-get
の使用方法は同じです。sources.list
へのリンクを追加すると、キーが必要なPPAを追加できます。これは、Google Chromeなどの一部の専用アプリをインストールする方法です。これを行っても実際にアプリがインストールされるわけではありません。ソースを更新し、apt-get install
を実行するか、後でSynapticを使用する必要があります。 Sparhawkが言ったように、これらは公式リポジトリにも使用できますが、PPAは使用できません。apt-get
がdpkg
より優れている主な理由です。 apt-get
は更新を提供できますが、dpkg
は提供できません。 Sparhawkが言ったように、PPAはPersonal Package Archiveの略であることに注意することが重要です。これらは公式リポジトリではなく、sources.list
に属します。Ubuntu(またはGNU/Linux)にソフトウェアをインストールする方法はたくさんあるように思えるかもしれませんが、実際にはすべてのアプリケーションが行うことは1つだけです:適切な場所にある異なるファイルをコピーし、システムを認識させる## 新しいソフトウェアが追加されたこと
##場合によっては、$HOME
などのディレクトリに手動でソフトウェアをインストールするか、.bin
ファイルを使用して、システムがインストールを認識しない場合があります)
apt-get
およびdpkg
は、ソフトウェアのインストールに使用できるコマンドラインツール(バックエンド)です。ソフトウェアセンターよりも比較的困難ですが、より多くの機能を提供します。
Ubuntu software center
およびsynaptic package manager
は、コマンドラインツールを使用してソフトウェアをインストールするGUIツール(フロントエンド)です。それらは比較的簡単に使用できますが、機能が少なくなります。
sources.list
は、ppa
が保存されているファイルです。 ppa
は、apt-get
がソフトウェアの検索、インストール、更新に使用するリンクの一種です。
必要なファイルを適切な場所に手動でコピーして、ソフトウェアをインストールすることもできます。
Dillmoの答えは、あなたが言及したすべての方法を網羅していますが、さらに2つの手動のインストール方法が考えられます。
バイナリを手動でダウンロードし、コンピューターから直接実行する必要がある場合があります。たとえば、公式リポジトリには1年前のベータがあったため、学術引用ソフトウェア Jabref を使用してこれを行う必要がありました。
他の方法は、実際にソースから構築しています(つまり、build
、make
、install
を使用)。最近、KDEウィジェット「 STDIN plasmoid 」に対してこれを行いました。 checkinstall と呼ばれる優れたユーティリティもあり、これらの手動ビルド用の偽のパッケージを作成し、アンインストールを容易にします。
「ソフトウェアをインストールする方法がたくさんあるのはなぜですか」という質問に対する答えとして、主に2つの理由があります。 Dillmoが述べているように、一部は他のバックエンドです。これは、さまざまなフロントエンドとGUIの使いやすさを好むためです。
主に上記の例に関連するもう1つの理由は、可用性です。一部の開発者はUbuntu専用にパッケージ化していないため、手動でインストールする必要があります。