Overview
apt-get は、認証済みのソースからパッケージやその情報を取得し、パッケージとその依存関係のインストール、アップグレード、削除を行うためのコマンドラインインタフェースを提供するユーティリティです。APT パッケージを操作する際に利用され、コマンドラインインタフェースを通じて操作を行います。
- Debian や Ubuntu などの Debian 系 Linux ディストリビューションで使用されるパッケージ管理ユーティリティです。
前提条件
この記事は、apt-get --help
コマンド、man apt-get
コマンドの出力の内容を和訳し、必要に応じて補足情報を追加しています。
本稿の執筆にあたり、使用した OS, apt-get の情報は以下の通りです。
myadmin@ubuntu:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.4 LTS
Release: 22.04
Codename: jammy
myadmin@ubuntu:~$ apt-get --version
apt 2.4.11 (amd64)
Supported modules:
*Ver: Standard .deb
Pkg: Debian APT solver interface (Priority -1000)
Pkg: Debian APT planner interface (Priority -1000)
*Pkg: Debian dpkg interface (Priority 30)
S.L: 'deb' Debian binary tree
S.L: 'deb-src' Debian source tree
Idx: EDSP scenario file
Idx: EIPP scenario file
Idx: Debian Source Index
Idx: Debian Package Index
Idx: Debian Translation Index
Idx: Debian dpkg status file
Idx: Debian deb file
Idx: Debian dsc file
Idx: Debian control file
コマンド書式
apt-get --help
コマンドで出力されるコマンド書式は以下の通りです。
apt-get [options] command
apt-get [options] install|remove pkg1 [pkg2 ...]
apt-get [options] source pkg1 [pkg2 ...]
man apt-get
コマンドで出力されるコマンド書式は以下の通りです。
apt-get [-asqdyfmubV] [-o=config_string] [-c=config_file] [-t=target_release] [-a=architecture] {update | upgrade | dselect-upgrade | dist-upgrade |
install pkg [{=pkg_version_number | /target_release}]... | remove pkg... | purge pkg... | source pkg [{=pkg_version_number | /target_release}]... |
build-dep pkg [{=pkg_version_number | /target_release}]... | download pkg [{=pkg_version_number | /target_release}]... | check | clean | autoclean |
autoremove | {-v | --version} | {-h | --help}}
コマンド (command)
apt-get は、パッケージを操作するためのコマンドラインツールであり、他の APT ライブラリを利用するツールの「バックエンド」として機能します。例えば、aptitude (8)
, synaptic (8)
, wajig (1)
などのいくつかの「フロントエンド」インターフェースがあります。また、-h
, --help
オプションが指定されていない限り、以下のコマンドの 1 つが存在している必要があります。
- apt-get コマンドのサブコマンドと表現した方が分かりやすいかもしれません。
コマンド | 機能 |
---|---|
update | update コマンドは、パッケージの最新リストを取得します。これにより、パッケージのインデックスファイルがそのソースと同期されます。利用可能なパッケージのインデックスは、/etc/apt/sources.list で指定されたリポジトリから取得されます。例えば、Debian アーカイブを使用している場合、このコマンドは Packages.gz ファイルを取得し、新しいパッケージや更新されたパッケージに関する情報を取得します。upgrade や dist-upgrade を行う前に、必ず update を実行する必要があります。また、パッケージファイルのサイズは事前に把握できないため、全体の進行状況メーターが正確でないことに留意してください。 |
upgrade | upgrade コマンドは、現在のシステムにインストールされている全てのパッケージの最新バージョンをインストールするために使用されます。これにより、/etc/apt/sources.list で指定されたリポジトリからパッケージを取得し、現在インストールされているパッケージの新しいバージョンが利用可能な場合、それらのパッケージが取得され、アップグレードされます。パッケージの新しいバージョンが利用可能であることを apt-get が認識できるようにするためには、事前に update を実行する必要があります。ただし、現在インストールされているパッケージの新しいバージョンがアップグレードできず、他のパッケージのインストール状態に影響を与えない場合、そのパッケージは現在のバージョンを維持します。 |
dist-upgrade | dist-upgrade コマンドは、単にパッケージの最新バージョンを取得するのではなく、ディストリビューション全体のアップグレードを行います。つまり、dist-upgrade コマンドは、システム全体のバージョンアップを行うため、より大規模な変更を行います。このため、upgrade コマンドと異なり、依存関係の解決においてより大胆なアプローチを取ることがあります。例えば、古いパッケージを削除して新しいパッケージをインストールするなどの操作が行われる場合があります。そのため、dist-upgrade コマンドは、より包括的なシステムのアップグレードを目指す際に使用されます。 |
dselect-upgrade | dselect-upgrade コマンドは、dselect (1) という伝統的な Debian パッケージングフロントエンドと組み合わせて使用されます。このコマンドは、dselect (1) が選択した内容に従います。具体的には、dselect (1) が利用可能なパッケージの Status フィールドに行った変更を追跡し、その状態を実現するために必要なアクションを実行します。このアクションの例として、古いパッケージの削除や新しいパッケージのインストールなどが挙げられます。 |
install | install コマンドは、新しいパッケージをインストールするか、既存のパッケージを個別にアップグレードするために使用されます。このコマンドを実行するには、1 つ以上のパッケージ名を指定する必要があります。このコマンドを実行すると、インストールまたはアップグレードに必要な依存関係のすべてのパッケージが取得され、インストールされます。パッケージ名の末尾に “-” を追加すると、そのパッケージが既にインストールされている場合、そのパッケージが削除されます。同様に、”+” を使用してパッケージを指定すると、既にインストールされている場合でも、新しいバージョンにアップグレードされます。 パッケージ名の後に等号と選択するパッケージのバージョンを指定することで、特定のバージョンのパッケージをインストールすることができます。また、パッケージ名の後に “/” とディストリビューションのバージョンまたはアーカイブ名を指定することも可能ですが、これらの機能を使用する際は、古いバージョンのパッケージをインストールする可能性があるため、ダウングレードの可能性に留意する必要があります。 正規表現を使用してパッケージ名を指定する場合、特定のパッケージが見つからない場合や “.”, “?”, “*” などの特殊文字を含む場合は、そのパターンがデータベース内のすべてのパッケージ名に適用されます。 |
reinstall | reinstall コマンドは、指定されたパッケージを再インストールします。install --reinstall のエイリアスとして機能します。 |
remove | remove コマンドは、指定したパッケージをシステムから削除します。install コマンドと同様に、1 つ以上のパッケージ名を指定しますが、パッケージをインストールする代わりに削除します。パッケージを削除すると、その構成ファイルがシステムに残ります。また、パッケージ名の末尾にプラス記号を付けると、指定したパッケージが削除される代わりにインストールされます。 |
purge | purge コマンドは、指定したパッケージとそれに関連する設定ファイルをシステムから完全に削除します。remove コマンドと同様に、1 つ以上のパッケージ名を指定しますが、パッケージを削除するだけでなく、それに関連する設定ファイルも削除します。 |
source | source コマンドは、現在のディレクトリにソースパッケージの最新バージョンをダウンロードします。コマンドの引数は、通常はバイナリパッケージ名、またはソースパッケージ名として解釈されます。挙動を変更したい場合は、 --only-source オプションを使用してください。ソースパッケージは、 sources.list (5) ファイルの deb-src 行で指定したリポジトリを使用して取得されます。リポジトリからソースを取得するには、このような行を sources.list ファイルに追加する必要があります。これを行わないと、古いバージョンや新しすぎるバージョンのソースが取得されたり、まったく取得されない場合があります。--compile オプションを使用すると、dpkg-buildpackage を使用してコンパイルされます。この際のアーキテクチャは --host-architecture オプションで指定されます。一方、--download-only オプションを指定すると、ソースパッケージは展開されますが、コンパイルは行われません。特定のソースバージョンは、ソース名の後に等号とフェッチするバージョンを追加することで取得できます。これは、パッケージファイルに使用されるメカニズムと類似しており、ソースパッケージ名とバージョンの正確な一致を可能にし、暗黙的に APT::Get::Only-Source オプションを有効にします。ソースパッケージはバイナリパッケージのようにインストールされず、dpkg データベースで追跡されません。 |
build-dep | build-dep コマンドは、ソースパッケージのビルドに必要な依存関係を設定します。これにより、ソースパッケージのビルドに必要なパッケージが apt-get を介してインストールまたは削除されます。通常、パッケージをネイティブにビルドするためには、デフォルトで依存関係が満たされますが、必要に応じて --host-architecture オプションを使用してホストアーキテクチャを指定することもできます。コマンドの引数は、通常はバイナリまたはソースパッケージ名として解釈されますが、--only-source オプションを使用してこの挙動を変更することもできます。 |
satisfy | satisfy コマンドは、依存関係の文字列を解決し、それらを満たすように apt-get に指示します。依存関係の文字列は、ビルド依存関係やビルドプロファイル、アーキテクチャ制限リストなどが含まれる場合があります。オプションで、依存関係文字列の前に Conflicts: を付けて依存関係文字列を満たさないようにすることもできます。また、複数の同じタイプの文字列を指定することもできます。 |
check | check コマンドは、壊れた依存関係がないかを確認する為の診断ツールです。このコマンドを実行すると、パッケージキャッシュが更新され、システム上のパッケージの依存関係の正常性をチェックします。 |
download | download コマンドは、指定されたバイナリパッケージを現在のディレクトリにダウンロードします。 |
clean | clean コマンドは、ダウンロードしたアーカイブファイルを消去します。具体的には、/var/cache/apt/archives/ および /var/cache/apt/archives/partial/ ディレクトリから、ロックファイル以外のすべてのファイルを削除します。 |
autoclean | autoclean コマンドは、古いダウンロードしたアーカイブファイルを消去します。clean コマンドと同様に、ローカルリポジトリ内の取得したパッケージファイルをクリアしますが、autoclean コマンドは、現時点ではダウンロードできないパッケージファイルのみが削除対象になります。これにより、キャッシュを長期間維持することができ、コントロールを失わずに維持できます。また、設定オプション APT::Clean-Installed が Off に設定されている場合、インストール済みパッケージが削除されるのを防ぎます。 |
autoremove | autoremove コマンドは、他のパッケージの依存関係を満たす為に自動的にインストールされたが、最新では不要なパッケージを削除するために使用されます。 |
changelog | changelog コマンドは、指定されたパッケージの変更履歴をダウンロードして表示します。変更履歴は、デフォルトでインストールされているバージョンのものが表示されますが、インストールコマンドと同様のオプションを指定することで他のバージョンの変更履歴を表示することもできます。表示は sensible-pager を通じて行われます。 |
indextargets | indextargets コマンドは、デフォルトで apt-get update がダウンロードするすべてのデータファイル(インデックスターゲット)に関する情報を deb822 形式で表示します。このコマンドは、--format オプションを使用して出力形式を変更することができます。また、デフォルトの出力をフィルタリングするための行も受け付けます。主に、APT と連携して作業する外部ツール用のインターフェースとして使用され、外部ツールがダウンロード済みのファイル名と情報を取得し、再ダウンロードする代わりに使用できるようにします。詳細なドキュメントは、apt-doc パッケージが提供する /usr/share/doc/apt/acquire-additional-files.md.gz ファイルを参照して下さい。 |
コマンドオプション (options)
すべてのコマンドラインオプションは、設定ファイルを使用して設定することができます。ブール型のオプションでは、-f-
, --no-f
, -f=no
などのように、設定ファイルを上書きすることができます。
コマンドオプション(設定項目) | 機能 |
---|---|
--no-install-recommends (APT::Install-Recommends ) | --no-install-recommends コマンドオプションは、パッケージをインストールする際に、通常推奨される他のパッケージも自動的にインストールされる挙動を変更します。このオプションを使用すると、推奨されるパッケージを無視し、指定したパッケージのみをインストールします。推奨されるパッケージとは、目的のパッケージを利用する際に有用であるが、必須ではないパッケージのことです。例えば、特定のツールをインストールする際に、そのツールの機能を拡張するための補助的なツールやライブラリが推奨されるパッケージとして含まれることがあります。 --no-install-recommends オプションを利用すると、これらの推奨されるパッケージを無視して、基本的な機能のみを持つパッケージのみをインストールします。このようにすることで、不要なパッケージのインストールを避け、システムの軽量化やセキュリティの向上が期待できます。 |
--install-suggests (APT::Install-Suggests ) | --install-suggests コマンドオプションは、パッケージをインストールする際に、通常は自動的にインストールされないが、提案された他のパッケージも依存関係として考慮します。通常、パッケージをインストールする際には、そのパッケージに必要なパッケージのみが自動的にインストールされますが、提案されたパッケージは自動的にインストールされません。しかし、このオプションを使用すると、提案されたパッケージもインストールされます。提案されたパッケージとは、あるパッケージとの相性や機能の拡張を提案するためのパッケージのことです。これらのパッケージは、あるパッケージの機能を拡張したり、その利用を便利にするためのものであり、必須ではありませんが、利用者にとって有用な場合があります。 --install-suggests オプションを使用することで、これらの提案されたパッケージもインストールされるため、特定のパッケージをより多機能にしたり、より便利に利用することが可能となります。しかし、提案されたパッケージは必須ではないため、利用者の好みやニーズに応じて選択することができます。 |
-d , --download-only (APT::Get::Download-Only ) | -d , --download-only コマンドオプションは、パッケージファイルのダウンロードのみを行い、展開やインストールは行いません。このオプションを使用すると、指定されたパッケージのファイルをダウンロードするだけで、その後の展開やインストールは行われません。これは、あるパッケージのインストールを行う前に、そのパッケージのファイルを事前にダウンロードしておきたい場合に便利です。例えば、インターネット接続が遅い環境下で複数のパッケージをインストールする必要がある場合や、特定のパッケージを後でインストールするために予めダウンロードしておきたい場合などに使用されます。 |
-f , --fix-broken (APT::Get::Fix-Broken ) | -f, --fix-broken コマンドオプションは、パッケージの依存関係に問題が発生している場合に、それらの問題を解決し、システムが正常に動作するように修正を試みます。通常、パッケージをインストール、アップグレード、削除する際には、そのパッケージが依存する他のパッケージが必要です。しかし、時には依存関係に問題が発生し、パッケージのインストールやアップグレードが中断されることがあります。このような場合、依存関係の問題を解決するために -f もしくは --fix-broken オプションを使用します。このオプションを使用すると、apt-get は依存関係の問題を解決するために必要な手順を自動的に実行し、システムが正常に動作するように修正を試みます。修正に成功すれば、パッケージのインストールやアップグレードが続行されます。ただし、状況によっては手動での操作が必要となる場合もあります。例えば、競合するパッケージがインストールされている場合や、依存関係の解決に失敗した場合などが該当します。 |
-m , --ignore-missing , --fix-missing (APT::Get::Fix-Missing ) | -m , --ignore-missing , --fix-missing コマンドオプションは、パッケージが見つからない場合やダウンロードできない場合でも、エラーが表示されずに処理が続行されます。その代わりに、見つからなかったパッケージは保留され、後で再試行することができます。このオプションを使用すると、apt-get コマンドはパッケージが見つからない場合やダウンロードできない場合にエラーを表示せず、処理を継続します。その結果、他の依存関係の解決やパッケージのインストールなど、他の操作を中断することなく進めることができます。 見つからなかったパッケージは保留され、後で再試行することができます。これにより、パッケージの依存関係が解決された後に再度該当のパッケージをインストールすることが可能となります。また、パッケージのダウンロードが一時的に利用できない場合でも、その後の処理がスムーズに進行します。 |
--no-download (APT::Get::Download ) | --no-download コマンドオプションは、新しいパッケージをダウンロードせずに、すでにシステムにあるパッケージのみを使用するように指定します。このオプションを使用すると、apt-get コマンドはパッケージのダウンロードを行わず、代わりにシステムにすでにインストールされているパッケージのみを使用します。これは、インターネット接続が遅い場合や、一時的な回線の不安定さなどの理由で、新しいパッケージをダウンロードせずに既存のパッケージのみを利用したい場合に便利です。 ただし、このオプションを使用する場合、すでにインストールされているパッケージのみが利用可能であり、新しいパッケージの更新や追加は行われません。そのため、システムに最新のパッケージを適用したい場合や、新しい機能を利用したい場合には適していません。 |
-q , --quiet (quiet ) | -q , --quiet コマンドオプションは、出力を最小限に抑え、進捗表示を省略します。このオプションを使用することで、apt-get コマンドの実行時に表示されるメッセージや進捗状況などが最小限に抑えられ、より静かな実行環境を提供します。このオプションは最大で 2 つまで追加でき、数が多いほどより静かな出力が得られます。例えば、 -q は比較的静かな出力を提供しますが、-qq は最も静かな出力を提供します。静かな出力は、スクリプトや自動化されたタスクの実行時など、ユーザーの介入が少ない場面で有用です。また、出力が最小限に抑えられるため、情報の過多を避けることができ、作業効率を向上させることができます。 |
-s , --simulate , --just-print , --dry-run , --recon , --no-act (APT::Get::Simulate ) | -s , --simulate , --just-print , --dry-run , --recon , --no-act コマンドオプションは、実際にシステムを変更せずに、現在のシステムの状態に基づいて発生するイベントのシミュレーションを行います。これらのオプションは実際の操作を行わず、あくまでシステムの変更がどのように行われるかを確認する目的で使用されます。例えば、パッケージのインストール、アップグレード、削除などの操作を行う前に、それらの操作がどのようにシステムに影響を与えるかを事前に確認する場合に利用されます。 -s , --simulate , --just-print , --dry-run , --recon , --no-act コマンドオプションのそれぞれは同じ機能を持ち、異なる名前が付けられていますが、どの名前を使用しても同じ結果が得られます。これらのオプションは、apt-get コマンドによるシステムの変更をシミュレーションするためのものであり、実際のシステムへの影響はありません。 |
-y , --yes , --assume-yes (APT::Get::Assume-Yes ) | -y , --yes , --assume-yes コマンドオプションは、すべてのプロンプトに対して自動的に “Yes” を回答し、ユーザーに確認を求めることなく操作を継続します。ただし、不適切な状況に遭遇した場合は処理を中止します。このオプションを使用すると、apt-get コマンドの実行中に表示されるすべてのプロンプトに対して “Yes” を自動的に返答します。これにより、インストールやアップグレードなどの操作を行う際に、手動での確認が不要となり、自動化された環境やスクリプトにおいて便利に利用することができます。 ただし、このオプションを使用する際には、注意が必要です。ユーザーが意図しない操作を実行してしまう可能性があるため、不適切な状況に遭遇した場合は処理を中止するようにします。また、データの損失やシステムの破損などのリスクを最小限に抑えるために、慎重に使用することが重要です。 |
--assume-no (APT::Get::Assume-No ) | --assume-no コマンドオプションは、すべてのプロンプトに対して自動的に “No” と回答し、対話形式でない実行を行います。つまり、ユーザーに確認を求めることなく、すべての質問に対して自動的に “No” と回答します。このオプションを使用すると、apt-get コマンドの実行中に表示されるすべてのプロンプトに対して、ユーザーが手動で回答する必要がなくなります。これにより、スクリプトや自動化されたタスクなどで、ユーザーの介入を最小限に抑えたい場合に便利です。 ただし、 --assume-no オプションを使用する場合、プロンプトに “No” と回答することが適切な場面であることを確認する必要があります。不適切な操作を行う可能性があるため、注意が必要です。 |
--no-show-upgraded (APT::Get::Show-Upgraded ) | --no-show-upgraded コマンドオプションは、アップグレードされるすべてのパッケージのリストを表示しません。通常、パッケージをアップグレードする際に、どのパッケージがアップグレードされるかを示すリストが表示されますが、このオプションを使用するとそのリストが表示されなくなります。このオプションを使用すると、パッケージをアップグレードする際に、更新されるパッケージのリストが表示されないため、操作を行う際の情報量を減らすことができます。特に、大量のパッケージをアップグレードする場合や、自動化された処理を行う場合に役立ちます。 |
-V , --verbose-versions (APT::Get::Show-Versions ) | -V , --verbose-versions コマンドオプションは、アップグレードされたパッケージやインストールされたパッケージの完全なバージョンを表示します。通常、パッケージのバージョンは簡略化された形式で表示されますが、このオプションを使用すると、より詳細なバージョン情報が表示されます。このオプションを使用すると、パッケージのバージョン情報についてより詳細な情報を取得できます。例えば、メジャーバージョン、マイナーバージョン、ビルド番号などが表示され、より正確な情報を得ることができます。これは、特定のバージョンのパッケージが必要な場合や、アップグレードされたパッケージの変更点を確認したい場合に役立ちます。 |
-a , --host-architecture (APT::Get::Host-Architecture ) | -a , --host-architecture コマンドオプションは、apt-get source --compile によってビルドされるパッケージのアーキテクチャを制御し、クロスビルドの依存関係がどのように満たされるかを指定します。デフォルトでは設定されておらず、これはホストのアーキテクチャがビルドアーキテクチャと同じであることを意味します。これは APT::Architecture で定義されています。このオプションを使用すると、特定のアーキテクチャを明示的に指定して、パッケージのビルドや依存関係の処理を行うことができます。例えば、異なるアーキテクチャのシステムでパッケージをビルドしたり、特定のアーキテクチャ向けにビルドしたりする場合に使用されます。このオプションを使用することで、ビルドに必要なツールやライブラリなどの依存関係が適切に解決され、クロスビルドがスムーズに行われることが期待されます。 |
-P , --build-profiles (APT::Build-Profiles ) | -P , --build-profiles コマンドオプションは、apt-get source --compile によってビルドされるソースパッケージに適用される有効なビルドプロファイルを制御し、ビルド依存関係がどのように満たされるかを指定します。デフォルトでは、ビルドプロファイルはアクティブになっていません。複数のビルドプロファイルを同時にアクティブにするには、それらをカンマで区切って連結します。これにより、一度に複数のビルドプロファイルを指定することができます。ビルドプロファイルは、ビルド時に使用される設定や条件を指定するために使用されます。たとえば、特定のアーキテクチャ向けのビルドプロファイルを適用することで、そのアーキテクチャに適した依存関係やコンパイラオプションが使用されるようになります。 |
-b , --compile , --build (APT::Get::Compile ) | -b , --compile , --build コマンドオプションは、ダウンロードしたソースパッケージをコンパイルします。通常、ソースパッケージは単にダウンロードされるだけですが、このオプションを使用すると、ダウンロード後に自動的にソースコードがコンパイルされます。このオプションを使用すると、ソースコードのダウンロードとコンパイルを一括して行うことができます。これにより、手動でダウンロードしてからビルドする手間が省けます。また、ソースコードの変更などがあった場合に、簡単に最新のバージョンを取得してビルドすることができます。 |
--ignore-hold (APT::Ignore-Hold ) | --ignore-hold コマンドオプションは、パッケージに対して設定された保留を無視して処理を続行します。これは、多数の不要な保留を無視して処理を行うために dist-upgrade と組み合わせて使用されることがあります。通常、パッケージの保留は、特定のバージョンにロックされている場合や、他のパッケージとの依存関係が解決されていない場合に設定されます。しかし、場合によってはこれらの保留を無視して処理を続行したい場合があります。例えば、不要な保留が多数存在する場合や、特定の条件下でアップグレードを行う際に、保留を無視して処理を行いたい場合が該当します。 |
--with-new-pkgs (APT::Get::Upgrade-Allow-New ) | --with-new-pkgs コマンドオプションは、upgrade と組み合わせて使用される場合に、新しいパッケージのインストールを許可します。これは、インストール済みのパッケージの更新に新しい依存関係のインストールが必要な場合に便利です。パッケージを保留するのではなく、このオプションを使用すると、パッケージがアップグレードされ、新しい依存関係がインストールされます。ただし、このオプションを使用した場合、パッケージの削除は行われません。新しいパッケージの追加のみを許可します。このオプションは、システムを最新の状態に保ちながら、新しい機能やセキュリティの更新を取得する際に便利です。特に、古いバージョンのパッケージが更新され、新しい依存関係が追加される場合に役立ちます。パッケージの保留を回避し、新しいパッケージのインストールを促進するために使用されます。 |
--no-upgrade (APT::Get::Upgrade ) | --no-upgrade コマンドオプションは、パッケージをアップグレードしません。install と組み合わせて使用される場合、no-upgrade オプションは、コマンドラインで指定されたパッケージがすでにインストールされている場合に、それらがアップグレードされるのを防ぎます。このオプションを使用すると、指定したパッケージがすでにインストールされている場合でも、そのバージョンが更新されることを回避することができます。つまり、既存のバージョンを維持し、アップグレードを行わずに新しいパッケージをインストールします。 |
--only-upgrade (APT::Get::Only-Upgrade ) | --only-upgrade コマンドオプションは、新しいパッケージをインストールしません。install と組み合わせて使用される場合、--only-upgrade オプションは、すでにインストールされているパッケージのアップグレードのみをインストールし、新しいパッケージのインストール要求を無視します。このオプションを使用すると、既存のパッケージをアップグレードするだけで、新しいパッケージをインストールしません。つまり、依存関係の問題を解決するために新しいパッケージを追加するのではなく、既存のパッケージのみを更新します。 |
--allow-downgrades (APT::Get::allow-downgrades ) | --allow-downgrades コマンドオプションは、APT がパッケージをダウングレードする場合に、確認プロンプトを表示せずに続行するようにします。これは非常に危険なオプションであり、非常に特別な状況を除いて使用すべきではありません。このオプションを使用すると、システムが破壊される可能性があります。通常、APT はパッケージをアップグレードする際に、新しいバージョンが利用可能な場合にのみ行われます。しかし、場合によっては、システムが安定性を保つためには、バージョンを下げることが必要な場合があります。このオプションを使用すると、そのようなダウングレードが確認なしに自動的に行われます。 しかし、ダウングレードはシステムに悪影響を与える可能性があります。古いバージョンのパッケージが新しいものよりも不安定であったり、システムとの互換性がない場合があります。そのため、このオプションは慎重に使用する必要があります。 |
--allow-remove-essential (APT::Get::allow-remove-essential ) | --allow-remove-essential コマンドオプションは、APT が重要なパッケージを削除する場合に、確認プロンプトを表示せずに続行するようにします。これは非常に危険なオプションであり、非常に特別な状況を除いて使用すべきではありません。このオプションを使用すると、システムが破壊される可能性があります。重要なパッケージは、システムの基本的な機能を提供するために必要なものです。これらのパッケージを削除すると、システムが機能しなくなる可能性があります。そのため、通常はこれらのパッケージを削除することは避けるべきです。 このオプションを使用すると、確認なしで重要なパッケージを削除できます。ただし、これは慎重に使用する必要があります。誤って重要なパッケージを削除すると、システムが正常に機能しなくなる可能性があるためです。 |
--allow-change-held-packages (APT::Get::allow-change-held-packages ) | --allow-change-held-packages コマンドオプションは、APT が保留中のパッケージを変更する場合に、確認プロンプトを表示せずに続行するようにします。これは非常に危険なオプションであり、非常に特別な状況を除いて使用すべきではありません。このオプションを使用すると、システムが破壊される可能性があります。保留中のパッケージは、通常は特定のバージョンにロックされています。これにより、システムの安定性を確保するために必要なものが、不適切なアップグレードや変更から保護されます。しかし、このオプションを使用すると、確認なしに保留中のパッケージを変更できます。 ただし、これは慎重に使用する必要があります。保留中のパッケージを変更することは、システムの安定性を損なう可能性があるためです。不要な変更を加えることでシステムが破損する可能性があるため、通常はこのオプションを使用しない方が良いでしょう。 |
--force-yes (APT::Get::force-yes ) | --force-yes コマンドオプションは、Yes を強制的に指定します。APT が何か潜在的に危険なことを行っている場合に、確認プロンプトを表示せずに続行します。非常に特別な状況を除いて使用すべきではありません。--force-yes を使用すると、システムが破壊される可能性があります。APT バージョン 1.1 以降では、このオプションは非推奨となり、--allow-unauthenticated , --allow-downgrades , --allow-remove-essential , --allow-change-held-packages に置き換えられました。このオプションを使用すると、APT が通常確認を求める場面でも、自動的に Yes を返答するようになります。これにより、誤った操作がシステムに影響を与える可能性がありますので、慎重に使用する必要があります。APT の最新バージョンでは、より安全なオプションが提供されるため、 --force-yes の使用は推奨されません。 |
--print-uris (APT::Get::Print-URIs ) | --print-uris コマンドオプションは、ファイルをダウンロードする代わりに、それらのファイルが配置される予定のリモートサイト上の URI を表示します。各 URI には、ファイルの保存先のパス、ファイル名、サイズ、および期待される MD5 ハッシュが含まれます。ただし、保存先のファイル名は必ずしもリモートサイト上のファイル名と一致しません。 |
--purge (APT::Get::Purge ) | --purge コマンドオプションは、パッケージに関連する設定ファイルや設定データも含めて、パッケージに関連するすべてのデータがシステムから削除されます。--purge と remove --purge は同等です。 |
--reinstall (APT::Get::ReInstall ) | --reinstall コマンドオプションは、すでにインストールされている最新バージョンのパッケージを再インストールします。これにより、パッケージが既にインストールされていても、そのパッケージを再度インストールすることができます。 |
--list-cleanup (APT::Get::List-Cleanup ) | --list-cleanup コマンドオプションはデフォルトで有効になっており、--no-list-cleanup を使用して無効にすることができます。有効な場合、apt-get は自動的に /var/lib/apt/lists ディレクトリの内容を管理し、古いファイルを削除します。このオプションを無効にする唯一の理由は、ソースリストを頻繁に変更する場合です。 |
-S , --snapshot (APT::Snapshot ) | -S , --snapshot コマンドオプションは、APT がソースエントリで有効になっている Snapshot: enable を持つアーカイブに関連付けられるスナップショットを制御します。このオプションを使用することで、APT は指定されたスナップショットをアーカイブに関連付け、それによって選択されるスナップショットの挙動を制御します。スナップショットは、特定の時点でのアーカイブの状態を表し、その時点でのパッケージのバージョンや状態を保持します。これにより、過去の状態に簡単に戻ることができます。 たとえば、ソフトウェア開発の過程で、特定のバージョンのパッケージを特定のスナップショットに固定したい場合があります。そのような場合、 -S オプションを使用して、APT に特定のスナップショットを指定し、その時点でのパッケージ状態を維持します。スナップショットはアーカイブのサイズを増加させるため、慎重に管理する必要があります。不要なスナップショットは適切に削除することが重要です。 |
-t , --target-release , --default-release (APT::Default-Release ) | -t , --target-release , --default-release コマンドオプションは、ポリシーエンジンへのデフォルトの入力を制御します。指定されたリリース文字列を使用して、優先度 990 でデフォルトのピンが作成されます。これにより、/etc/apt/preferences の一般設定を上書きします。このオプションの値によって、APT が特定のディストリビューションのパッケージを取得するかどうかが決定されます。このオプションは、通常、特定のディストリビューションの特定のバージョンにパッケージを固定するために使用されます。例えば、 -t '2.1*' , -t unstable , -t sid などが挙げられます。これにより、APT は指定されたディストリビューションのパッケージのみを取得し、それ以外のパッケージを無視します。ただし、このオプションは、一部の特定のパッケージが固定されている場合には影響を受けません。つまり、個々のパッケージが明示的にピン留めされている場合、そのピン留めはこのオプションによって影響を受けません。 このオプションを使用する際には慎重に行う必要があります。誤ったリリースを指定すると、システムの安定性や互換性に問題が生じる可能性があります。 |
--trivial-only (APT::Get::Trivial-Only ) | --trivial-only コマンドオプションは、トリビアルな操作のみを実行します。これは通常、--assume-yes オプションと関連して使用されます。--assume-yes オプションは、すべてのプロンプトに対して自動的に yes を回答しますが、--trivial-only オプションは自動的に no を回答します。トリビアルな操作とは、システムに対して影響が比較的小さい、またはリスクが低い操作のことを指します。たとえば、パッケージの状態を確認するだけの操作や、システムの設定を表示するだけの操作などが該当します。これらの操作はシステムに重大な変更を加えるものではないため、自動的に no を回答しても問題が生じる可能性が低いです。 |
--mark-auto (APT::Get::Mark-Auto ) | --mark-auto コマンドオプションは、インストールが成功した後に、すべての新しくインストールされたパッケージを自動的にインストールされたパッケージとしてマークします。これにより、手動でインストールされたパッケージがこれらのパッケージに依存していない場合、各パッケージが削除されるようになります。これは、すべてのインストールされたパッケージに対して apt-mark auto を実行するのと同じ効果があります。 |
--no-remove (APT::Get::Remove ) | --no-remove コマンドオプションは、apt-get が実行された際に、削除される予定のパッケージがある場合に、即座にプロンプトなしで中止するようにします。 |
--auto-remove , --autoremove (APT::Get::AutomaticRemove ) | --auto-remove , --autoremove コマンドオプションは、実行されたコマンドがパッケージのインストールまたは削除である場合に、未使用の依存関係パッケージを削除する autoremove コマンドを実行したかのように機能します。 |
--only-source (APT::Get::Only-Source ) | --only-source オプションは、source コマンドと build-dep コマンドにのみ意味があります。指定されたソース名がバイナリテーブルを通じてマップされないことを示します。つまり、このオプションが指定されている場合、これらのコマンドはバイナリパッケージ名を受け入れて対応するソースパッケージを検索するのではなく、ソースパッケージ名のみを引数として受け入れます。 |
--diff-only (APT::Get::Diff-Only ) | --diff-only コマンドオプションは、ソースアーカイブの差分ファイルのみをダウンロードします。 |
--dsc-only (APT::Get::Dsc-Only ) | --dsc-only コマンドオプションは、ソースアーカイブから dsc ファイル (Debian Source Control) のみをダウンロードします。 |
--tar-only (APT::Get::Tar-Only ) | --tar-only コマンドオプションは、ソースアーカイブから tar ファイルのみをダウンロードします。 |
--arch-only (APT::Get::Arch-Only ) | --arch-only コマンドオプションは、アーキテクチャ依存のビルド依存関係のみを処理します。 |
--indep-only (APT::Get::Indep-Only ) | --indep-only コマンドオプションは、アーキテクチャに依存しないビルド依存関係のみを処理します。 |
--allow-unauthenticated (APT::Get::AllowUnauthenticated ) | --allow-unauthenticated コマンドオプションは、パッケージの認証ができない場合に無視し、そのことについてプロンプトを表示しません。ローカルリポジトリで作業する際に便利ですが、ユーザー自身が他の方法でデータの信頼性を保証しない限り、これは大きなセキュリティリスクです。通常、sources.list (5) エントリの Trusted オプションの使用が、このグローバルオーバーライドよりも優先されるべきです。 |
--no-allow-insecure-repositories (Acquire::AllowInsecureRepositories ) | --no-allow-insecure-repositories コマンドオプションは、update コマンドが信頼できないソースからデータを取得するのを禁止します。APT は、有効な暗号化署名のないリポジトリに対して update コマンドで失敗します。この概念やその影響についての詳細については、apt-secure (8) を参照してください。 |
--allow-releaseinfo-change (Acquire::AllowReleaseInfoChange ) | --allow-releaseinfo-change コマンドオプションは、リポジトリがリリース情報を変更した場合にも、update コマンドがデータのダウンロードを続行できるようにします。ただし、変更が確認されるまで APT は失敗します。これにより、ユーザーが変更に備えることができます。詳細については apt-secure (8) を参照してください。 |
--show-progress (Dpkg::Progress, Dpkg::Progress-Fancy ) | --show-progress コマンドオプションは、パッケージがインストール、アップグレード、または削除される際に、ターミナルウィンドウにユーザーフレンドリーな進行状況情報を表示します。これにより、ユーザーは操作が進行中であることを把握しやすくなります。この進行状況情報は、操作の進捗状況や予想される完了時間などを示す場合があります。また、このデータの機械解析可能なバージョンについては、APT のドキュメントディレクトリにある README.progress-reporting を参照してください。 |
--with-source | --with-source コマンドオプションは、指定されたファイルをメタデータのソースとして追加します。このオプションは、複数のファイルを追加するために繰り返し使用することができます。これにより、パッケージやリポジトリに関する情報を補完するための追加のデータを指定することができます。詳細については、apt-cache (8) の --with-source の説明を参照してください。 |
-eany , --error-on=any | -eany , --error-on=any コマンドオプションは、更新コマンドが一時的なものであっても、どんなエラーが発生した場合でも失敗させます。つまり、更新中に発生した任意のエラーがあれば、コマンド全体が失敗することを意味します。 |
-h , --help | -h , --help コマンドオプションは、簡潔な使用方法の概要を表示します。このオプションを使用すると、コマンドの基本的な使い方や利用可能なオプションに関する情報が表示されます。 |
-v , --version | -v , --version コマンドオプションは、プログラムのバージョン情報を表示します。通常、このオプションを使用すると、実行しているプログラムのバージョン番号やビルド情報が表示されます。 |
-c , --config-file | -c , --config-file コマンドオプションは、プログラムが使用する設定ファイルを指定します。通常、プログラムはデフォルトの設定ファイルを読み込みますが、このオプションを使用すると、代わりに指定した設定ファイルが読み込まれます。設定ファイルの構文や詳細については、apt.conf (5) を参照してください。 |
-o , --option | -o , --option コマンドオプションは、任意の設定オプションを指定します。このオプションを使用すると、例えば -o Foo::Bar=bar のように、特定の設定を行うことができます。また、-o や --option は複数回使用して、異なるオプションを設定することができます。 |
関連するファイルとディレクトリ
apt-get コマンドに関連するファイルとディレクトリは以下の通りです。
設定ファイル(設定項目) | 説明 |
---|---|
/etc/apt/sources.list (Dir::Etc::SourceList ) | このファイルは、パッケージを取得するためのリポジトリの場所を指定します。 |
/etc/apt/sources.list.d/ (Dir::Etc::SourceParts ) | このディレクトリは、パッケージを取得するためのリポジトリの場所に関するファイルフラグメントが含まれています。 |
/etc/apt/apt.conf (Dir::Etc::Main ) | このファイルは、APT の設定ファイルであり、APT の主要な設定が含まれています。 |
/etc/apt/apt.conf.d/ (Dir::Etc::Parts ) | このディレクトリは、APT の設定ファイルが複数のファイルに分割されて含まれています。このディレクトリ内の各ファイルは、APT の設定の一部を表しており、それぞれ個別の設定項目を定義しています。 |
/etc/apt/preferences (Dir::Etc::Preferences ) | このファイルは、バージョンの優先設定を定義するためのものであり、一般的に pinning と呼ばれます。つまり、特定のパッケージを別のソースから取得したり、ディストリビューションの異なるバージョンから取得したりするための設定を行う場所です。 |
/etc/apt/preferences.d/ (Dir::Etc::PreferencesParts ) | このディレクトリは、バージョンの優先設定に関するファイルフラグメントを含んでいます。つまり、/etc/apt/preferences と同様に、特定のパッケージのバージョンを別のソースから取得したり、異なるディストリビューションのバージョンから取得したりするための設定を行うためのファイルをこのディレクトリに配置します。 |
/var/cache/apt/archives/ (Dir::Cache::Archives ) | このディレクトリは、取得したパッケージファイルの保存領域です。APT がダウンロードしたすべてのパッケージファイルがここに一時的に保存されます。 |
/var/cache/apt/archives/partial/ (Dir::Cache::Archives ) | このディレクトリは、APT がダウンロードしたパッケージファイルの一時的な保存場所であり、まだ完全にダウンロードされていないパッケージファイルが保管されます。このディレクトリの場所は、Dir::Cache::Archives の設定項目に partial が暗黙的に追加されます。 |
/var/lib/apt/lists/ (Dir::State::Lists ) | このディレクトリは、sources.list ファイルで指定された各パッケージリソースの状態情報の保存領域です。APT は、このディレクトリ内のファイルを使用して、利用可能なパッケージのリストやその他のメタデータを管理します。 |
/var/lib/apt/lists/partial/ (Dir::State::Lists ) | このディレクトリは、APT がパッケージリストのダウンロード中に一時的に使用する状態情報の保存領域です。APT がリストのダウンロードを完了すると、このディレクトリからファイルが削除されます。 |
LPIC apt-get コマンド