簡単な説明:Ubuntuおよびその他のLinuxディストリビューションでのPPAの使用に関するほとんどすべての質問をカバーする詳細な記事。
Ubuntu、またはLinux Mint、Linux Lite、Zorin OSなどのUbuntuベースの他のLinuxディストリビューションを使用している場合は、この種の3つの魔法のラインに出くわした可能性があります。
sudo add-apt-repository ppa:dr-akulavich/lighttable
sudo apt-get update
sudo apt-get install lighttable-installer
多くのウェブサイトは、Ubuntuにアプリケーションをインストールするためにこれらの種類の行を提案しています。これは、PPAを使用したアプリケーションのインストールと呼ばれるものです。
しかし、PPAとは何ですか?なぜ使われるのですか? PPAを使用しても安全ですか? PPAを適切に使用する方法は? PPAを削除するにはどうすればよいですか?
この詳細なガイドで、上記のすべての質問に答えます。 PPAについてすでにいくつか知っている場合でも、この記事があなたの知識に追加されると確信しています。
私はUbuntuを使用してこの記事を書いていることに注意してください。したがって、ほとんどすべての場所でUbuntuという用語を使用しますが、説明と手順は他のDebian/Ubuntuベースのディストリビューションにも適用できます。
PPAとは何ですか?
PPAはPersonalPackageArchiveの略です。 PPAを使用すると、アプリケーション開発者とLinuxユーザーは、ソフトウェアを配布するための独自のリポジトリを作成できます。 PPAを使用すると、新しいソフトウェアバージョンや公式のUbuntuリポジトリから入手できないソフトウェアを簡単に入手できます。
それは理にかなっていますか?おそらくそうではありません。
PPAを理解する前に、Linuxのリポジトリの概念を知っておく必要があります。ただし、ここでは詳しく説明しません。
リポジトリとパッケージ管理の概念
リポジトリは、さまざまなソフトウェア、それらのバージョン、およびチェックサムなどの他の詳細に関する情報を含むファイルのコレクションです。 Ubuntuの各バージョンには、4つのリポジトリの独自の公式セットがあります。
- メイン –Canonicalがサポートする無料のオープンソースソフトウェア。
- 宇宙 –コミュニティが管理する無料のオープンソースソフトウェア。
- 制限付き –デバイス専用のドライバー。
- 多元宇宙 –著作権または法律上の問題により制限されているソフトウェア。
ここで、すべてのUbuntuバージョンのそのようなリポジトリを見ることができます。それらを閲覧したり、個々のリポジトリに移動したりできます。たとえば、Ubuntu16.04のメインリポジトリはここにあります。
つまり、基本的には、ソフトウェアに関する情報を含むWebURLです。システムはこれらのリポジトリがどこにあるかをどのように認識しますか?
この情報は、ディレクトリ/ etc/aptのsources.listファイルに保存されます。そのコンテンツを見ると、リポジトリのURLが含まれていることがわかります。先頭に#が付いている行は無視されます。
これで、コマンドsudo apt updateを実行すると、システムはAPTツールを使用してリポジトリをチェックし、ソフトウェアとそのバージョンに関する情報をキャッシュに保存します。コマンドsudoaptinstall package_nameを使用すると、その情報を使用して、実際のソフトウェアが保存されているURLからそのパッケージを取得します。
リポジトリに特定のパッケージに関する情報がない場合は、パッケージエラーを見つけることができません:
E: Unable to locate package
この時点で、aptコマンドの使用に関するガイドを読むことをお勧めします。これにより、aptコマンド、更新などをよりよく理解できるようになります。
つまり、これはリポジトリに関するものでした。しかし、PPAとは何ですか?それはどのように絵に入りますか?
なぜPPAが使用されるのですか?
ご覧のとおり、Ubuntuはどのソフトウェアを制御し、さらに重要なことに、システムにインストールするソフトウェアのバージョンを制御します。しかし、ソフトウェア開発者がソフトウェアの新しいバージョンをリリースする場合を想像してみてください。
Ubuntuはすぐには利用できません。新しいバージョンのソフトウェアがシステムと互換性があるかどうかを確認する手順があります。これにより、システムの安定性が確保されます。
ただし、これは、Ubuntuで利用できるようになるまでに数週間または場合によっては数か月かかることも意味します。誰もがお気に入りのソフトウェアの新しいバージョンを手に入れるのにそんなに長く待ちたがるわけではありません。
同様に、誰かがソフトウェアを開発し、Ubuntuにそのソフトウェアを公式リポジトリに含めることを望んでいるとします。 Ubuntuが決定を下し、公式リポジトリに含めるまでには、やはり数か月かかります。
もう1つのケースは、
PPAを入力してください!
PPAの使い方は? PPAはどのように機能しますか?
すでにお話ししたように、PPAはパーソナルパッケージアーカイブを意味します。ここで「個人」という言葉に注意してください。これは、これが開発者専用のものであり、ディストリビューションによって正式に承認されていないことを示唆しています。
Ubuntuは、ソフトウェア開発者が独自のリポジトリを作成できるようにするLaunchpadと呼ばれるプラットフォームを提供します。エンドユーザー。つまり、PPAリポジトリをsources.listに追加できます。システムを更新すると、システムはこの新しいソフトウェアの可用性を認識し、このような標準のsudoaptinstallコマンドを使用してインストールできます。
sudo add-apt-repository ppa:dr-akulavich/lighttable
sudo apt-get update
sudo apt-get install lighttable-installer
要約すると:
- sudo add-apt-repository
- sudo apt-get update <–このコマンドは、システムにインストールできるパッケージのリストを更新します。
- sudo apt-get install
コマンドsudoaptupdateを使用することが重要であることがわかります。そうしないと、システムは新しいパッケージがいつ利用可能になるかわかりません。 Ubuntu 18.04以降のバージョンでは、更新が自動的に実行されてパッケージのリストが更新されますが、他のディストリビューションを保証することはできません。このコマンドを実行することをお勧めします。
それでは、最初のコマンドをもう少し詳しく見てみましょう。
sudo add-apt-repository ppa:dr-akulavich/lighttable
このコマンドにはリポジトリへのURLがないことに気付くでしょう。これは、ツールがURLに関する情報をあなたから抽象化するように設計されているためです。
ちょっとしたメモ。 ppa:dr-akulavich / lighttableを追加すると、ライトテーブルが作成されます。ただし、ppa:dr-akulavichを追加すると、「上位リポジトリ」に記載されているすべてのリポジトリまたはパッケージを取得できます。階層的です。
基本的に、add-apt-repositoryを使用してPPAを追加すると、次のコマンドを手動で実行した場合と同じアクションが実行されます。
deb http://ppa.launchpad.net/dr-akulavich/lighttable/ubuntu YOUR_UBUNTU_VERSION_HERE main
deb-src http://ppa.launchpad.net/dr-akulavich/lighttable/ubuntu YOUR_UBUNTU_VERSION_HERE main
上記の2行は、sources.listにリポジトリを追加する従来の方法です。ただし、PPAは、正確なリポジトリURLとオペレーティングシステムのバージョンを気にすることなく、自動的にそれを実行します。
ここで注意すべき重要な点の1つは、PPAを使用しても、元のsources.listは変更されないということです。代わりに、/ etc / apt / sources.list.dディレクトリに2つのファイル、リストと接尾辞「save」が付いたバックアップファイルを作成します。
接尾辞「list」が付いたファイルには、リポジトリに関する情報を追加するコマンドがあります。
これは、PPAを追加しても元のsources.listが混乱しないようにするための安全対策です。また、PPAの削除にも役立ちます。
なぜPPAなのか?なぜDEBパッケージではないのですか?
誰もが好むとは限らないコマンドラインを使用する必要があるのに、なぜPPAを使用する必要があるのかと疑問に思うかもしれません。グラフィカルにインストールできるDEBパッケージを配布してみませんか?
答えは更新手順にあります。 DEBパッケージを使用してソフトウェアをインストールする場合、sudo apt update &&sudo apt upgradeを実行したときに、インストールされているソフトウェアが新しいバージョンに更新される保証はありません。
これは、aptのアップグレード手順がsources.listに依存しているためです。ソフトウェアのエントリがない場合、標準のソフトウェアアップデータを介してアップデートを取得することはできません。
つまり、DEBを使用してインストールされたソフトウェアが更新されないということですか?いいえ、そうではありません。パッケージがどのように作成されたかによって異なります。
一部の開発者は、sources.listにエントリを自動的に追加してから、通常のソフトウェアのように更新します。 GoogleChromeはそのような例の1つです。
一部のソフトウェアは、新しいバージョンを実行しようとすると、新しいバージョンが利用可能であることを通知します。新しいDEBパッケージをダウンロードして再度実行し、現在のソフトウェアを新しいバージョンに更新する必要があります。この場合の例はOracleVirtualBoxです。
残りのDEBパッケージについては、手動で更新を探す必要があります。これは、特にソフトウェアがベータテスター向けである場合は便利ではありません。更新を頻繁に追加する必要があります。ここでPPAが救いの手を差し伸べます。
公式PPAと非公式PPA
また、公式PPAまたは非公式PPAという用語を聞くこともあります。違いは何ですか?
開発者がソフトウェアのPPAを作成する場合、それは公式PPAと呼ばれます。それはプロジェクト開発者以外の誰からも来ていないからです。
ただし、個人が他の開発者によって作成されたプロジェクトのPPAを作成する場合もあります。
なぜ誰かがそれをするのでしょうか?多くの開発者はソフトウェアのソースコードを提供するだけであり、Linuxにソースコードからソフトウェアをインストールするのは苦痛であり、誰もがそれを実行できるわけではないことを知っているからです。
これが、他のユーザーがソフトウェアを簡単にインストールできるように、ボランティアがそれらのソースコードからPPAを作成することを自分で行う理由です。結局のところ、これらの3行を使用することは、ソースコードのインストールと戦うよりもはるかに簡単です。
配布バージョンでPPAが利用可能であることを確認してください
Ubuntuまたはその他のDebianベースのディストリビューションでPPAを使用する場合、留意すべき点がいくつかあります。
すべてのPPAが特定のバージョンで利用できるわけではありません。使用しているUbuntuのバージョンを知っておく必要があります。特定のPPAのWebページにアクセスすると、PPAでサポートされているUbuntuのバージョンを確認できるため、リリースのコードネームは重要です。
その他のUbuntuベースのディストリビューションについては、/ etc / os-releaseの内容を確認して、Ubuntuのバージョン情報を確認できます。
PPAのURLを知る方法は? ppa:dr-akulavich / lighttableのようなPPA名でインターネットを検索するだけで、PPAをホストするための公式プラットフォームであるLaunchpadWebサイトから最初の結果が得られるはずです。 Launchpadに移動して、必要なPPAを直接検索することもできます。
PPAを確認して追加しない場合、ご使用のバージョンで使用できないソフトウェアをインストールしようとすると、このようなエラーが表示されることがあります。
E: Unable to locate package
さらに悪いことに、source.listに追加されているため、ソフトウェアアップデータを実行するたびに、「リポジトリ情報のダウンロードに失敗しました」というエラーが表示されます。
ターミナルでsudoaptupdateを実行すると、エラーの原因となっているリポジトリの詳細がエラーに表示されます。 sudoaptupdateの出力の最後に次のようなものが表示されます。
W: Failed to fetch http://ppa.launchpad.net/venerix/pkg/ubuntu/dists/raring/main/binary-i386/Packages 404 Not Found
E: Some index files failed to download. They have been ignored, or old ones used instead.
システムがご使用のバージョンのリポジトリを見つけることができないため、これは自明です。リポジトリ構造について以前に見たものを覚えていますか? APTは、http://ppa.launchpad.net/
また、特定のバージョンのPPAが利用できない場合、URLを開くことができず、有名な404エラーが発生します。
すべてのUbuntuリリースバージョンでPPAが利用できないのはなぜですか?
これは、誰かがソフトウェアをコンパイルし、特定のバージョンでそれからPPAを作成する必要があるためです。新しいUbuntuバージョンが6か月ごとにリリースされることを考えると、UbuntuリリースごとにPPAを更新するのは面倒な作業です。すべての開発者がそれを行う時間があるわけではありません。
お使いのバージョンでPPAが利用できない場合、アプリケーションをインストールするにはどうすればよいですか?
ご使用のUbuntuバージョンでPPAを使用できない場合でも、DEBファイルをダウンロードしてアプリケーションをインストールできる可能性があります
ライトテーブルPPAに行くとしましょう。学習したばかりのPPAに関する知識を使用すると、特定のUbuntuリリースではPPAを使用できないことがわかります。
できることは、[パッケージの詳細を表示]をクリックすることです。
ここでは、パッケージをクリックして詳細を表示できます。パッケージのソースコードとDEBファイルもここにあります。
Gdebiは依存関係の処理に非常に優れているため、SoftwareCenterの代わりにGdebiを使用してこれらのDEBファイルをインストールすることをお勧めします。
この方法でインストールされたパッケージは、将来の更新を取得しない可能性があることに注意してください。
PPAの追加については十分に読んだと思います。 PPAとそれによってインストールされたソフトウェアを削除するのはどうですか?
PPAを削除するには?
過去にPPAの削除について書いたことがあります。ここでも同じ方法を説明します。
PPAを削除する前に、PPAからインストールしたソフトウェアを削除することをお勧めします。 PPAを削除しただけでは、インストールされているソフトウェアはシステムに残りますが、更新は行われません。あなたはそれを望まないでしょう?
では、どのアプリケーションがどのPPAによってインストールされたかを知る方法が問題になります。
PPAによってインストールされたパッケージを検索し、それらを削除します
Ubuntuソフトウェアセンターはここでは役に立ちません。ここでは、より高度な機能を備えたSynapticパッケージマネージャーを使用する必要があります。
ソフトウェアセンターからUbuntuにSynapticをインストールするか、以下のコマンドを使用できます。
sudo apt install synaptic
インストールしたら、Synapticパッケージマネージャーを起動し、Originを選択します。システムに追加されたさまざまなリポジトリが表示されます。 PPAエントリには、プレフィックスPPAのラベルが付けられます。それらをクリックして、PPAで利用可能なパッケージを確認してください。インストールされたソフトウェアには、その前に適切な記号が表示されます。
パッケージを見つけたら、Synaptic自体からそれらを削除できます。それ以外の場合は、常にコマンドラインを使用するオプションがあります:
sudo apt remove package_name
PPAによってインストールされたパッケージを削除したら、sources.listからPPAを引き続き削除できます。
PPAをグラフィカルに削除する
[ソフトウェアとアップデート]に移動し、[その他のソフトウェア]タブに移動します。削除するPPAを探します:
ここには2つのオプションがあります。 PPAの選択を解除するか、[削除]オプションを選択します。
違いは、PPAエントリの選択を解除すると、システムは/etc/apt/sources.list.dのppa_name.listファイルのリポジトリエントリをコメントアウトしますが、[削除]オプションを選択すると、リポジトリエントリが削除されることです。 /etc/apt/sources.list.dディレクトリのppa_name.listファイルから。
どちらの場合も、ファイルppa_name.listは、空であっても、上記のディレクトリに残ります。
PPAを使用しても安全ですか?
主観的な質問です。ほとんどの場合、PPAはサードパーティの開発者からのものであるため、純粋主義者はPPAを嫌います。しかし同時に、PPAはインストールオプションが簡単なため、Debian/Ubuntuの世界で人気があります。
セキュリティに関する限り、PPAを使用していて、Linuxシステムがハッキングされたりマルウェアが注入されたりする可能性は低くなります。これまでにそのような事件が起こったことは覚えていません。
公式PPAは二度と考えずに使用できます。非公式のPPAを使用することは完全にあなたの決定です。
経験則として、プログラムを実行するためにsudoアクセスが必要な場合は、サードパーティのPPAを介してプログラムをインストールすることは避けてください。
PPAの使用についてどう思いますか?
長い間読んでいたことは承知していますが、PPAについての理解を深めたいと思います。この詳細なガイドが、PPAの使用に関するほとんどの質問に答えてくれることを願っています。
PPAについてさらに質問がある場合は、コメントセクションでお気軽にお問い合わせください。
技術的または文法的な誤りに気付いた場合、またはこの記事を改善するための提案がある場合は、私に知らせてください。