aptコマンドはパッケージ管理システムのためのエンドユーザー向けのコマンドラインインターフェースになります。
apt-getコマンドやapt-cacheコマンドのようなaptツールに比べて対話的な使用に適したオプションが有効になっています。
aptコマンドはapt-getコマンドやapt-cacheコマンドを使いやすくするためのファサード(facade)みたいな役割のコマンドになっていて、その機能のほとんどはapt-getコマンドやapt-cacheコマンドのaptツールで利用ができます。
目次
- 1 アップデート (apt update)
- 2 アップグレード (apt upgrade)
- 3 フルアップグレード (apt full-upgrade)
- 4 インストール (apt install)
- 5 再インストール (apt reinstall)
- 6 削除 (apt remove)
- 7 ユーザーデータを含む削除 (apt purge)
- 8 検索 (apt search)
- 9 パッケージ情報の表示 (apt show)
- 10 パッケージのリストを表示 (apt list)
- 11 APTデータソースリストのファイルを編集 (apt edit-sources)
- 12 その他
- 13 aptのそれぞれのコマンドへの詳しい説明の場所の図
アップデート (apt update)
パッケージの更新の確認を行います。/etc/apt/sources.listに従って、パッケージのインデックスファイルを再同期します。
apt upgradeコマンド等の前に常に実行するべきコマンドになります。
1 |
sudo apt update |
アップグレード (apt upgrade)
新しいバージョンのパッケージをインストールするために利用するコマンドになります。/etc/apt/sources.listに従って、そのソースからシステムにパッケージがインストールされます。
1 |
sudo apt upgrade |
フルアップグレード (apt full-upgrade)
apt upgradeと似たような機能になります。apt upgradeとの違いは、パッケージによるアップデートによってパッケージ間の依存関係で不要になったインストール済みパッケージが削除される場合がある点になります。ディストリビューションのアップグレードなどでシステム全体を更新する場合などに利用されます。apt-getコマンドのdist-upgradeと同じ機能になります。
1 |
sudo apt full-upgrade |
インストール (apt install)
指定したパッケージをインストールすることができます。インストールするパッケージ名について、そのパッケージの公式サイトにインストール方法が書いてある場合が多いです(基本的に最新のディストリビューションが前提でになっている場合が多く、ディストリビューションが古いとパッケージ名が異なる場合もあるかもしれません)。基本的には、そのパッケージのインストール方法に従ってインストールすることになります。パッケージによっては動作させるのに依存関係としていくつか別のパッケージをインストールする必要がある場合もあります。パッケージとは少し違う例ですが、Virtual BoxのGuest Additionsも動作させるのにいくつかのパッケージをインストールする必要があります。
また、ローカル上にある.debファイルを指定する場合は、"./filename.deb"のような相対パスか絶対パスを指定する必要があります。
1 |
sudo apt install <package_name> |
再インストール (apt reinstall)
パッケージの再インストールするときに利用できます。
1 |
sudo apt install <package_name> |
削除 (apt remove)
パッケージを削除するときに利用できます。設定ファイルなどのユーザーデータは残ります。
1 |
sudo apt remove <package_name> |
ユーザーデータを含む削除 (apt purge)
ユーザーデータも削除したいときに利用できます。
1 |
sudo apt purge <package_name> |
検索 (apt search)
パッケージを検索したいときに利用できます。検索は正規表現によって行われ、その対象はパッケージ名と説明に対しての全文検索になります。
オプションとして、--names-onlyをつけるとパッケージ名のみを対象として検索になります。直接、パッケージ名に対して検索をかけたいなら、基本的にこのオプションをつけて検索するとよいかもしれません。
1 |
apt search --names-only <package_name> |
また、--fullオプションをより詳しい説明が表示されます。以下は2レコード分の例になります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
$ apt search --names-only --full neovim ソート中... 完了 全文検索... 完了 neovim/noble 0.9.5-6ubuntu2 amd64 heavily refactored vim fork Neovim is a fork of Vim focused on modern code and features, rather than running in legacy environments. . msgpack API enables structured communication to/from any programming language. Remote plugins run as co-processes that communicate with Neovim safely and asynchronously. . GUIs (or TUIs) can easily embed Neovim or communicate via TCP sockets using the discoverable msgpack API. neovim-qt/noble 0.2.18-1build2 amd64 neovim client library and GUI neovim-qt provides a Qt5 GUI interface for neovim --(以下は省略)-- |
パッケージ情報の表示 (apt show)
パッケージの情報を確認したいときに利用できます。
1 |
apt show <package_name> |
パッケージの情報には以下のようなものがあります(以下はvimの情報を参考に作成しその内容を削除したひな形みたいなものになります)。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Package: Version: Priority: Section: Origin: Maintainer: Original-Maintainer: Bugs: Installed-Size: Provides: Depends: Suggests: Homepage: Task: Download-Size: APT-Manual-Installed: APT-Sources: Description: |
パッケージのリストを表示 (apt list)
インストールされているパッケージのリストを表示できます。dpkg-query --listに似たような機能になります。
オプションとして、--installed、--upgradable、--all-versionsのオプションなどが利用できます。
また、引数として、パッケージ名に合うglobパターンを指定するとその条件に当てはまるパッケージ名でリストされます。
1 2 3 |
apt list --installed apt list --upgradable apt list --all-versions |
APTデータソースリストのファイルを編集 (apt edit-sources)
データソースリストのファイルを編集できます。
1 |
sudo apt edit-sources |
Ubuntuでは基本的にsources.list.dディレクトリの中でそれぞれのデータソースリストのファイルを分離させて管理しているため、管理方法と利便性の兼ね合いはあるかもしれませんが、このコマンドで編集するファイルはあまり編集するべきではないかもしれません。
1 2 |
$ cat /etc/apt/sources.list # Ubuntu sources have moved to /etc/apt/sources.list.d/ubuntu.sources |
詳しい情報はmanコマンドで確認してください。
1 |
man 5 sources.list |
その他
他にも以下のようなコマンドがありますが、説明は省略したいと思います。
autoremove
satisfy
showsrc, depends, rdepennds, policy
source, build-dep, download, changelog, clean, distclean, autoclean
aptのそれぞれのコマンドへの詳しい説明の場所の図
それぞれのコマンドの詳しい説明についてを確認する場所をまとめた図になります。以下のようなところのmanページを確認すれば、その機能を確認できます。大雑把に作成してみた図なので誤りがあるかもしれませんがご了承ください。