何かをインストールしたり、アップデートやアップグレードをしたり、、、など、いろいろな場面で使う機会の多いapt-getコマンド。現在ではaptに置き換わっているものもありますが、「aptコマンドを理解するためにはapt-getコマンドの理解は必須なのでは?」という思いから、apt-getコマンドマニュアルman apt-getとヘルプapt-get -hを調べ、実例を追加するなどしてまとめてみました。
書式などは、マニュアルページの表記に準ずるように記載しています。
- コマンド名:apt-get
- セクション番号:8(システム管理コマンド)
- バージョン:2.8.3(amd64)(12 March 2024)
apt-getコマンドの書式
apt-getコマンドは、APTパッケージ処理に役立つコマンドラインインターフェイスです。インターフェイス(interface)は、「境界」や「接点」という意味で、「コマンドライン同士ののシステムをつなぐ」と解釈できます。
マニュアルには以下の書式が書かれています。
apt-get [ -sqdyfmubV ] [ -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}}
※apt-getマニュアルページによる書式(マニュアルルールに則り、太字などの文字体裁を補正して表示しました)
となっています。この書式は、並列で複数のオプションなどが同時に記載されているため煩雑に見えますが、マニュアル表記のルールのとおりに読めば難しくありません。(マニュアル表記の統一ルールを見る)
上の書式の各コマンドやオプション名をクリックすると、各項目の説明欄に移動するようにリンクを設けています。使い方や実行例などは、コマンドやオプションなどを直接クリックして各項目欄でご確認ください。
補足の書式
apt-getマニュアル(man apt-get)に記載されているコマンドやオプションのうち、上記の書式に含まれていないコマンドとオプションがあったので追加で記載しました。クリックすると説明項目へ移動します。
apt-get [-U] { reinstall | satisfy | distclean | autopurge | changelog | indextargets } [--no-install-recommends] [--install-suggests] [--no-download] [--assume-no] [--no-show-upgraded] [-P] [--ignore-hold] [--with-new-pkgs] [--no-upgrade] [--only-upgrade] [--allow-downgrades] [--allow-remove-essential] [--allow-change-held-packages] [--force-yes] [--print-uris] [--purge] [--reinstall] [--list-cleanup] [-S] [--trivial-only] [--mark-auto] [--no-remove] [--auto-remove] [--only-source] [--diff-only] [--arch-only] [--indep-only] [--allow-unauthenticated] [--allow-insecure-repositories] [--allow-releaseinfo-change] [--show-progress] [--with-source filename] [-e any]
※apt-getマニュアルページによる書式(マニュアルルールに則り、太字などの文字体裁を補正して表示しました)
DESCRIPTION(説明)
apt-getは、認証されたソースからパッケージや情報を検索したり、依存関係を伴うパッケージのインストール・アップグレード・削除をしたりするコマンドラインインターフェースです。
-h(または--help)オプションを指定していない場合は、必ず以下のいずれかのコマンドを指定しなければなりません。
update
updateは、「新しいパッケージリストを取得する」コマンドです。
updateを実行すると、
- パッケージインデックスファイルをソースから再同期します。
apt-getが「新しいバージョンのパッケージを利用可能」ということを認識します。
重要:
upgrade、dist-upgrade、installコマンドを実行する前には、必ずupdateを実行しなければなりません。【実行例】
使用できるオプション:
- 進行状況の出力(表示)を省略し、ログに適した出力を生成するには
-q updateコマンドで使用できるその他のオプションは-c・--print-uris・--list-cleanup・--no-list-cleanup・-S・--allow-releaseinfo-change・-e・
実行例:upgradeやinstallの前に行うアップデート
sudo apt-get update
※パスワードを求められるので、[パスワード]を入力して[Enter]キーを押します
(その他の詳しい説明は、端末でman apt-getを実行し、updateの項目を確認してください)
upgrade
upgradeは、「現在システムにインストールされているすべてのパッケージの最新バージョンをソースからインストールする」コマンドです。【実行例】
upgradeを実行すると、
- 現在、インストールされているパッケージで利用可能な新しいバージョンを取得し、アップグレードします。(現在インストールされているパッケージが削除されたり、インストールしていないパッケージが勝手にインストールされることはありません)。
- 現在インストールされているパッケージの新しいバージョンは、別のパッケージのインストールステータスを変更せずにアップグレードできないときは、現在のバージョンのままになります。
- パッケージ(pkg)が引数として指定された場合は、アップグレードアクションの前にパッケージがインストールされます。
重要:
upgradeを実行する前に、最初にupdateを実行する必要があります。
メモ:
- 特定のパッケージだけをアップグレードしたい場合は、
upgradeコマンドは使わずにinstallコマンドで--only-upgradeオプションを付けて指定することができます。【実行例】
使用できるオプション:
- 進行状況の出力(表示)を省略し、ログに適した出力を生成するには
-q - アップグレード時に聞かれる[Y/n]を先に[Yes]と答えておくには
-y【実行例】 - アップグレード時に、パッケージの完全なバージョンを表示するには
-V【実行例1】【実行例2】 upgradeコマンドで使用できるその他のオプションは--no-show-upgraded・--ignore-hold・--with-new-pkgs・--allow-downgrades・--allow-change-held-packages・--trivial-only・--show-progress・
実行例:すべてのパッケージの最新バージョンをインストールする(updateを実行してから)
sudo apt-get upgrade
管理者権限sudoが必要です。パスワードを求められたら[パスワード]を入力して[Enter]キーを押します。
(その他の詳しい説明は、端末でman apt-getを実行し、upgradeの項目を確認してください)
dselect-upgrade
dselect-upgrade は、「従来の Debian パッケージングフロントエンドであるdselect(1)と組み合わせて使う」コマンドです。
メモ:
続けて説明が書かれていますが、筆者の環境では、deselct(1)のをインストールしておらず、内容の確認ができないので、これ以上の説明を省きます。
(詳細は、端末でman apt-getを実行し、dselect-upgradeの項目を確認してください)
dist-upgrade
dist-upgrade は、「upgrade に加えて、パッケージの新しいバージョンによる依存関係の変更もインテリジェント(高度・自動的に)に処理する」コマンドです。
dist-upgradeを実行すると、
- パッケージ(pkg)が引数として指定されている場合、
upgradeの前にパッケージがインストールされます。 - 重要度の低いパッケージを犠牲にして、最も重要なパッケージのアップグレードを試みることがあるため、一部のパッケージを削除する可能性があります。(個々のパッケージの一般設定を上書きするメカニズムはapt_preferences(5)参照)
実行例:パッケージの新しいバージョンによる依存関係も変更したい(先にupdateを実行してから)
sudo apt-get dist-upgrade
管理者権限sudoが必要です。パスワードを求められたら[パスワード]を入力し[Enter]キーを押します
(詳細は、端末でman apt-getを実行し、dist-upgradeの項目を確認してください)
install
installは、「指定されたパッケージ(pkg)の最新バージョンをインストール、またはアップグレードする」コマンドです。
installを実行すると、
- インストール対象として指定されたパッケージに必要なすべてのパッケージが同時にダウンロードされ、インストールされます。(「依存パッケージ(Depends)」と「推奨パッケージ(Recommends)」)
- アップグレードしたいpkgを指定した場合は、そのパッケージと依存関係がダウンロードされてインストールされます。
重要:
installを実行する前に、最初にupdateを実行する必要があります。
メモ:
- pkgはパッケージ名です(※ファイル名ではありません)【実行例】
- pkgを複数指定する場合は半角スペースで区切リます。【実行例】
- pkgの前に「– ハイフン」を追加すると指定されたパッケージがインストールされている場合は削除されます。【実行例】
- pkgの前に「+ プラス記号」を追加するとapt-getの競合解決システムによって行われた決定を上書きするために使うことができます。【実行例】
- pkgの後に「= イコール」と「選択するpkgのバージョン」を記述すると、パッケージのバージョンを指定できます。【実行例】
- pkgの後に「/ スラッシュ」と「ディストリビューションのバージョン」、または「アーカイブ名(stable、testing、unstable)」を記述すると、特定のディストリビューションを選択することができます。※パッケージをダウングレードする可能性があるので注意が必要です。【実行例】
- オプションを使うことにより、インストールするパッケージを制御することができます。(「依存パッケージ(Depends)」「推奨パッケージ(Recommends)」「提案パッケージ(Suggests)」など)
使用できるオプション:
- インストール済みの最新バージョンのパッケージを再インストールするには
--reinstall【実行例】 - 特定のパッケージをアップグレードするには
--only-upgrade【実行例】 - パッケージのダウンロードだけをおこなうには
-d【実行例】 - 「推奨パッケージ(Recommends)」をインストールしないようにするには
--no-install-recommends【実行例】 - 「提案パッケージ(Suggests)」を併せてインストールするには
--install-suggests【実行例】 - パッケージのダウンロードを無効にしてインストールするには
--no-download【実行例】 - パッケージのアップグレードを行わずにインストールするには
--no-upgrade - 壊れた依存関係があるシステムの修正を試みるには
-f - 指定されたコマンドを実行する前に
updateコマンドを実行するには-U【実行例】 - インストール時に聞かれる[Y/n]を先に[Yes]と答えておくには
-y【実行例】 - インストール時に、パッケージの完全なバージョンを表示するには
-V【実行例】 - 未使用の依存パッケージを削除するには
--auto-remove【実行例】 - 進行状況の出力(表示)を省略し、ログに適した出力を生成するには
-q【実行例】 - 進捗情報を表示するには
--show-progress【実行例】 - その他
installコマンドで使用できるオプションは-o・-m・-s・--assume-no・--mark-auto・--allow-unauthenticated・--allow-insecure-repositories・--with-source・--print-uris・-t・--no-remove・
実行例:pkgをインストール、またはアップグレードする記述例:
sudo apt-get install pkg
※pkgはパッケージ名です。必要なすべてのパッケージがダウンロード&インストールされます。
実行例:pkgAとpkgBを同時にインストールする記述例
sudo apt-get install pkgA pkgB
※2つ以上のpkgを同時にインストールする場合は、半角スペースで区切ります。
実行例:インストールされているpkgを削除する
sudo apt-get install -pkg
※pkgの前にハイフンを追加すると、指定されたパッケージがインストールされている場合は削除されます。「-」と「pkg」は間にスペースを入れず、続けて記述します。
実行例:pkgの競合を解決する
sudo apt-get install +pkg
※pkgの前にプラス記号を追加すると、apt-getの競合解決システムによって行われた決定を上書きします。「+」と「pkg」は間にスペースを入れず、続けて記述します。
実行例:pkgのバージョンを指定してインストールする記述例:
sudo apt-get install pkg=pkg_version_number
※pkgはパッケージ名です。
実行例:特定のディストリビューションを選択してインストールする例:
sudo apt-get install pkg/target_release
※pkgはパッケージ名です。パッケージをダウングレードする可能性があるので注意が必要です。
(その他の詳しい説明は、端末でman apt-getを実行し、installの項目を確認してください)
remove
remove は、「指定されたパッケージ(pkg)を削除する」コマンドです。
removeを実行すると、
- pkgの設定(構成)ファイルを削除せずにpkgを削除します。
- pkgを削除しても、設定(構成)ファイルはシステムに残ります。
- 「パッケージを削除する」以外は
installと同じです。
メモ:
使用できるオプション:
- 壊れた依存関係があるシステムの修正を試みるには
-f(注意書きがあるので実行前に確認してください) - 未使用の依存パッケージを削除するには
--auto-remove【実行例】 - 設定ファイルも含めてパッケージを削除するには
--purge【実行例】 removeコマンドで使用できるその他のオプションは-U・--allow-remove-essential・--show-progress・
実行例:pkgを削除(アンインストール)する
sudo apt-get remove pkg
※パッケージ(pkg)を削除しますが、設定(構成)ファイルは削除されずにシステムに残ります。
実行例:pkgをインストールする(removeコマンドでパッケージをインストールする例)
sudo apt-get remove +pkg
※pkgの前にプラス記号を追加すると、指定されたパッケージが(削除ではなく)インストールされます。「+」と「pkg」は間にスペースを入れず、続けて記述します。
(その他の詳しい説明は、端末でman apt-getを実行し、removeの項目を確認してください)
purge
purge は、「指定されたパッケージ(pkg)と設定(構成)ファイルをすべて削除する」コマンドです。
purgeを実行すると、
- pkgとpkgの設定(構成)ファイル、すべてが削除されます。
- 設定(構成)ファイルはシステムに残りません。
- 「パッケージを削除」し、「設定(構成)ファイルも一括削除される」以外は
removeと同じです。
メモ:
- pkgは、パッケージ名です(ファイル名ではありません)【実行例】
- 「purge」には、
purgeコマンドと--purgeオプションがあります。「purgeコマンドを使用したsudo apt-get purge pkg」という記述方法と、--purgeオプションを使用した「sudo apt-get remove --purge pkg」という記述方法は同じ意味となる別の記述方法です。どちらの記述を実行しても同じ結果となり、「パッケージと構成ファィルのすべてが削除」されます。
実行例:pkgと設定(構成)ファィルをすべて削除する
sudo apt-get purge pkg
※パッケージと設定(構成)ファイルともにすべて削除されます。
(その他の詳しい説明は、端末でman apt-getを実行し、purgeの項目を確認してください)
source
source は、「apt-get にソースパッケージを取得させる」コマンドです。
sourceを実行すると、
- 利用可能な最新バージョンのソースパッケージを現在のディレクトリにダウンロードします。
- 場合により、バイナリパッケージも同時にダウンロードすることがあります。
ヒント:
- pkgは、パッケージ名です。(ファイル名ではありません)【実行例】
使用できるオプション:
- ソースパッケージをコンパイルするには
-b - ソースパッケージだけをダウンロードするには
--only-source - ソースアーカイブのdiff,dsc,tarファイルのみダウンロードするには
--diff-only - ファイルを取得せずに、URLsを表示するには
--print-uris
実行例:
sudo apt-get source pkg
パッケージのソースコードをダウンロードします。
(その他の詳しい説明は、端末でman apt-getを実行し、sourceの項目を確認してください)
build-dep
build-dep は、「指定されたソースpkgのインストールや削除を指示する」コマンドです。
build-depを実行すると、
- pkgの依存関係を満たすためにインストールや削除をおこないます。(「ソースパッケージのビルド依存関係」を満たすため、apt-getにpkgのインストールや削除を指示します)
ヒント:
使用できるオプション:
- ソースパッケージ名のみ引数として受け入れるには
--only-source - アーキテクチャに依存するビルド依存関係のみを処理するには
--arch-only - アーキテクチャに依存しないビルド依存関係のみを処理するには
--indep-only apt-get source --compileによってビルド関係がどのように満たされるのかを制御するには-Papt-get source --compileによってpkgがビルドされるアーキテクチャと、ビルド間の依存関係を制御するには-a
実行例:
sudo apt-get build-dep pkg
(その他の詳しい説明は、端末でman apt-getを実行し、build-depの項目を確認してください)
download
download は、「指定されたバイナリpkgを現在のディレクトリにダウンロードする」コマンドです。
downloadを実行すると、
- バイナリpkgを現在のディレクトリにダウンロードします。(パッケージデータの信頼性は保証されます)
ヒント:
- pkgは、パッケージ名です。(ファイル名ではありません)
実行例:
sudo apt-get download pkg [{=pkg_version_number | /target_release}]…
(その他の詳しい説明は、端末でman apt-getを実行し、downloadの項目を確認してください)
check
check は、「診断ツール」のコマンドです。
checkを実行すると、
- パッケージキャッシュを更新し、壊れた依存関係をチェックします。
メモ:
aptコマンドでは使用できませんでした。apt-getコマンドで使用してください(調査中)
使用できるオプション:
実行例:パッケージのキャッシュを更新して壊れた依存関係があるかをチェックする
sudo apt-get check
(その他の詳しい説明は、端末でman apt-getを実行し、checkの項目を確認してください)
clean
clean は、「取得したパッケージファイルのローカルリポジトリをクリアする」コマンドです。
cleanを実行すると、
- キャッシュされているdebファイルをロックファイル以外すべて削除します。
メモ:
実行例は省略します。
(その他の詳しい説明は、端末でman apt-getを実行し、cleanの項目を確認してください)
autoclean
autoclean は、「取得したパッケージファイルをローカルリポジトリから削除する」コマンドです。
autocleanを実行すると、
- ダウンロードできず、役に立たなくなったパッケージファイルだけをローカルリポジトリから削除します。キャッシュが制御不能にならず、長期間維持できるようになります。
実行例:使わなくなったパッケージファイルをローカルリポジトリから削除する
sudo apt-get autoclean
削除したパッケージファイルがあれば、削除したパッケージ名が表示されます
(その他の詳しい説明は、端末でman apt-getを実行し、autocleanの項目を確認してください)
autoremove
autoremove は、「他のパッケージの依存関係を満たすため、自動的にインストールや削除を行う」コマンドです。(1.1以降のauto-removeの別名)
autoremoveを実行すると、
- 他のパッケージの依存関係を満たすために自動的にインストールされたパッケージのうち、現在不要になっているパッケージを削除します。【実行例】
- 設定(構成)ファイルは削除されません。
- (
--auto-removeオプションも参照ください)
メモ:
autoremoveコマンドと同じ意味を持つ記述方法がいくつかあります。installやremoveコマンドに--auto-removeオプションを付けて実行するとautoremoveコマンドを単独で実行するのと同じ結果になります。
【sudo apt-get install --auto-remove】【sudo apt-get remove --auto-remove】【sudo apt-get autoremove】
使用できるオプション:
実行例:他のパッケージの依存関係を満たすために自動的にインストールや削除する
sudo apt-get autoremove
(その他の詳しい説明は、端末でman apt-getを実行し、autoremoveの項目を確認してください)
autopurge
autopurge は、「不要になった自動インストールパッケージと、その設定ファイルを削除する」コマンドです。
autopurgeを実行すると、
- 他のパッケージの依存関係を満たすために自動的にインストールや削除をします。【実行例】
- 削除する場合は設定(構成)ファイルも削除します。
メモ:
autopurgeコマンドはautoremove --purgeのショートカットです。autoremoveコマンドに--purgeオプションを付けて実行するとautopurgeコマンドを単独で実行するのと同じ結果になります。
【sudo apt-get autoremove --purge】【sudo apt-get autopurge】
実行例:不要になった自動インストールパッケージを設定ファイルとともに削除する
sudo apt-get autopurge
sudo apt-get autoremove --purgeと同じ意味です
(その他の詳しい説明は、端末でman apt-getを実行し、autopurgeの項目を確認してください)
reinstall
reinstallは、「インストール済みの最新バージョンのパッケージを再インストールする」コマンドです。
メモ:
-
reinstallはinstall --reinstallの別名です。 - 説明は省略します。詳細は
installコマンドや--reinstallオプションを参照ください。
実行例:
sudo apt-get reinstall pkg
sudo apt-get install --reinstall pkgと同じ意味です。
satisfy
satisfyは、「指定された依存関係文字列を満たすようにする」コマンドです。
メモ:
- 同じタイプの文字列を複数指定できます。
- その他の説明や実行例は省略します。(詳細は
man apt-getなどで確認してください)
distclean
distcleanは、「Release、Release.gpg、InReleaseを除く/var/liv/apt/lists以下のすべてのファイルを削除する」コマンドです。
メモ:
説明や実行例は省略します。(詳細はman apt-getなどで確認してください)
changelog
changelogは、「パッケージの変更履歴をダウンロードして表示する」コマンドです。
changelogを実行すると、
- インストールされているバージョンの変更履歴が表示されます。
使用できるオプション:
installコマンドと同じオプションが指定できます(とありますが、確認はしていません)
メモ:
説明や実行例は省略します。(詳細はman apt-getを確認してください)
indextargets
indextargetsは、「sudo apt-get updateがダウンロードするすべてのデータファイルに関する情報をリスト表示する」コマンドです。
メモ:
説明や実行例は省略します。(詳細はman apt-getを確認してください)
OPTIONS(オプション)
apt-getマニュアル(man apt-get)に記載されているオプションを各コマンドと紐付けしたり、実行例を記載するなどしてまとめました。(筆者がマニュアルから学んだ内容です。専門的な解釈とは異なっていることがあるかもしれません)
-sqdyfmubV
書式に記載されている-sqdyfmubV は、それぞれ個別のオプション名です。意味はそれぞれのオプションごとに異なるため、各項目欄で確認してください。
-sオプション(小文字のs)
-s --simulate --just-print --dry-run --recon --no-act
-sオプションは、「実際にシステムを変更せずに、現在のシステム状態に基づいて発生するイベントのシュミレーションを実行する」オプションです。
メモ:
ロックが無効になるため、apt-getを実行中にシステム状態が変化する可能性があるので注意が必要です。
使用できるコマンド:
- 書式を確認すると(ほぼすべての)コマンドに使用できそうです(すべてのコマンドを実際に実行して確認はしていません)
- シュミレーションで
checkコマンドを実行してみた例です【実行例】(checkコマンドのみ試してみました)
実行例:シュミレーションでcheckコマンドを実行してみる
apt-get check -s
管理者権限sudoを付けずに実行できますが、注意書きが表示されます。実際の実行にはsudoを付けます。
(詳細は、端末でman apt-getを実行し、OPSION項目の-sオプションを確認してください)
-qオプション
-q --quiet
-qオプションは、「進行状況インジケーターを省略し、ログに適した出力を生成する」オプションです。
メモ:
qを2つ続けた-qqオプションを指定することもできますが、-d・--print-uris・-sオプションなどを指定せずに-qqを使うと、APTが予期しない動作を行なう可能性があるので注意が必要です。
使用できるコマンド:
- 書式を確認すると(ほぼすべての)コマンドに使用できそうです(すべてのコマンドを実際に実行して確認はしていません)
install・update・他(筆者は「状況が見える=-qオプションを使わない」が好みなので、左記のコマンド以外試していません)
実行例:インストール時の出力を省略したい
sudo apt-get install -q pkg
(詳細は、端末でman apt-getを実行し、OPSION項目の-qオプションを確認してください)
-dオプション
-d --download-only
-dオプションは、「ダウンロードだけを行う」オプションです。
メモ:
- パッケージファイルを取得しますが、解凍やインストールは行いません。
installコマンドで-dオプションを指定すると、パッケージをインストールせずにダウンロードだけをおこなうことができます。(その後、ダウンロードしたパッケージを後からインストールするときは--no-downloadオプションを使います)
使用できるコマンド:
実行例:バッケージのインストールはせず、ダウンロードだけしておきたい
sudo apt-get install -d pkg
インストールしないので、パッケージは使えるようになりません。インストールするには--no-downloadオプションを使います。
(詳細は、端末でman apt-getを実行し、OPSION項目の-dオプションを確認してください)
-yオプション
-y --yes --assume-yes
-yオプションは、「プロンプトに自動的に[はい]と答える」オプションです。
メモ:
- プロンプトに対するすべての答えを[はい]として、非対話形式で実行します。
- 「保留中のパッケージを変更する」「認証されていないパッケージのインストール」「必須パーケージの削除」など、望ましくない状況が発生した場合にはapt-getは中止されます。
- 対話形式の場合はパッケージ名や確認事項などが表示され[Y/n]と聞かれますが、
-yオプションをつけると確認事項などが表示されないので注意が必要です。
参考:
-yオプションとは逆の「すべてのプロンプトに[いいえ]と答える」オプションは--assume-noです
使用できるコマンド:
実行例:バッケージのインストール時、[Y/n]を[Yes]と先に答えておく
sudo apt-get install -y pkg
-yオプションをつけるとパッケージ名やその他確認事項が表示されずにコマンドが実行されます。
実行例:アップグレード実行時、先に[Yes]と答えておく
sudo apt-get upgrade -y
非対話形式で実行されるので、確認事項は表示されずにコマンドが実行されます。
(詳細は、端末でman apt-getを実行し、OPSION項目の-yオプションを確認してください)
-fオプション
-f --fix-broken
-fオプションは、「壊れた依存関係があるシステムの修正を試みる」オプションです。
メモ:
installやremoveコマンドと組み合わせて使うとAPTが適切な解決策を推測できるようにします。- pkgを指定した場合は、問題が完全に修正される必要があります。
- 場合により、手動で
dpkg --removeを使う必要が出ることがあります。(APTは、壊れたパッケージ依存関係がシステム上に存在することを許可しないため) -mオプションと同時に使用するとエラーが発生する可能性があるので注意が必要です。
使用できるコマンド:
(詳細は、端末でman apt-getを実行し、OPSION項目の-fオプションを確認してください)
-mオプション
-m --ignore-missing --fix-missing
-mオプションは、「不足しているパッケージを無視する」オプションです。
メモ:
- 「パッケージを取得できない」「パッケージ取得後に整合性チェックに失敗した」「パッケージファイルが破損している」場合は、それらのパッケージを保留して結果を処理します。
-fオプションと同時に使用すると、エラーが発生する可能性があるので注意が必要です。
使用できるコマンド:
- 書式を確認すると(ほぼすべての)コマンドに使用できそうです(すべてのコマンドを実際に実行して確認はしていません)
- 実例の記載は省略します。
(詳細は、端末でman apt-getを実行し、OPSION項目の-mオプションを確認してください)
-Uオプション(-u改め※)
-U --update
※man apt-getマニュアル内の書式には「小文字のu」がオプションとして記載されていますが、マニュアル内に「-u」がなかったため、「大文字のU」、すなわち-U(大文字のU)オプションをここに記載しています。-u(小文字のu)オプションはなかったのでわかりません。
-Uオプションは、「指定されたコマンドの前にupdateコマンドを実行する」オプションです。
メモ:
※警告文に「ロックの取得に失敗する場合がある」と記載があります。実行する場合は、マニュアルなどでよく確認してください。
使用できるコマンド:
install【実行例】remove・safe-upgrade※・full-upgrade※(※safe-upgradeとfull-upgradeコマンドの説明がapt-getマニュアルになかったので説明は省きます。full-upgradeはaptマニュアルの方に説明があったので、そちらに記載しました)
実行例:pkgのインストール時、アップデートをしてからインストールする(※注意点あり)
sudo apt-get -U install pkg
ロックの取得に失敗する場合があるとの記載があるので、sudo apt-get updateでアップデートをしてから、installした方がよいのでは?と感じています
(詳細は、端末でman apt-getを実行し、OPSION項目の-Uオプションを確認してください)
-bオプション
-b --compile --build
-bオプションは、「ソースパッケージをダウンロード後、コンパイルする」というオプションです。
メモ:
- ビルド関係をどのように満たすかを制御するには
build-depコマンドで-Pオプションを指定します。 - pkgがビルドされるアーキテクチャと、ビルド間の依存関係を制御するには
build-depコマンドで-aオプションを使います。
使用できるコマンド:
実行例:
sudo apt-get source -b
(詳細は、端末でman apt-getを実行し、OPSION項目の-bオプションを確認してください)
-Vオプション(大文字のV)
-V --verbose-versions
-Vオプションは、「アップグレードやインストールされたpkgの完全なバージョンを表示する」オプションです。
使用できるコマンド:
実行例1:保留中のパッケージがあるときに-Vオプションを付けてアップグレード
sudo apt-get -V upgrade
以下のように、パッケージ名と「アップグレードする前のバージョン=>アップグレード後のバージョン」が表示されます
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
アップグレードパッケージを検出しています... 完了
The following upgrades have been deferred due to phasing:(訳:以下のアップグレードは段階的な変更により延期されました)
パッケージ名A ( 前バージョン => 後バージョン )
パッケージ名B ( バージョンが表示されます ) ⬅ -Vオプションを付けなければバージョンは表示されません
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 2 個。
実行例2:保留中のパッケージがあるときに-Vオプションを付けて、パッケージを指定してアップグレード
sudo apt-get -V upgrade pkg
上記の結果にプラスしてパッケージのバージョンが表示されます。
・・・略・・・
パッケージ名Z はすでに最新バージョン ( バージョンが表示されます ) です。 ⬅ pkgを指定するとバージョンが表示されます
・・・略・・・
実行例:インストール時、パッケージの完全なバージョンを表示する
sudo apt-get -V install pkg
(詳細は、端末でman apt-getを実行し、OPSION項目の-Vオプションを確認してください)
-oオプション
-o --option
-oオプションは、「構成オプションを設定する」オプションです。任意の構成オプションを設定したいときに使います。
使用できるコマンド:
install・他(その他の使用できるコマンドは不明です)- 実行例は省略します
(詳細は、端末でman apt-getを実行し、OPSION項目の-oオプションを確認してください)
-cオプション
-c --config-file
-cオプションは、「使用する構成ファイルを指定する」オプションです。
メモ:
- プログラムはデフォルトの構成ファイルを読み取ったあと、
-cオプションで指定した構成ファイルを読み取ります。
使用できるコマンド:
update・他(その他の使用できるコマンドは不明です)- 実行例は省略します。
(詳細は、端末でman apt-getを実行し、OPSION項目の-cオプションを確認してください)
-tオプション
-t --target-release --default-release
-tオプションは、「ポリシーエンジンへのデフォルトの入力を制御する」オプションです。
メモ:
- 指定されたリリース文字列(target release)を使い優先度を制御しますが、設定を上書きするなど注意が必要です。
- このオプションを指定する場合はマニュアルでよく確認してから実行してください
使用できるコマンド:
install・他(その他の使用できるコマンドは不明です)- 実行例は省略します。
(詳細は、端末でman apt-getを実行し、OPSION項目の-tオプションを確認してください)
-aオプション
-a --host-architecture
-aオプションは、「apt-get source --compileによってpkgがビルドされるアーキテクチャと、ビルド間の依存関係を制御する」オプションです。
メモ:
このオプションを指定する場合はマニュアル等でよく確認してから実行してください。
使用できるコマンド:
build-dep・(その他の使用できるコマンドは不明です)- 実行例は省略します。
(詳細は、端末でman apt-getを実行し、OPSION項目の-aオプションを確認してください)
-vオプション(小文字のv)
-v --version
-vオプションは、「プログラムのバージョンを表示する」オプションです。
メモ:
-vオプション指定時は、installなどのコマンドは不要です。指定した場合は無視され、バージョンが表示されます
使用できるコマンド:
なし【実行例】
実行例:apt-getのバージョンを表示する
apt-get -v
管理者権限sudoは不要です。
-hオプション
-h --help
-hオプションは、「簡単な使用方法の概要を表示する」オプションです。
メモ:
-hオプション指定時は、installなどのコマンドは不要です。指定した場合は無視され、apt-getの簡単な使用方法画面が表示されます
使用できるコマンド:
なし【実行例】
実行例:apt-getコマンドの簡単な使用方法を表示する
apt-get -h
(詳細は、端末でman apt-getを実行し、OPSION項目の-hオプションを確認してください)
–no-install-recommends
--no-install-recommendsは、「推奨パッケージをインストール時の依存関係として考慮しない」オプションです。
メモ:
- 必須の「依存パッケージ(Depends)など」だけをインストールします。
- デフォルトでは、パッケージのインストール時、必須ではない「推奨パッケージ(Recommends)」も同時にインストールされるので、推奨パッケージをインストールしたくないときにつけると良いオプションです。
使用できるコマンド:
実行例:必須のパッケージのみインストールし、推奨パッケージはインストールしない
sudo apt-get install --no-install-recommends pkg
(実際に計測してませんが、)インストールが短時間で済むようです
–install-suggests
--install-suggestsは、「インストールの依存関係として提案されたパッケージ(Suggests)を考慮する」オプションです。
メモ:
- 通常のインストールにプラスして、「提案パッケージ(Suggests)」も併せてインストールします。
- 「必須の依存パッケージ(Depends)」と「推奨パッケージ(Recommends)」と「提案パッケージ(Suggests)」がインストールされます。
使用できるコマンド:
実行例:インストール時、提案パッケージ(Suggests)も併せてインストールする
sudo apt-get install --install-suggests pkg
–no-download
--no-downloadは、「パッケージのダウンロードを無効にする」オプションです。
メモ:
すでにダウンロード済みのパッケージをインストールするときに使用します。(パッケージのダウンロードだけを行うには-dオプションを使用します)
使用できるコマンド:
実行例:ダウンロード済みのパッケージをインストールする
sudo apt-get install --no-download pkg
先にダウンロードしたパッケージがある場合に有効です。事前にパッケージをダウンロードするには-dオプションを使います。
–assume-no
--assume-noは、「すべてのプロンプトに対して自動的に[いいえ]と答える」オプションです。(参考:これとは逆の「すべてのプロンプトに[はい]と答える」オプションは-y)
使用できるコマンド:
install・他(その他の使用できるコマンドは不明です)- 実行例は省略します
–no-show-upgraded
--no-show-upgradedは、「アップグレードするすべてのパッケージリストを表示しない」オプションです。
メモ:
実行してみたのですが、よくわかりませんでした。便利な使い方などがわかったら追記します。
使用できるコマンド:
upgrade・他(その他の使用できるコマンドは不明です)- 実行例は省略します
-Pオプション(大文字のP)
-P --build-profiles
-Pは、「apt-get source --compileによってビルド関係がどのように満たされるのかを制御する」オプションです。
メモ:
高度な設定が必要なため説明や実行例は省略します。
使用できるコマンド:
build-dep・他(その他の使用できるコマンドは不明です)- 実行例は省略します
–ignore-hold
--ignore-holdは、「パッケージに設定された保留を無視する」オプションです。
メモ:
このオプションをつけると、保留のパッケージもアップグレードされます。要注意です。
使用できるコマンド:
upgrade・他(その他の使用できるコマンドは不明です)- 実行例は省略します
–with-new-pkgs
--with-new-pkgsは、「新しいパッケージのインストールを許可する」オプションです。
メモ:
upgradeと組み合わせて使用します。
使用できるコマンド:
upgrade- 実行例は省略します。
–no-upgrade
--no-upgradeは、「アップグレードを防止する」オプションです。
メモ:
installと組み合わせて使用すると、パッケージのアップグレードを行わずにインストールします。
使用できるコマンド:
install- 実行例は省略します。
–only-upgrade
--only-upgradeは、「すでにインストールされているパッケージのアップグレードだけをインストールする」オプションです。
メモ:
installと組み合わせて使用します。--only-upgradeオプションを使うと、指定したパッケージのみアップグレードし、全体のアップグレード(upgrade)は行いません。(upgradeは、すべてのパッケージをアップグレード(全体をアップグレード)します)
使用できるコマンド:
実行例:特定のパッケージ(だけ)をアップグレードする
sudo apt-get install --only-upgrade pkg
upgradeは「すべてのパッケージ」の最新バージョンをインストールしますが、installコマンドを使えば、「特定のパッケージ」を指定することができます。
–allow-downgrades
--allow-downgradesは、「(ダウングレード実行中)プロンプトを表示せずに続行する」オプションです。
メモ:
- システム破壊の可能性あるので危険です。
- 特殊な状況を覗いて使用しないで、と注意書きがあります。実行時は
man apt-getでよく確認してください。
使用できるコマンド:
upgrade・- 実行例は省略します
–allow-remove-essential
--allow-remove-essentialは、「(必須項目を削除するとき)プロンプトを表示せずに続行する」オプションです。
メモ:
- システム破壊の可能性があるので要注意です。
- 特殊な状況を覗いて使用しないで、と注意書きがあります。
man apt-getでよく確認してください。
使用できるコマンド:
remove・- 実行例は省略します
–allow-change-held-packages
--allow-change-held-packagesは、「保留中のパッケージの変更をaptがプロンプトを表示せずに強制的に続行する」オプションです。
メモ:
- システム破壊の可能性があります。
- 特殊な状況を覗いて使用しないで、と注意書きがありました。実行時は特に
man apt-getでよく確認してください。
使用できるコマンド:
upgrade・- 実行例は省略します
–force-yes
--force-yesは、「潜在的に有害な[何か]の実行時、aptがプロンプトを表示せずに強制的に続行する」オプションです。
メモ:
- このオプションは現在非推奨です。
--allow-unauthenticated・--allow-downgrades・--allow-remove-essential・--allow-change-held-packagesなどに置き換えられた、とのことです。 - システム破壊の可能性があります。
- 特殊な状況を覗いて使用しないで、と注意書きがありました。
man apt-getでよく確認してください。
使用できるコマンド:
- 利用できるコマンドや実行例は省略します。
–print-uris
--print-urisは、「インストールするファイルを取得する代わりにURIsを表示する」オプションです。
メモ:
- URIには、path(パス)、destination file(宛先ファイル)名、size(サイズ)、MD5ハッシュが含まれます、とあり、注意事項が続きます。(実行時は
man apt-getで確認してからおこなってください)
使用できるコマンド:
–purge
--purgeは、「(設定ファイルも含めて)パッケージを削除する」オプションです。
メモ:
- 設定(構成)ファイルも削除します。
--purgeオプションをremoveコマンドで使うと、purgeコマンドと同じ実行結果になります。【実行例】--purgeオプションをautoremoveコマンドで使うと、autopurgeコマンドと同じ実行結果になります。【実行例】
使用できるコマンド:
実行例:設定ファイルも含めてパッケージを削除する
sudo apt-get remove --purge pkg
remove --purgeは、purgeコマンドと同じです(sudo apt-get purge pkgと同じ意味になります)
実行例:自動的にインストールや削除を行い、削除する場合は設定ファイルも削除する
sudo apt-get autoremove --purge
autoremove --purgeは、autopurgeコマンドと同じです(sudo apt-get autopurgeと同じ意味になります)
–reinstall
--reinstallは、「インストール済みの最新バージョンのパッケージを再インストールする」オプションです。
メモ:
使用できるコマンド:
実行例:
sudo apt-get install --reinstall pkg
sudo apt-get reinstall pkgと同じです。
–list-cleanup
--list-cleanupは、「/var/liv/apt/listsの内容を自動管理し、古いファイルを確実に消去する」オプションです。
メモ:
- デフォルトでONになっています。
- ソースリストを頻繁に変更するなどの理由でオフにしたい場合は
--no-list-cleanupを使います(要注意です!)
使用できるコマンド:
update・・- 実行例は省略します。
–no-list-cleanup
--no-list-cleanupは、「--list-cleanupをOFFにする」オプションです。
メモ:
- デフォルトでは、
/var/liv/apt/listsの内容を自動管理し、古いファイルを確実に消去する(--list-cleanup)ようになっています。 - オフにする場合は、自動管理などがOFFになり、自動管理がされないため注意して実行してください。
使用できるコマンド:
update- 実行例は省略します。
-Sオプション(大文字のS)
-S --snapshot
-Sは、「スナップショットを使ったアーカイブに選択されるスナップショットを制御する」オプションです。
メモ:
高度な設定なので説明や実行例は省略します。(詳細はman apt-getで確認してください)
使用できるコマンド:
update・- 実行例は省略します。
–trivial-only
--trivial-onlyは、「簡単な操作のみ実行する」オプションです。
メモ:
詳細はman apt-getマニュアルを参照ください。
使用できるコマンド:
upgrade・- 実行例は省略します。
–mark-auto
--mark-autoは、「インストール成功後、新しくインストールされたすべてのパッケージを[自動的にインストール]としてマークする」オプションです。
メモ:
手動でインストールしたパッケージが、このパッケージに依存しなくなると各パッケージが削除される仕組みです。(apt-mark autoと同じ)
使用できるコマンド:
install・- 実行例は省略します。
–no-remove
--no-removeは、「削除するパッケージがある場合、プロンプトを表示せずに即中止する」オプションです。
使用できるコマンド:
install・- 実行例は省略します。
–auto-remove
--auto-remove --autoremove
--auto-removeは、「未使用の依存パッケージを削除」するオプションです。
メモ:
apt-get install --auto-removeやapt-get remove --auto-removeなどの記述は、autoremoveコマンドと同じ意味になります。
使用できるコマンド:
installコマンドを使って未使用の依存パッケージを削除する例
sudo apt-get install --auto-remove
install --auto-removeは、autoremoveコマンドと同じ意味です。
removeコマンドを使って未使用の依存パッケージを削除する例
sudo apt-get remove --auto-remove
remove --auto-removeは、autoremoveコマンドと同じ意味です。
–only-source
--only-sourceは、「ソースパッケージ名のみ引数として受け入れる」オプションです。
メモ:
- ソースパッケージだけをダウンロードします。
- バイナリパッケージはダウンロードしません。
使用できるコマンド:
–diff-only
--diff-only --dsc-only --tar-only
--diff-onlyは、「ソースアーカイブのdiff・dsc・tarファイルのみをダウンロードする」オプションです。
使用できるコマンド:
source・- 実行例は省略します。
–arch-only
--arch-onlyは、「アーキテクチャに依存するビルド依存関係のみを処理する」オプションです。
使用できるコマンド:
build-dep・- 実行例は省略します。
–indep-only
--indep-onlyは、「アーキテクチャに依存しないビルド依存関係のみを処理する」オプションです。
使用できるコマンド:
build-dep・- 実行例は省略します。
–allow-unauthenticated
--allow-unauthenticatedは、「パッケージを認証できなくても無視し、プロンプトを表示しない」オプションです。
メモ:
セキュリティ上のリスクがあるため注意が必要です。
使用できるコマンド:
install・- 実行例は省略します。
–allow-insecure-repositories
--allow-insecure-repositoriesは、「更新コマンドが設定されたソースから検証不可能なデータを取得する」オプションです。
メモ:
注意事項があります。マニュアルを確認してください。
使用できるコマンド:
install・- 実行例は省略します。
–allow-releaseinfo-change
--allow-releaseinfo-change
--allow-releaseinfo-changeは、「リポジトリに含まれるリリース情報が変更されたリポジトリから、updateコマンドがデータのダウンロードを続行できるようにする」オプションです。
メモ:
説明や実行例は省略します。(マニュアルに注意事項と補足があるのでman apt-getで確認してください)
使用できるコマンド:
update・- 実行例は省略します。
–show-progress
--show-progressは、「install・upgrade・remove実行時、ターミナルウインドウにユーザーフレンドリーな進行状況情報を表示する」オプションです。
使用できるコマンド:
実行例:
sudo apt-get install --show-progress pkg
インストール中の進捗が表示されます
–with-source
--with-source filenameは、「指定したファイルをメタデータのソースとして追加する」オプションです。
使用できるコマンド:
install・- 実行例は省略します
-eオプション
-e any・--error-on=any
-eは、「エラーが発生したとき、updateコマンドを失敗させる」オプションです。
メモ:
説明や実行例は省略します。
使用できるコマンド:
update・- 実行例は省略します。
まとめ・参考資料
以上で、apt-getコマンドの使用方法の説明を終わります。さらに詳しい内容を知りたい場合は、以下のコマンドを実行してみてください
apt-getマニュアル(英語版):man apt-get
apt-getヘルプ: apt-get -h
apt-getコマンド:https://www.tohoho-web.com/linux/cmd/apt-get.html
debianパッケージ周りでよく使うコマンドとオプション:https://sonots.livedoor.blog/archives/50115456.html
aptコマンドチートシート:https://qiita.com/SUZUKI_Masaya/items/1fd9489e631c78e5b007

