pacman(Arch Linux パッケージ管理)
『pacman』は Arch Linux およびその派生ディストリビューション(Manjaro・EndeavourOS など)の標準パッケージ管理ツールです。pacman -Syu でシステム全体を最新化し、pacman -S でパッケージをインストールします。pacman -R で削除し、pacman -Qs でインストール済みパッケージを検索できます。公式リポジトリにないパッケージは AUR(Arch User Repository)から取得でき、yay などの AUR ヘルパーを使うと pacman と同じ感覚で管理できます。
構文
# -----------------------------------------------
# システムの更新
# -----------------------------------------------
# pacman -Syu
# → リポジトリのデータベースを同期(-y)してから
# インストール済みパッケージをすべて更新(-u)します
# → Arch Linux ではシステム全体の更新に最もよく使います
# 例: sudo pacman -Syu
# -----------------------------------------------
# パッケージのインストール
# -----------------------------------------------
# pacman -S {パッケージ名} [{パッケージ名} ...]
# → 指定したパッケージをインストールします
# → 複数のパッケージを空白区切りで同時指定できます
# 例: sudo pacman -S neovim
# 例: sudo pacman -S neovim git curl
# pacman -S {リポジトリ}/{パッケージ名}
# → リポジトリを明示してインストールします
# 例: sudo pacman -S extra/neovim
# -----------------------------------------------
# パッケージの削除
# -----------------------------------------------
# pacman -R {パッケージ名}
# → パッケージを削除します(依存パッケージは残ります)
# pacman -Rs {パッケージ名}
# → パッケージと、そのパッケージだけが依存していた
# 不要な依存パッケージをまとめて削除します
# → 通常の削除にはこちらを推奨します
# pacman -Rns {パッケージ名}
# → 設定ファイル(.pacsave)も含めて完全に削除します
# -----------------------------------------------
# パッケージの検索
# -----------------------------------------------
# pacman -Ss {キーワード}
# → リポジトリのパッケージ名・説明文からキーワードで検索します
# pacman -Qs {キーワード}
# → インストール済みパッケージの中からキーワードで検索します
# pacman -Si {パッケージ名}
# → リポジトリ上のパッケージ詳細情報を表示します
# pacman -Qi {パッケージ名}
# → インストール済みパッケージの詳細情報を表示します
# -----------------------------------------------
# パッケージの一覧
# -----------------------------------------------
# pacman -Q
# → インストール済みパッケージをすべて一覧表示します
# pacman -Qe
# → 明示的にインストールしたパッケージのみ一覧表示します
# → 自動でインストールされた依存パッケージは含みません
# pacman -Qdt
# → 不要になった孤立した依存パッケージを一覧表示します
# -----------------------------------------------
# キャッシュの管理
# -----------------------------------------------
# pacman -Sc
# → キャッシュからインストール済みでないパッケージを削除します
# pacman -Scc
# → キャッシュをすべて削除します(ディスクを節約します)
構文一覧
| 操作 | コマンド | 説明 |
|---|---|---|
| システム全体の更新 | pacman -Syu | リポジトリデータベースを同期してからすべてのパッケージを最新版に更新します。Arch Linux の基本メンテナンス操作です。 |
| パッケージのインストール | pacman -S {パッケージ名} | 指定したパッケージをインストールします。依存パッケージも自動で解決されます。 |
| DB同期のみ | pacman -Sy | パッケージのインストールは行わずリポジトリデータベースのみ同期します。単独での使用は推奨されません。 |
| パッケージの削除 | pacman -R {パッケージ名} | パッケージを削除します。依存パッケージはそのまま残ります。 |
| 依存パッケージも削除 | pacman -Rs {パッケージ名} | パッケージと、そのパッケージだけが必要としていた依存パッケージをまとめて削除します。通常の削除に推奨します。 |
| 設定ファイルごと削除 | pacman -Rns {パッケージ名} | パッケージ・依存パッケージ・設定ファイルをすべて削除します。完全にリセットしたい場合に使用します。 |
| リポジトリ検索 | pacman -Ss {キーワード} | リポジトリのパッケージ名と説明文からキーワードで検索します。 |
| インストール済み検索 | pacman -Qs {キーワード} | インストール済みパッケージの中からキーワードで検索します。 |
| リポジトリ上の詳細情報 | pacman -Si {パッケージ名} | リポジトリ上のパッケージのバージョン・依存関係・説明などを表示します。 |
| インストール済みの詳細情報 | pacman -Qi {パッケージ名} | インストール済みパッケージの詳細情報(インストール日時・サイズなど)を表示します。 |
| インストール済み一覧 | pacman -Q | インストール済みのすべてのパッケージを一覧表示します。 |
| 明示インストール済み一覧 | pacman -Qe | 自動インストールされた依存パッケージを除き、明示的にインストールしたパッケージのみ一覧表示します。 |
| 孤立パッケージの一覧 | pacman -Qdt | 不要になった孤立した依存パッケージを一覧表示します。pacman -Rns $(pacman -Qdtq) でまとめて削除できます。 |
| キャッシュの一部削除 | pacman -Sc | インストール済みでないパッケージのキャッシュを削除します。 |
| キャッシュの全削除 | pacman -Scc | キャッシュをすべて削除してディスクを節約します。 |
使用例
# ----------------------------------------------- # システムを最新状態に更新する # ----------------------------------------------- # リポジトリデータベースを同期しながらシステム全体を更新します sudo pacman -Syu
実行するコマンドは次の通りです。
$ sudo pacman -Syu :: データベースの同期中... core 151.1 KiB 1234 KiB/s 00:00 [######################] 100% extra 8.0 MiB 5.12 MiB/s 00:02 [######################] 100% :: システムアップグレードを開始... アップグレードするパッケージ (3) neovim-0.10.4-1 git-2.48.1-1 curl-8.12.1-1 合計ダウンロード容量: 12.34 MiB 合計インストール容量: 45.67 MiB :: インストールを続けますか? [Y/n] y
neovim をインストールして確認する
# ----------------------------------------------- # neovim のインストールと確認 # ----------------------------------------------- # neovim をインストールします sudo pacman -S neovim # インストールされたバージョンを確認します nvim --version
実行するコマンドは次の通りです。
$ nvim --version NVIM v0.10.4 Build type: Release LuaJIT 2.1.1736781742
インストール済みパッケージを検索する
# ----------------------------------------------- # インストール済みパッケージの中から検索します # ----------------------------------------------- # "python" を含むインストール済みパッケージを検索します pacman -Qs python
実行するコマンドは次の通りです。
$ pacman -Qs python
local/python 3.13.2-1
次世代の Python プログラミング言語
local/python-pip 24.3.1-1
Python パッケージのインストールツール
パッケージを削除して孤立パッケージもきれいにする
# ----------------------------------------------- # パッケージの削除と孤立パッケージの後片付け # ----------------------------------------------- # neovim を依存パッケージごと削除します(設定ファイルも含む) sudo pacman -Rns neovim # 孤立した不要な依存パッケージを一覧表示します pacman -Qdt
実行するコマンドは次の通りです。
$ pacman -Qdt lua53 0.5.3-1 unibilium 2.1.1-2
実装例は次の通りです。
# 孤立パッケージをまとめて削除します # $() の中で pacman -Qdtq(名前だけ出力)を実行し削除します sudo pacman -Rns $(pacman -Qdtq)
実行するコマンドは次の通りです。
$ sudo pacman -Rns $(pacman -Qdtq) 依存関係を確認中... パッケージを削除 (2): lua53-0.5.3-1 unibilium-2.1.1-2 :: 削除を続けますか? [Y/n] y
yay を使って AUR パッケージをインストールする
# ----------------------------------------------- # yay(AURヘルパー)のインストールと使い方 # ----------------------------------------------- # yay 自体は AUR パッケージのため、最初は git でビルドします # base-devel(ビルドツール群)が必要です sudo pacman -S --needed git base-devel # AUR から yay のソースを取得してビルド・インストールします git clone https://aur.archlinux.org/yay.git cd yay makepkg -si # yay のバージョンを確認します yay --version
実行するコマンドは次の通りです。
$ yay --version yay v12.4.2 - libalpm v14.0.0
実装例は次の通りです。
# ----------------------------------------------- # yay でのパッケージ管理(pacman と同じ構文が使えます) # ----------------------------------------------- # システム全体(公式リポジトリ+AUR)を更新します yay -Syu # AUR にある google-chrome をインストールします yay -S google-chrome # AUR を含めてキーワード検索します yay -Ss evangelion-font
実行するコマンドは次の通りです。
$ yay -Ss evangelion-font
aur/evangelion-font-ikari 1.0.0-1 (+12 0.45)
エヴァンゲリオン風フォント(碇シンジ作成)
aur/evangelion-font-nerv 2.1.0-1 (+8 0.32)
NERV 公式ロゴフォント
概要
『pacman』は Arch Linux 独自のパッケージ管理ツールで、シンプルで高速な設計が特徴です。オプションはアルファベットの組み合わせで表現され、-S(Sync)・-R(Remove)・-Q(Query)の 3 つを覚えると基本操作を網羅できます。Arch Linux では部分アップグレードは非推奨とされており、pacman -Syu で常にシステム全体を更新することが推奨されます。公式リポジトリ(core・extra)にないソフトウェアは AUR(Arch User Repository)から取得できますが、AUR パッケージはコミュニティが管理するビルドスクリプト(PKGBUILD)なので内容の確認が重要です。yay は最も広く使われている AUR ヘルパーで、pacman と同じ構文で公式リポジトリと AUR を統一して管理できます。Debian・Ubuntu 系のパッケージ管理については apt のページを、RHEL・AlmaLinux 系については dnf / yum のページを参照してください。
記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。