【Arch Linux】Pacmanコマンドについてくわしく解説!

Arch LinuxのPacmanコマンドとはどのようなコマンドなのか、詳しくご紹介をしていきます。Arch LinuxのPacmanの基本からパッケージの使い方やキャッシュ削除などの基本機能・便利機能・アップグレードの更新やダウングレードに至るまで解説!

【Arch Linux】Pacmanコマンドについてくわしく解説!のイメージ

目次

  1. 1Pacmanとは
  2. Arch Linux の主要な機能のひとつ
  3. 2Pacmanの基本のコマンドライン~パッケージの検索~
  4. -Ss
  5. -Si
  6. -Q
  7. -Qi
  8. 3Pacmanの基本のコマンドライン~パッケージのインストール~
  9. -S
  10. 4Pacmanの基本のコマンドライン~パッケージの削除~
  11. -R
  12. -Rs
  13. -Rns
  14. 5Pacmanの基本のコマンドライン~キャッシュの削除~
  15. -Sc
  16. -Scc
  17. 6Pacmanの基本のコマンドライン~パッケージのアップグレード~
  18. -Syu
  19. -Syua
  20. -Syyu/-Syyua
  21. --ignore
  22. 部分的なアップグレードはできない
  23. 7Pacmanの基本のコマンドライン~パッケージのダウングレード~
  24. -U
  25. 8Pacmanの基本のコマンドライン~依存関係の表示~
  26. pactree
  27. 9Pacmanの基本のコマンドライン~孤児パッケージの表示~
  28. -Qdt
  29. 10Pacmanの便利なコマンドライン
  30. 8個のオペレーションとその機能
  31. Pacmanでのヘルプの参照
  32. まとめ
  33. 合わせて読みたい!Arch Linuxに関する記事一覧

Pacmanとは

Pacmanとは

PacmanはArch Linuxにインストールされたパッケージを追跡するための、パッケージ管理ユーティリティです。

Pacmanを使用することにより、依存関係を解決したり、パッケージグループを扱うことができます。

さらに、インストール・アンインストールスクリプトの実行や、リモートのリポジトリとローカルマシンを同期して自動的にパッケージをアップグレードすることが可能です。

PacmanはC言語で書かれており、パッケージフォーマットは「.pkg.tar.xz」を使用しています。Pacmanはバージョン3.0.0から、libalpm(3) ("Arch Linux Package Management" ライブラリ) のフロントエンドとなりました。

このライブラリのおかげで他のフロントエンドを書くことができるようになっています。Pacmanを呼び出すときは操作とオプション、次に操作の対象となるターゲットを指定します。

ターゲットはパッケージ名やファイル名、URL、あるいは検索文字列となります。ターゲットはコマンドライン引数として指定することができます。

さらに、ターミナルのコマンドライン入力しない場合はハイフンを引数として指定することで、ターゲットを標準入力から読み込むことが可能です。

pacman

Arch Linux の主要な機能のひとつ

PacmanパッケージマネージャはArch Linuxの主要な機能のひとつです。Pacmanはシンプルなバイナリのパッケージ形式と簡単に利用できるビルドシステムから成っています。

Pacman ヒント

パッケージを容易に管理することができる

Pacmanを使用することで、Arch Linuxにてパッケージ管理を簡単に利用することができ、公式のArch Linuxにあるパッケージや、ユーザー自身が作成したパッケージを簡単に管理することができます。

コマンドを使って操作対象を指定する

Pacmanはマスターサーバーと自動同期をすることによりシステムを常に最新の状態に保ちます。このサーバー・クライアントモデルにより、シンプルなコマンドのみでパッケージのダウンロードやインストールをすることができます。

Thumb【LinuxMint19.1】Chromeをインストールする方法!
LinuxMint19.1でChromeをインストールする方法を解説します。LinuxMin...

Pacmanの基本のコマンドライン~パッケージの検索~

ここまでは、Pacmanの概要について解説をしてきました。ここからは、Pacmanを使用したコマンドラインの使い方について解説をしていきます。まずは、パッケージの検索方法からご紹介をしていきます。

-Ss

まずは、Pacmanの基本的なコマンドラインである「-Ss」の用途と使用方法についてご紹介をしていきます。

リポジトリを検索する

Pacmanの基本的なコマンドラインである「-Ss」はリポジトリの検索をするためのコマンドラインです。使用方法は「 pacman -Ss [検索したいソフトウェアパッケージ名] 」と入力をすることで検索をすることができます。

-Si

続いて、Pacmanの基本的なコマンドラインである「-Si」の用途と使用方法についてご紹介をしていきます。

ピンポイントでリポジトリを検索する

Pacmanの基本的なコマンドラインである「-Si」はピンポイントでリポジトリの検索をするためのコマンドラインです。

使用方法は「 pacman -Si [検索したいソフトウェアパッケージ名] 」と入力をすることでリポジトリをピンポイント検索をすることができます。

-Q

続いて、Pacmanの基本的なコマンドラインである「-Q」の用途と使用方法についてご紹介をしていきます。

インストール済のパッケージを検索

Pacmanの基本的なコマンドラインである「-Q」はインストール済のパッケージを検索するためのコマンドラインです。インストール済みのパッケージを検索する時は「-Q」が使用できない場合は、「-Qs」とコマンドラインに入力をしてください

使用方法は「 pacman -Qs [検索したいソフトウェアパッケージ名] 」と入力をすることでインストール済みのパッケージを検索することができます。

-Qi

最後に、Pacmanの基本的なコマンドラインである「-Qi」の用途と使用方法についてご紹介をしていきます。

ピンポイントでインストール済のパッケージを検索する

Pacmanの基本的なコマンドラインである「-Qi」はピンポイントでインストール済のパッケージを検索するためのコマンドラインです。

使用方法は「 pacman -Qi [検索したいソフトウェアパッケージ名] 」と入力をすることでインストールずみのパッケージをピンポイント検索をすることができます。

Thumb「Linux/Mac/Windows」の違いを比較!使い方も解説!
「Linux/Mac/Windows」のOSの違いを徹底的に比較!「Linux/Mac/Wi...

Pacmanの基本のコマンドライン~パッケージのインストール~

ここからは、Pacmanを使用した基本的なコマンドラインのパッケージのインストール方法をご紹介していきます。

-S

Pacmanの基本的なコマンドラインである「-S」は行いたい操作によって入力するコマンドラインが異なります。今回は二つのシーン別のインストール方法をご紹介していきます。

特定のパッケージをインストールする

まずは、Pacmanの「-S」コマンドを使用して、特定のパッケージをインストールする方法をご紹介します。具体的な使用方法は「 pacman -S [インストールしたいソフトウェアパッケージ名] 」と入力をすることでインストールすることができます。

グループパッケージをインストールする

Pacmanのパッケージのインストール方法の二つ目は、グループパッケージをインストールする方法です。使用方法は「 pacman -S gnome 」と入力をすることでグループパッケージのインストールをすることができます。

ThumbLinuxの検索方法!find/locate/dirコマンドの使い方!
パソコンに詳しい方なら使っているLinux。皆さんはコマンドでファイル検索をどのように行って...

Pacmanの基本のコマンドライン~パッケージの削除~

ここからは、Pacmanを使用した基本的なコマンドラインの一つである、パッケージの削除方法をご紹介していきます。パッケージの削除方法は大きく分けて三点あります。

-R

Pacmanを使用したパッケージの削除方法の一つ目は「-R」を使用した削除です。「-R」を使用する削除は特定のパッケージと複数のパッケージの削除をすることができます。

特定のパッケージを削除する

まずは、Pacmanの「-R」を使用した特定のパッケージを削除する方法からご紹介をします。使用方法は「 pacman -R [削除したいパッケージ名] 」と入力をすることでグループパッケージの削除をすることができます。

複数のパッケージを同時に削除する

Pacmanの「-R」を使用した複数のパッケージを削除する方法は次の通りです。使用方法は「 pacman -R [削除したいパッケージ名①] [削除したいパッケージ名②] 」と、並べて入力をすることで複数のパッケージの削除をすることができます。

-Rs

続いて、Pacmanを使用したパッケージの削除方法の二つ目は「-Rs」を使用した削除です。「-Rs」の具体的な用途と使用方法は以下の通りです。

依存する他のパッケージを一緒に削除する

Pacmanの「-Rs」の用途は依存する他のパッケージを削除する際に利用するコマンドラインです。具体的な使用方法は「 pacman -Rs [削除したいパッケージ名] 」と入力することで利用することができます。

-Rns

Pacmanを使用したパッケージの削除方法の三つ目は「-Rns」を使用した削除です。「-Rns」の具体的な用途と使用方法は以下の通りです。

バックアップファイルを削除する

Pacmanの「-Rns」の用途はバックアップファイルを削除する際に利用するコマンドラインです。具体的な使用方法は「 pacman -Rns [削除したいバックアップファイル名] 」と入力することで利用することができます。

Pacmanの基本のコマンドライン~キャッシュの削除~

ここからは、Pacmanを使用した基本的なコマンドラインの一つである、キャッシュの削除方法をご紹介していきます。キャッシュの削除方法は大きく分けて二点あります。

-Sc

Pacmanを使用したキャッシュの削除方法の一つ目は「-Sc」を使用した削除です。「-Sc」の具体的な用途と使用方法は以下の通りです。

現在インストールされていないパッケージキャッシュを全て削除する

Pacmanの「-Sc」の用途は現在インストールされていないパッケージキャッシュを全て削除するコマンドラインです。具体的な使用方法は「 pacman -Sc 」と入力することで利用することができます。

-Scc

Pacmanを使用したキャッシュの削除方法の二つ目は「-Scc」を使用した削除です。「-Scc」の具体的な用途と使用方法は以下の通りです。

すべてのキャッシュを削除する

Pacmanの「-Scc」の用途はすべてのキャッシュを削除するコマンドラインです。具体的な使用方法は「 pacman -Scc 」と入力することで利用することができます。

Pacmanの基本のコマンドライン~パッケージのアップグレード~

ここからは、Pacmanを使用した基本的なコマンドラインのパッケージのアップグレード方法をご紹介していきます。パッケージのアップグレード方法は大きく分けて四点あります。一つずつご紹介をしていきます。

-Syu

Pacmanの基本的なコマンドラインのパッケージのアップグレードで、特に使用頻度の高いコマンドラインは「-Syu」となるかと思います。

Arch LinuxのPacmanに限ったものではありませんが、使用をするパッケージは基本的にはすべて最新の状態で使用することを推奨されます。

古いグレードで使用をすることもできますが、古いグレードの場合、提供元のサポートが終了しており問題が発生した場合でもすべて自己解決をするしかない場合もあります。

提供元のサポートを受け続けるという意味でも、この「-Syu」コマンドは覚えておきましょう。

更新可能なすべてをアップグレードする

具体的に、Pacmanの「-Syu」の用途は更新可能なすべてのパッケージをアップグレードするためのコマンドラインです。具体的な更新の使用方法は「 pacman -Syu 」と入力することで利用することができます。

-Syua

続いて、Pacmanの基本的なコマンドラインの一つである「-Syua」の用途と使用方法について解説をしていきます。

AURパッケージをアップグレードする

AUR (Arch User Repository)を利用するにはYaourtを使うことになります。 AURパッケージをアップグレードするためには、明示的に -a( --aur )の指定が必要となります。

具体的に使用するコマンドラインとしては「 yaourt -Syua 」と入力をし使用することとなります。

-Syyu/-Syyua

続いて、Pacmanの基本的なコマンドラインの一つである「-Syyu/-Syyua」の用途と使用方法について解説をしていきます。

強制更新する

このPacmanの「-Syyu/-Syyua」は、インストールしているパッケージの強制アップグレードの際に利用する、更新をするためのコマンドとなります。

-yオプションは2つ並べるとパッケージデータベースを強制的に更新をします。つまり「-Sy」よりも強力なのコマンドが「-Syy」コマンドということとなります。

具体的な使用方法は「 pacman -Syyu 」となり、これはパッケージリストを強制更新しつつパッケージをアップグレードをし、更新をします。

AURの場合は「yaourt -Sya」でリスト更新となるため、強制更新をする際は「-Syya」となります。強制更新しつつパッケージアップグレードするには、「 yaourt -Syyua 」とコマンドを実行することで更新をすることができます。

--ignore

続いて、Pacmanの基本的なコマンドラインの一つである「--ignore」についてご紹介をしていきます。

アップグレードを抑止する

Pacmanで使用するオプションの「--ignore」コマンドはアップグレードを抑止することができます。

「pacman -U」でダウングレードを実行する場合、「/var/cache/pacman/pkg」に格納されているキャッシュデータを使用し古いバージョンへダウングレードを行います。

「--ignore」を実行することにより、次回のアップグレードの際に指定したファイルをアップグレードの対象外にすることができます。

使用するコマンドラインは「 pacman -Syu --ignore []アップグレードを抑止したいパッケージ名] 」となります。

ですが、コマンドラインで都度指定する必要があるため、一時的な抑止にはなりますが、アップグレードの度に行うのは大変です。

そのような手間が発生しないように、あらかじめ設定ファイルに書き込んで指定することでそのような手間は発生しなくなります。設定ファイルは「 /etc/pacman.conf」に「IgnorePkg = [ファイル名]」 という行を追記しておきましょう。

部分的なアップグレードはできない

Arch Linuxは部分的なアップグレードはサポートされていません。基本的には使用しているファイルはすべて最新の状態で使用することを想定してパッケージの提供がなされています。

そのため、上記のようにアップグレード抑止のやダウングレードは仕様として行うことはできますが、その後の動作はArch Linuxのサポート外となるため、すべて自己責任での範疇で行う必要があります。

Pacmanの基本のコマンドライン~パッケージのダウングレード~

ここからは、Pacmanを使用した基本的なコマンドラインのパッケージのダウングレードの方法をご紹介していきます。

-U

Pacmanでのダウングレードで使用するオプションのコマンドは「-U」を使用します。具体的にどのようにダウングレードコマンドを使用をするのか下記にて解説をしていきます。

古いバージョンへダウングレードする

Pacman はインストールしたパッケージをキャッシュディレクトリの「 /var/cache/pacman/pkg 」に格納をしていきます。

そのため、アップグレードを実行して、もし動かなくなったとしても格納されているキャッシュに残された古いバージョンへダウングレードできます

実際にダウングレードをする際に使用するコマンドラインは「 pacman -U [パッケージのファイルパス+ファイル名] 」となります。

具体的には「 pacman -U /var/cache/pacman/pkg/emacs-24.5-4-x86_64.pkg.tar.xz 」このように実行し、ダウングレードを行います。

Pacmanの基本のコマンドライン~依存関係の表示~

ここからは、Pacmanを使用した基本的なコマンドラインの依存関係の表示をするための方法をご紹介していきます。

pactree

Pacmanで依存関係の表示をするためのオプションのコマンドは「pactree」を使用します。具体的にどのように使用をするかは下記を参考にしてください。

パッケージの依存関係を出力する

Pacmanのパッケージの依存関係を出力するためには「 pactree [パッケージ名] 」といったコマンドラインを入力することでツリーを確認をすることができます。

お分かりかと思いますが、依存関係の出力をするためには「pacman」コマンドは使用しませんので注意が必要です。

必要なパッケージの確認

上記では依存関係のツリーを表示するためのコマンドラインをご紹介しました。その、使用しているパッケージを必要としているすべてのパッケージを一覧で確認をすることができます。

その具体的な方法は「 whoneeds [パッケージ名] 」というようにコマンドラインを実行することで確認をすることができます。

または、リバースフラグを使用し「 pactree -r [パッケージ名] 」というように実行をすることで、同様に使用しているパッケージを必要としているパッケージの確認をすることができます。

Pacmanの基本のコマンドライン~孤児パッケージの表示~

ここまで、Pacmanでのアップグレードやダウングレード、また、依存関係の表示をする方法などをご紹介をしてきました。

ここからはパッケージに依存をしていない、通称「孤児パッケージ」の表示する方法をご紹介をしていきます。

-Qdt

Pacmanにて孤児パッケージを表示させるためにはオプションの「-Qdt」コマンドを使用する必要があります。この「-Qdt」の具体的な利用方法は以下の通りです。

どのパッケージにも依存していないものを出力する

どのパッケージにも依存していないもの、通称「孤児パッケージ」を出力をするためには「 pacman -Qdt 」と実行することで表示させることができます。

プロジェクトによっては、パッケージに依存していない孤児パッケージは一切使用しない、といったこともあるかもしれません。

その時は孤児パッケージを削除することができます。その際に使用するコマンドは「 pacman -Rs $(pacman -Qdtq) 」となります。以上のコマンドを実行することで、孤児パッケージをすべて一括で削除をすることができます。

Pacmanの便利なコマンドライン

Pacmanコマンドは必ずオプションを使用しますが、このオプションの構成が若干複雑と感じる方も多いはず。

Pacmanの使用しはじめはその複雑さに抵抗を感じるとは思いますが、慣れると機能の豊富さを実感することができ、Pacmanなしでは作業ができないと感じるほどになることも多いです。

Pacmanを使いこなすコツとしては、Pacmanコマンドラインのオプション構成のほとんどは「オペレーション+オプション」という組み合わせだという点を認識することにあります。

さらにパッケージやファイル名などをターゲットとして指定することで細かい指定や情報をとることができるため、このような使い方をする時にPacmanの有能さを実感できるはずです。

8個のオペレーションとその機能

Pacmanのオペレーションは全部で8個あります。オペレーションの構成はハイフン(-)と大文字アルファベットを1文字連ねて表しています。

また、Pacmanはロング文字列オプションにも対応しており、キーストロークが増えるものの意味が判りやすい点も嬉しいポイントです。

以下からPacmanのオペレーションである8個の機能について一つずつ解説も交えてご紹介をしていきたいと思います。

-S / --sync

Pacmanの便利なオペレーションの一つ目は「-S / --sync」です。この機能としては、パッケージの同期(主に ダウンロード-インストール-依存解決 を意味する)といった便利な機能となります。

-Q / --query

Pacmanの便利なオペレーションの二つ目は「-Q / --queryです。この機能としては、ローカルパッケージ(インストール済みパッケージ)の問い合わせといった便利な機能となります。

-R / --remove

Pacmanの便利なオペレーションの三つ目は「-R / --remove」です。この機能としては、ローカルパッケージの削除をするといった便利な機能となります。

-U / --upgrade

Pacmanの便利なオペレーションの四つ目は「-U / --upgrade」です。この機能としては、パッケージの追加インストールやアップグレードと依存解決するといった便利な機能となります。

-T / --deptest

Pacmanの便利なオペレーションの五つ目は「-T / --deptest」です。この機能としては、依存のテストツールといった便利な機能となります。

-D / --database

Pacmanの便利なオペレーションの六つ目は「-D / --database」です。この機能としては、パッケージ属性編集やローカルデータベースのチェックをするといった便利な機能となります。

-F / --files

Pacmanの便利なオペレーションの七つ目は「-D / --database」です。この機能としては、ファイルデータベースの問い合わせをするといった便利な機能となります。

-V / --version

Pacmanの便利なオペレーションの八つ目は「-V / --version」です。この機能としては、Pacman のバージョン情報(伴うオプションは無視する)といった便利な機能となります。

Pacmanでのヘルプの参照

Pacmanではこれまでご紹介をしてきた八つの便利なオペレーション機能の他に九つ目の機能として「ヘルプ」を使用することができます。

Arch LinuxのPacmanでは、この八つの機能とヘルプを合わせて「OPERATIONS」として紹介がなされています。そんなヘルプの使用方法をご紹介します。

-H / --help

Pacmanの便利なオペレーションの九つ目は「-H / --help」です。この機能としては、Pacmanのヘルプを参照することができるといった便利な機能となります。

各オペレーションのヘルプの参照をしたい場合は「 pacman [参照したいオペレーション] --help 」とコマンドを実行することで参照することができます。

まとめ

ご紹介をしたPacmanの便利機能については、基本的には「 -S / --sync 」「 -Q / --query 」「 -R / --remove 」「 -U / --upgrade 」の四つを使用する頻度が多くなると思いますが、他のコマンドも覚えておいても損はないはずです。

また、これまでご紹介をしてきたPacmanの各機能はすべて基本的なものではありますが、この基本さえ身につけておけばPacmanをマスターしたといっても過言ではありません。

効率的で精度の高いプロジェクトにするために、ぜひこの多機能で便利ばPacmanを活用してみてください。

合わせて読みたい!Arch Linuxに関する記事一覧

ThumbLinuxでできることは?初心者向けにくわしく解説!
Linuxとは、どういった特徴を持つOSかを説明していきます。Linuxの基本操作や機能を使...
Thumb【初心者向け】Linuxのおすすめディストリビューションを紹介!
今回の記事では、初心者向けに紹介するLinuxのおすすめディストリビューションをご紹介してい...
ThumbLinuxパーミッションの基本!設定方法も解説!
Linuxにはパーミッション(権限)があり、パソコンでファイルやディレクトリを操作するときに...
Thumb【初心者向け】Linuxの権限確認と変更方法をくわしく解説!
Linuxを利用するときに知っておいてほしいことが権限(パーミッション)確認と変更方法です。...

関連するまとめ

Original
この記事のライター
アカサカゲン
こんにちは、アカサカゲンと申します。 趣味はドライブや旅行、美味しいものを食べることです。 WEBライター、ブ...
インステ