APT
APT(Advanced Packaging Tool[2]、あるいは Advanced Package Tool[3][4])とは、ソフトウェアのインストールとアンインストール(削除)を自動的に行い、ソフトウェアの管理を簡単に行えるようにするための仕組みの1つ。
アップデート実行中のターミナルの画面 | |
開発元 | APT Development Team |
---|---|
初版 | 1998年3月31日 |
最新版 |
2.6.1
/ 2023年5月25日[1] |
最新評価版 |
2.7.10
/ 2024年1月19日[1] |
リポジトリ | |
対応OS | Linux、FreeBSD、GNU Hurd |
プラットフォーム | Debian他 |
ライセンス | GPLv2+ |
公式サイト | APT - Debian Wiki |
概要
編集もともと Debian用に開発されたコマンドラインベースのパッケージ管理システムである。現在では多数の Debian系の Linuxディストリビューションで採用されている。dpkgのフロントエンドとして作動するように設計されたが、現在はRPMに対応するように移植された apt-rpmもある。コンパイル済みのソフトウェアを管理する機能に加え、ソースコードからソフトウェアをコンパイルする際の依存関係を解決する機能も備えている。
フロントエンド
編集APT には複数のフロントエンドが用意されている。コマンドラインで作動する(CLI)フロントエンドとして apt や apt-get、aptitude がある[2]。またDebian系やRPM系ともに、Synaptic[2] というグラフィカルな(GUI)フロントエンドがある。
機能
編集APTでは、コンパイル済みパッケージ(バイナリパッケージと呼ぶ)同士の関係を主に下の4つにわけて管理する。これらの関係を用いて、目的のパッケージをインストールするために必要なパッケージもしくは削除する必要があるパッケージを自動計算する。
- 依存
- パッケージを導入するのに欠かすことのできないパッケージ。
- 推奨
- 無くてもよいが、プログラムの機能を利用するために通常は導入するパッケージ。
- 提案
- 無くてもよいが、導入することによってプログラムの機能を向上させるパッケージ。
- 衝突
- パッケージを導入することで、同一の機能を有するなどの理由で削除されるパッケージ。
代表的なコマンドは次のとおり。
追加・ダウンロード
編集- 新しいソフトウェアのインストール(root権限が必要)
apt install パッケージ名 [ Enter ]
- ソースパッケージのダウンロード
apt source パッケージ名 [ Enter ]
- ソースパッケージをコンパイルする為に必要なパッケージのインストール(root権限が必要)
apt build-dep パッケージ名 [ Enter ]
更新(アップデート)
編集- リポジトリの更新(root権限が必要)
apt update [ Enter ]
- インストール済みのソフトウェアの更新(root権限が必要)
apt upgrade [ Enter ]
- ディストリビューションのアップグレード(root権限が必要)
apt full-upgrade [ Enter ]
(ただし、apt dist-upgrade コマンドも agt-get からの移行用としてサポートされている。)
またこれらaptコマンドを使用すると、システムに必要なパッケージが存在しない場合、その不足している依存性パッケージを自動的に判別し、そのパッケージも同時にインストールしてくれる。dist-upgradeを指定した場合、更新可能なすべてのパッケージに対して依存関係を解析し、重要なアップデートを更新するが、依存関係の問題から重要でないパッケージは削除される場合もある。
検索・情報表示
編集- パッケージの検索
apt search 検索キーワード [ Enter ]
- 特定パッケージの情報表示
apt show パッケージ名 [ Enter ]
削除
編集- 特定パッケージの削除(root権限が必要)
apt remove パッケージ名 [ Enter ]
- 特定パッケージの設定ファイルを含めた削除(root権限が必要)
apt purge パッケージ名 [ Enter ]
- 不要なパッケージの自動削除(依存されていないライブラリ等)(root権限が必要)
apt autoremove [ Enter ]
Debian系もRPM系も設定ファイル(大抵は/etc/apt/sources.list)を書き換えることでダウンロード先の変更・パッケージリストの指定変更が可能である。Debian GNU/LinuxやVine Linuxをはじめ、この設定の変更でディストリビューションのバージョンアップを行うことができるディストリビューションも存在する。
またSynapticと同様に、パッケージのリポジトリを変更しやすくするためのGUIフロントエンドも存在する。
新旧コマンド対応の概要
編集以下におもなコマンドの新旧対応一覧を参考として示す[5][6]。関連項目の Aptitude も参照のこと。
apt-get update -> apt update -> aptitude update apt-get upgrade -> apt upgrade -> aptitude safe-upgrade apt-get dist-upgrade -> apt full-upgrade -> aptitude full-upgrade apt-get install package -> apt install package -> aptitude install package apt-get remove package -> apt remove package -> aptitude remove package apt-get autoremove -> apt autoremove -> N/A apt-cache search package -> apt search package -> aptitude search package apt-cache policy package -> apt list -a package -> aptitude list -a package apt-cache show package -> apt show package -> show package apt-cache search <regex> -> apt search <regex> -> aptitude search <regex>
イースターエッグ
編集apt や apt-get には隠し機能があり、aptitudeの隠し機能と対になっている。("\"は円記号ではなくバックスラッシュである)
$ apt moo (__) (oo) /------\/ / | || * /\---/\ ~~ ~~ ...."Have you mooed today?"...
脚注
編集- ^ a b “Debian Package Tracker - apt”. tracker.debian.org. 2024年2月9日閲覧。
- ^ a b c “Chapter 2. Debian package management”. www.debian.org. 2020年7月4日閲覧。
- ^ “Apt - Debian Wiki”. wiki.debian.org. 2020年7月4日閲覧。
- ^ “APTとは - IT用語辞典”. IT用語辞典 e-Words. 2020年7月4日閲覧。
- ^ “第8章 Debian パッケージ管理ツール”. www.debian.org. 2020年7月4日閲覧。
- ^ “第2章 Debian パッケージ管理”. www.debian.org. 2020年7月17日閲覧。