言語
日本語
English

Caution

お使いのブラウザはJavaScriptが無効になっております。
当サイトでは検索などの処理にJavaScriptを使用しています。
より快適にご利用頂くため、JavaScriptを有効にしたうえで当サイトを閲覧することをお勧めいたします。

Linux & Mac & Bashコマンド辞典

  1. トップページ
  2. Linux & Mac & Bashコマンド辞典
  3. pacman(Arch Linux パッケージ管理)

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 のページを参照してください。

記事の間違いや著作権の侵害等ございましたらお手数ですがまでご連絡頂ければ幸いです。