magのOSS備忘録

使ったOSSソフトウェアについて書いていきます。

pacmanでよく使うコマンド

概要

pacmanを使ってパッケージ管理を行う際のオプションをメモしておく。主に自分用。

動機

pacmanはArch LinuxやMSYS2で使用するが、それほど頻度は高くないために忘れてしまいがち。
いくつものパッケージマネージャを使っているので、オプションを混同して覚えてしまってるときがある。
pacmanのmanは親切なので読めば大体分かるが毎回読んでると時間が足りない。

目次

ユースケース

パッケージを検索する

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

パッケージが既にインストールしてあるかどうかを見たいときに使用する。
この場合に使用するのは-Qオペレーション。これに-sオプションを付与する。

pacman -Qs 検索するパッケージ名

リモートリポジトリのパッケージを検索する

インストールを行いたいがパッケージ名が分からない場合や、リモートリポジトリに存在するのかを調べるときに使用する。
リモートリポジトリの検索は-Sオペレーターを使う。

pacman -Ss 検索するパッケージ名

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

パッケージのインストールは-Sオペレーションを使う。
直近で-yオプションを使ってデータベースを更新しているなら、-yオプションを省略してもよい。

pacman -Sy パッケージ名

パッケージを削除する

パッケージの削除は-Rオペレーションを使う。
依存するパッケージも合わせて削除するなら、-sオプションを指定する。

pacman -Rs 削除するパッケージ名

インストール済みのパッケージを更新する

パッケージを最新化したい場合に使う。 -Sオペレーションを使用する。-yオプションでマスターパッケージデータベースを更新し、パッケージの更新を指す-uオプションを使う。
-uオプションは2つつけることができ、その場合はダウングレードを許可する。安定版よりもバージョンが高いテスト版などを使用しているときで、安定版に戻したい場合に使用する。

pacman -Syu

Arch Linuxでは、キーリングが更新されている場合を考慮し、以下のようにキーリングの更新をした上でパッケージを更新するとよい。

pacman -Sy archlinux-keyring && pacman -Su

その他

パッケージキャッシュを削除する

インストールに使われたパッケージファイルは、キャッシュディレクトリに保存されている。
このパッケージファイルがストレージを圧迫するので、たまに消してあげるとよい。
-cオプションは、1個指定すると使ってないパッケージファイルを、2個指定するとすべてのパッケージファイルを削除する。

pacman -Sc

誰からも参照されていないパッケージを検索する

以下のように実行する。

pacman -Qtd

検索したパッケージを削除したい場合は、以下を実行する1

pacman -Rns $(pacman -Qtdq)

その他(実行環境依存)

Arch Linuxのキーリングの更新

pacmanの仕組み上、キーリングに登録されたGnuPG鍵の最新化が必要。

pacman -Sy archlinux-keyring

参考