簡単な説明:この初心者向けガイドでは、Linuxでapt-getコマンドを使用してできることを紹介しています。 それらを使用して新しいパッケージを検索し、新しいパッケージをインストールしてアップグレードし、システムをクリーンアップする方法。
UbuntuまたはLinuxMint、エレメンタリーOSなどのUbuntuベースのLinuxディストリビューションを使い始めた場合は、今までにapt-getコマンドに出くわしたはずです。
実際、Ubuntuをインストールした後に行うことのリストの最初は、apt-getupdateとapt-getupgradeを使用することです。これで、いくつかのapt-getコマンドとその使用法を知っているかもしれませんが、他のいくつかのコマンドを知らないかもしれません。
この初心者向けガイドでは、さまざまなapt-getコマンドを例を挙げて説明し、Linuxのエキスパートとしても使用できるようにします。
独占ボーナス:後で参照できるように、apt-getコマンドのチートシートをダウンロードしてください。印刷したり、オフラインで表示するために保存したりできます。
apt-getとは何ですか?
UbuntuはDebianLinuxから派生しています。 Debianはdpkgパッケージシステムを使用しています。パッケージングシステムは、インストール用のプログラムとアプリケーションを提供する方法です。このように、ソースコードからプログラムを作成する必要はありません。
APT(Advanced Package Tool)は、このパッケージングシステムと対話するためのコマンドラインツールです。それを管理するためのdpkgコマンドはすでにありますが、aptはパッケージを処理するためのよりユーザーフレンドリーな方法です。これを使用して、新しいパッケージの検索とインストール、パッケージのアップグレード、パッケージのクリーンアップなどを行うことができます。
APTには、apt-getとapt-cacheの2つの主要なツールがあります。 apt-getはパッケージのインストール、アップグレード、クリーニングに使用され、apt-cacheコマンドは新しいパッケージの検索に使用されます。これらのコマンドはすべて、このガイドの後半で例とともに説明します。
このチュートリアルではLinuxMint18を使用していますが、エレメンタリーOS、Linux Liteなど、他のUbuntuベースのLinuxディストリビューションを使用できます。
[irpposts =” 16244” name =”aptとapt-getの違いの説明”]
apt-getコマンドの使用
apt-getコマンドから始めましょう。このコマンドをエスケープすることはできません。 Linuxシステムを少しだけうまく処理できるように、それを理解しておくことをお勧めします。
apt-getでパッケージデータベースを更新します
apt-getは基本的に、利用可能なパッケージのデータベースで機能します。このデータベースを更新しないと、システムは新しいパッケージが利用可能かどうかを認識しません。実際、これは、新規インストール後にDebianベースのLinuxシステムで実行する必要がある最初のコマンドです。
パッケージデータベースの更新にはスーパーユーザー権限が必要なため、sudoを使用する必要があります。
sudo apt-get update
このコマンドを実行すると、さまざまなサーバーから取得されている情報が表示されます。
ここには、ヒット、ゲット、イグニッションの3種類の線が表示されます。それらを説明させてください:
- ヒット:パッケージバージョンに変更はありません
- ign:パッケージは無視されています。それにはさまざまな理由が考えられます。パッケージが非常に新しいため、新しいバージョンを確認する必要がないか、ファイルの取得中にエラーが発生しましたが、エラーは些細なものであったため、無視されています。これはエラーではありません。心配する必要はありません。
- get:新しいバージョンのパッケージが利用可能です。 apt-getはこの情報をダウンロードします(パッケージ自体ではありません)。上のスクリーンショットの「get」行にダウンロードされた情報があることがわかります。
インストールされたパッケージをapt-getでアップグレード
パッケージデータベースを更新したら、インストールされているパッケージをアップグレードできます。最も便利な方法は、更新が利用可能なすべてのパッケージをアップグレードすることです。この目的のために以下のコマンドを使用できます:
sudo apt-get upgrade
特定のプログラムのみをアップグレードするには、次のコマンドを使用します。
sudo apt-get upgrade <package_name>
以下のコマンドを使用して、完全なアップグレードを実行する別の方法があります。
sudo apt-get dist-upgrade
ただし、このコマンドの使用は避けてください。その理由については、次のセクションで説明します。
アップグレードとdist-upgradeの違い
コマンドapt-getupgradeは非常に従順です。パッケージを削除したり、新しいパッケージを独自にインストールしたりすることはありません。
一方、コマンドapt-get dist-upgradeは、プロアクティブです。インストールされているパッケージの新しいバージョンとの依存関係を探し、新しいパッケージをインストールするか、既存のパッケージを独自に削除しようとします。
dist-upgradeの方が強力でインテリジェントなようですね。しかし、それにはリスクがあります。
ほら、それは「スマートな」紛争解決システムを持っています。重要度の低いパッケージを犠牲にして、最も重要なパッケージのアップグレードを試みます。これにより、一部のパッケージが削除される可能性がありますが、これは望ましくない場合があります。これが、実稼働マシンでdist-upgradeを回避する必要がある主な理由です。
apt-getupdateとapt-getupgradeの違いは何ですか?
これは非常に一般的な混乱です。更新とアップグレードという用語で混乱するのはあなただけではありません。
apt-get updateでパッケージを更新する必要があるように思えますが、そうではありません。 apt-get updateは、利用可能なパッケージのデータベースのみを更新します。たとえば、XYXパッケージバージョン1.3がインストールされている場合、apt-getの更新後、データベースには新しいバージョン1.4が利用可能であることが反映されます。
apt-getupdateの後にapt-getupgradeを実行すると、インストールされているパッケージが新しいバージョンにアップグレードされます。
これが、Ubuntuを更新する最も速くて便利な方法が次のコマンドを使用することである理由です:
sudo apt-get update && sudo apt-get upgrade -y
[irpposts =” 10256″ name =”Ubuntuでスナップパッケージを使用するための完全な初心者向けガイド”]
apt-cacheコマンドを使用してパッケージを検索する
正直に言うと、これはパッケージを検索するための私の好ましい方法ではありません。ただし、これは特定のライブラリを探しているときに非常に便利です。
次のコマンドを使用するだけです(ここではsudoも必要ありません):
apt-cache search <search term>
パッケージの正確な名前を知る必要はありません。パッケージ名とその簡単な説明を検索し、それに基づいて結果を表示します。
特定のパッケージ名でaptパッケージを検索するだけの場合は、次のコマンドを使用できます。
apt-cache pkgnames <search_term>
これにより、検索語で始まるすべてのパッケージのリストが表示されます。
正確なパッケージ名がわかれば、次のコマンドを使用して、バージョン、依存関係などの詳細情報を取得できます。
apt-cache showpkg <package_name>
apt-getを使用して新しいパッケージをインストールする方法
パッケージの名前がわかっている場合は、次のコマンドを使用して簡単にインストールできます。
sudo apt-get install <package_name>
sudo apt-get install pinta
このコマンドの良いところは、オートコンプリート機能があることです。したがって、正確なパッケージ名がわからない場合は、いくつかの文字を入力してTabキーを押すと、それらの文字で使用可能なすべてのパッケージが提案されます。例:
複数のパッケージをインストールする方法
一度に1つのパッケージだけをインストールすることに制限されていません。名前を指定することで、一度に複数のパッケージをインストールできます。
sudo apt-get install <package_1> <package_2> <package_3>
すでにインストールされているパッケージでインストールを実行するとどうなりますか?
すでにパッケージがインストールされているが、とにかくインストールコマンドを使用したとします。 apt-getは実際にデータベースを調べ、新しいバージョンが利用可能な場合は、インストールされているパッケージを新しいバージョンにアップグレードします。したがって、パッケージをアップグレードしたくない場合を除いて、このコマンドを使用しても害はありません。
アップグレードせずにパッケージをインストールする方法
何らかの理由でパッケージをインストールしたいが、すでにインストールされている場合はアップグレードしたくないとします。奇妙に聞こえますが、そうする理由があるかもしれません。
その場合、次の方法でアップグレードなしフラグを使用できます。
sudo apt-get install <package_name> --no-upgrade
パッケージをアップグレードするだけで、インストールしない方法
すでにインストールされているパッケージをアップグレードしたいが、そうでない場合はインストールしたくない場合は、次のコマンドを使用してアップグレードできます。
sudo apt-get install <package_name> --only-upgrade
特定のバージョンのアプリケーションをインストールする方法
デフォルトでは、リポジトリで利用可能な最新バージョンがすべてのアプリケーションにインストールされます。ただし、何らかの理由で最新バージョンをインストールしたくない場合は、パッケージのバージョン番号を指定できます。 (インストールしたい正確なバージョン番号を知っている必要があります。)
パッケージの名前にバージョン番号を追加するだけです。
sudo apt-get install <package_name>=<version_number>
apt-getを使用してインストール済みパッケージを削除する方法
apt-getでできることはパッケージのインストールだけではありません。パッケージを一緒に削除することもできます。次のようにコマンドを使用するだけです。
sudo apt-get remove <package_name>
オートコンプリートはここでも機能します。したがって、パッケージ名を入力してTabキーを押すだけで、インストールされているすべてのパッケージがそれらの文字で始まることが提案されます。
パッケージをアンインストールする別の方法は、パージを使用することです。このコマンドは次のように使用されます。
sudo apt-get purge <package_name>
apt-getremoveとapt-getpurgeの違いは何ですか?
- apt-get removeは、パッケージのバイナリを削除するだけです。構成ファイルには影響しません
- apt-getパージは、構成ファイルを含む、パッケージに関連するすべてのものを削除します
したがって、特定のソフトウェアを「削除」してから再度インストールした場合、システムには同じ構成ファイルが含まれます。もちろん、再度インストールするときに、既存の構成ファイルを上書きするように求められます。
パージは、プログラムの構成を台無しにした場合、システムからそのトレースを完全に消去して最初からやり直したい場合に特に便利です。
ほとんどの場合、パッケージをアンインストールするには、単純な削除で十分です。
apt-getを使用してシステムをクリーンアップする方法
そうそう! apt-getを使用してシステムをクリーンアップし、ディスク領域を解放することもできます。
以下のコマンドを使用して、aptキャッシュ(ローカルに保存された取得済みパッケージファイル)をクリアできます。
sudo apt-get clean
もう1つの方法は、オートクリーンを使用することです。上記のcleanコマンドとは異なり、autocleanは、現在新しいバージョンの取得されたパッケージファイルのみを削除するため、使用されなくなります。
sudo apt-get autoclean
ディスク領域を解放する別の方法は、自動削除を使用することです。インストールされている別のパッケージの依存関係を満たすために、自動的にインストールされたライブラリとパッケージを削除します。そのパッケージが削除された場合、これらの自動的にインストールされたパッケージはシステムで役に立たなくなります。このコマンドは、そのようなパッケージを削除します。
sudo apt-get autoremove
これは、Linuxシステムをクリーンアップするコマンドラインの方法です。 GUIを好む場合は、UbuntuおよびUbuntuベースのLinuxディストリビューションで使用できるLinux用のCCleanerの代替案をいくつか紹介します。
あなたの入力
apt-getにはまだまだありますが、これだけでかなり良いスタートを切ることができます。マニュアルページをいつでも調べて、詳細情報を入手できます。
Linuxでのapt-getコマンドに関するこのガイドはどのように気に入っていますか?それはあなたにとって役に立ち、理解するのに十分明確でしたか?フィードバックは、近い将来、このようなガイドをさらに作成するのに役立ちます。