このページは openSUSE のソフトウエア管理のコマンドライン比較 を基にして作っています。Arch を比較にいれて単純化し、Arch ユーザーにとって使いやすいようにディストリビューションの順番を並び替えました。
ヒント: 他の Linux ディストリビューションのユーザーが pacman の恩恵を受けることができるようにするシンプルなラッパーがあります:
pacapt。このスクリプトは一時的に他のディストリビューションを使っている Arch ユーザーの使用も考えられています。
ノート:
- ここで記述されているツールのいくつかは特定のバージョンの pacman にしか対応していません。-Qk オプションは pacman 4.1 で新しく作成されました。
pkgfile コマンドは pkgfile パッケージにあります。
基本操作
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SLES/openSUSE
|
Gentoo
|
| 名前でパッケージをインストール |
pacman -S |
dnf install |
apt install |
zypper install zypper in |
emerge [-a]
|
| 名前でパッケージを削除 |
pacman -Rs |
dnf remove |
apt remove |
zypper remove zypper rm |
emerge -C
|
| 名前や説明の文章でパッケージを検索。デフォルトで名前と説明どちらが検索されるかはツールによって異なります。オプションを使うことでほとんど同じように検索できます。 |
pacman -Ss |
dnf search |
apt search |
zypper search zypper se [-s] |
emerge -S
|
| パッケージを更新する。新しいバージョンのパッケージをインストール |
pacman -Syu |
dnf upgrade |
apt update; apt upgrade |
zypper update zypper up |
emerge -u world
|
| パッケージを更新する。アップデートコマンドの別方式で、より複雑なアップデートが行えます。例えばディストリビューションのアップグレードなどです。通常のアップグレードコマンドで省略されるようなアップグレードは、このコマンドで行うことができます。 |
pacman -Syu |
dnf distro-sync |
apt full-upgrade |
zypper dup |
emerge -uDN world
|
| 全てのローカルキャッシュを削除する。オプションを使って削除するものを制限できます。自動削除では必要のない、古い情報だけが削除されます。 |
pacman -Sc pacman -Scc |
dnf clean all |
apt-get clean / apt-get autoclean / aptitude clean |
zypper clean |
eclean distfiles
|
| 必要なくなった依存パッケージを削除する。あるパッケージを必要としていたパッケージが削除された場合など。 |
pacman -Qdtq | pacman -Rs - |
dnf autoremove |
apt-get autoremove |
zypper rm -u |
emerge --depclean
|
| リポジトリに存在しないパッケージを削除する。 |
pacman -Qm | pacman -Rs - |
package-cleanup --orphans |
aptitude purge '~o' |
|
|
| 依存パッケージとしてインストールされたパッケージを明示的に必要なパッケージとして設定する。 |
pacman -D --asexplicit |
dnf mark install |
apt-mark manual |
|
emerge --select
|
| 依存パッケージとしてパッケージをインストール。明示的に必要なパッケージとして扱わない。 |
pacman -S --asdeps |
dnf install => dnf mark remove |
aptitude install '$package&M' |
|
emerge -1
|
| 指定されたパッケージのダウンロードだけを行う。パッケージの解凍やインストールはしない。 |
pacman -Sw |
dnf download |
apt-get install --download-only (パッケージキャッシュに保存) apt-get download (パッケージキャッシュを迂回) |
zypper --download-only |
emerge --fetchonly
|
| シェルを起動し複数のコマンドを一度に入力する |
|
|
apt-config shell |
zypper shell |
|
| パッケージマネージャの操作ログを表示。 |
cat /var/log/pacman.log |
dnf history |
cat /var/log/dpkg.log |
cat /var/log/zypp/history |
/var/log/portage に存在
|
| システム情報のダンプを取得。パッケージ管理システムの現在の状態を表示・保存する。テキストや XML 形式で出力。 |
(/var/lib/pacman/local を参照) |
(/var/lib/rpm/Packages を参照) |
apt-cache stats |
n/a |
emerge --info
|
| パッケージの変更をメールで通知 |
|
|
apt-get install apt-listchanges |
|
|
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SUSE/openSUSE
|
Gentoo
|
特定のパッケージについて情報を表示
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SLES/openSUSE
|
Gentoo
|
| パッケージに関する全ての情報を表示。情報量はツールによって違いますが、オプションを使うことで大体同じ情報を得ることができます。 |
pacman -[S|Q]i |
dnf list, dnf info |
apt show / apt-cache policy |
zypper info zypper if |
emerge -S; emerge -pv; eix
|
| ローカルのパッケージの情報を表示: 名前、バージョン、説明など。 |
pacman -Qi |
rpm -qi |
dpkg -s / aptitude show |
zypper info; rpm -qi |
emerge -pv と emerge -S
|
| リモートのパッケージの情報を表示: 名前、バージョン、説明など。 |
pacman -Si |
dnf info |
apt-cache show / aptitude show |
zypper info |
emerge -pv と emerge -S
|
| ローカルのパッケージに含まれているファイルを表示 |
pacman -Ql |
rpm -ql |
dpkg -L |
rpm -Ql |
equery files
|
| リモートのパッケージに含まれているファイルを表示 |
pkgfile -l |
dnf repoquery -l |
apt-file list $pattern |
|
pfl
|
| 指定したファイルがどのパッケージに含まれているか確認 |
pacman -Qo |
rpm -qf (インストール済みのパッケージのみ) または dnf provides (全てのパッケージ) |
dpkg -S / dlocate |
zypper search -f |
equery belongs
|
| パッケージが保持しているファイルを表示。他の複雑なコマンドで同じような確認ができます。 |
pacman -Ql pkgfile -l |
dnf repoquery -l |
dpkg-query -L |
rpm -ql |
equery files
|
| 指定したファイルが含まれているパッケージを表示。特定のフィールドの検索のショートカット。他のツールは検索コマンドでこの機能を提供しています。 |
pkgfile |
dnf provides |
apt-file search |
zypper what-provides zypper wp |
equery belongs (インストールされているパッケージのみ対象); pfl
|
| 全てのパッケージから指定したファイルが含まれているパッケージを検索。auto-apt はこの機能を使います。 |
pkgfile -s |
dnf provides |
apt-file search |
zypper search -f |
equery belongs
|
| パッケージの変更履歴を表示 |
pacman -Qc |
rpm -q --changelog |
apt-get changelog |
rpm -q --changelog |
equery changes -f
|
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SUSE/openSUSE
|
Gentoo
|
パッケージのリストを表示
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SLES/openSUSE
|
Gentoo
|
| 名前や説明などでパッケージを検索。デフォルトで検索されるフィールドはツールによって異なります。オプションを使うことでツールの違いはなくせます。 |
pacman -Ss |
dnf search |
apt search |
zypper search zypper se [-s] |
emerge -S
|
| アップデートが存在するパッケージを確認。特殊なコマンドやオプションでインストールソースを指定できる場合があります。 |
pacman -Qu |
dnf list updates, dnf check-update |
apt-get upgrade -> n |
zypper list-updates zypper patch-check (パッチのみ確認) |
emerge -uDNp world
|
| パッケージマネージャによって管理されている全てのインストールソースの全てのパッケージを表示する。ツールによっては出力するインストールソースを制限できるオプションやコマンドがあります。 |
pacman -Sl |
dnf list available |
apt-cache dumpavail apt-cache dump (キャッシュのみ) apt-cache pkgnames |
zypper packages |
emerge -ep world
|
| インストールされているパッケージのリストを生成 |
pacman -Q |
dnf list installed |
dpkg --list | grep ^i |
zypper search --installed-only |
emerge -ep world
|
| インストールソースに存在しないインストール済みのパッケージを表示 |
pacman -Qm |
dnf list extras |
deborphan |
zypper se -si | grep 'System Packages' |
eix-test-obsolete
|
| 最近インストールソースに追加されたパッケージを表示。新着パッケージの表示。 |
(なし) |
dnf list recent |
aptitude search '~N' / aptitude forget-new |
n/a |
eix-diff
|
| インストールされているローカルのパッケージとバージョンを表示 |
pacman -Q |
rpm -qa |
dpkg -l |
zypper search -s; rpm -qa |
emerge -e world
|
| ローカルにインストールされているパッケージを名前と説明で検索 |
pacman -Qs |
rpm -qa '*<str>*' |
aptitude search '~i(~n $name|~d $description)' |
|
eix -S -I
|
| 他のパッケージから必要とされていないパッケージを表示 |
pacman -Qt |
package-cleanup --all --leaves |
deborphan -anp1 |
|
|
| (依存パッケージではなく) 明示的にインストールされたパッケージを表示 |
pacman -Qe |
|
apt-mark showmanual |
|
|
| (依存パッケージとして) 自動的にインストールされたパッケージを表示 |
pacman -Qd |
|
apt-mark showauto |
|
|
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SUSE/openSUSE
|
Gentoo
|
パッケージの依存関係を表示
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SLES/openSUSE
|
Gentoo
|
| X のインストールが必要なパッケージを表示。逆の依存関係を表示。 |
pacman -Sii |
dnf repoquery --alldeps --whatrequires |
apt-cache rdepends / aptitude search ~D$pattern |
zypper search --requires |
equery depends
|
| 指定した表現 (パッケージ) と衝突するパッケージを表示。検索を使ってこの機能を模倣することも可能。 |
|
dnf repoquery --conflicts |
aptitude search '~C$pattern' |
|
|
| 特定のパッケージが必要とするパッケージを全て表示。依存パッケージを表示。 |
pacman -[S|Q]i |
dnf repoquery --requires |
apt-cache depends / apt-cache show |
zypper info --requires |
emerge -ep
|
| パッケージが提供している機能を表示。 |
|
dnf provides |
dpkg -s / aptitude show |
zypper info --provides |
equery files
|
| 特定のパッケージを必要とするパッケージを全て表示。 |
|
dnf repoquery --alldeps --whatrequires |
aptitude search ~D{depends,recommends,suggests}:$pattern / aptitude why |
zypper search --requires |
equery depends -a
|
| 指定されたパッケージによって非推奨となったパッケージを全て表示。 |
|
dnf list obsoletes |
apt-cache show |
|
|
| dotty で指定したパッケージを処理するのに適した出力を生成。 |
|
|
apt-cache dotty |
n/a |
|
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SUSE/openSUSE
|
Gentoo
|
インストールソースの管理
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SLES/openSUSE
|
Gentoo
|
| インストールソースの管理 |
${EDITOR} /etc/pacman.conf |
${EDITOR} /etc/yum.repos.d/${REPO}.repo |
${EDITOR} /etc/apt/sources.list |
${EDITOR} /etc/zypp/repos.d/${REPO}.repo |
layman
|
| インストールソースをシステムに追加。ツールによっては特定のソースを追加するコマンドがあり、他のツールはあらゆるタイプのソース URI を使えます。apt や dnf ではソースリストを編集する必要があります。apt-cdrom は特殊なコマンドで CD/DVD をソースとして使うときのオプションです。 |
/etc/pacman.conf |
/etc/yum.repos.d/*.repo |
apt-cdrom add |
zypper service-add |
layman, overlays
|
| 指定したインストールソース、もしくは全てのインストールソースの情報を更新する。 |
pacman -Sy |
dnf clean expire-cache && dnf check-update |
apt-get update |
zypper refresh zypper ref |
emerge --sync;layman -S
|
| URI やエイリアスなどの情報を含む全てのインストールソースの一覧を表示する。 |
cat /etc/pacman.d/mirrorlist |
cat /etc/yum.repos.d/* |
apt-cache policy |
zypper service-list |
layman -l
|
| インストールソースを無効化する |
|
dnf --disablerepo= |
|
|
emerge package::repo-to-use
|
| インストールされているディストリビューションのバージョンとは別のバージョンからパッケージをダウンロード。 |
|
dnf --releasever= |
apt-get install -t release package/ apt-get install package/release (依存パッケージは無視されます) |
|
echo "category/package ~amd64" >> /etc/portage/package.keywords && emerge package
|
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SUSE/openSUSE
|
Gentoo
|
パッケージの上書き
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SLES/openSUSE
|
Gentoo
|
| アップデートされないようにパッケージをロックルールに追加する |
/etc/pacman.conf IgnorePkg を編集 |
dnf.conf <--”exclude” オプション (追加/編集) |
apt-mark hold pkg |
/etc/zypp/locks にパッケージ名を記述、または zypper al |
/etc/portage/package.mask
|
| パッケージのロックルールを削除 |
/etc/pacman.conf の IgnorePkg 行からパッケージを削除 |
|
apt-mark unhold pkg |
/etc/zypp/locks からパッケージ名を削除、または zypper rl |
/etc/portage/package.mask (または package.unmask)
|
| ロックルールを全て表示 |
cat /etc/pacman.conf |
|
/etc/apt/preferences |
/etc/zypp/locks を表示または zypper ll |
cat /etc/portage/package.mask
|
| アップグレードを避けたり、ダウングレードを強制したりデフォルトの挙動を上書きするために、指定したパッケージの優先権を設定する。特定のインストールソースのパッケージバージョンを優先するためにも使うことができます。 |
${EDITOR} /etc/pacman.conf HoldPkg や IgnorePkg を編集 |
|
/etc/apt/preferences, apt-cache policy |
zypper mr -p |
${EDITOR} /etc/portage/package.keywords =category/package-version を追加
|
| 先に設定した優先権を削除する |
|
|
/etc/apt/preferences |
zypper mr -p |
${EDITOR} /etc/portage/package.keywords 問題の行を削除
|
| 設定した優先権のリストを表示する。 |
|
|
apt-cache policy /etc/apt/preferences |
zypper lr -p |
cat /etc/portage/package.keywords
|
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SUSE/openSUSE
|
Gentoo
|
パッケージの検証と修復
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SLES/openSUSE
|
Gentoo
|
| 特定のパッケージを検証する |
pacman -Qk[k] |
rpm -V |
debsums |
rpm -V |
equery check
|
| 全てのパッケージを検証する |
pacman -Qk[k] |
rpm -Va |
debsums |
rpm -Va |
equery check
|
| パッケージを再インストール。依存関係を考えずに指定されたパッケージを再インストールする。 |
pacman -S |
dnf reinstall |
apt install --reinstall |
zypper install --force |
emerge [-a]
|
| システムの依存関係を検証する。インストール中に強制終了してしまった時に使用。 |
pacman -Dk |
dnf repoquery --requires |
apt-get check |
zypper verify |
emerge -uDN world
|
| システムの破損した依存関係を修正する |
pacman の依存関係: pacman -Dk, 共有ライブラリの依存関係: findbrokenpkgs または lddd |
dnf repoquery --unsatisfied |
apt-get --fix-broken aptitude install |
zypper verify |
revdep-rebuild
|
| ロールバック用にパッケージシステムにチェックポイントを追加 |
|
(不要、毎回行われます) |
|
n/a |
|
| 全てのシステムチェックポイントを確認する |
N/A |
dnf history list |
|
n/a |
|
| 特定の月日やチェックポイントまで全てのパッケージをロールバックする。 |
N/A |
dnf history rollback |
|
n/a |
|
| 指定した操作をひとつ元に戻す。 |
N/A |
dnf history undo |
|
n/a |
|
|
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SUSE/openSUSE
|
Gentoo
|
パッケージファイルの使用と作成
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SLES/openSUSE
|
Gentoo
|
| パッケージ管理データベースのエントリではなくコマンドラインで指定したパッケージを問い合わせる |
pacman -Qp |
rpm -qp |
dpkg -I |
|
|
| パッケージファイルの中身を表示する |
pacman -Qpl |
rpmls rpm -qpl |
dpkg -c |
rpm -qpl |
|
| ローカルのパッケージファイル (例: app.rpm) をインストール。インストールソースを使って依存関係を解決する。 |
pacman -U |
dnf install |
apt install |
zypper in |
emerge
|
| ローカルパッケージでパッケージを更新。インストールソースを使って依存関係を解決する。 |
pacman -U |
dnf upgrade |
debi |
|
emerge |
|
| デバッグ用にローカルパッケージをローカルパッケージキャッシュに追加する。 |
cp $filename /var/cache/pacman/pkg/ |
|
apt-cache add |
n/a |
cp $filename /usr/portage/distfiles
|
| パッケージを展開する |
tar -Jxvf |
rpm2cpio | cpio -vid |
dpkg-deb -x |
rpm2cpio | cpio -vid |
tar -jxvf
|
| ビルドに必要なパッケージをインストール・削除する。ソースパッケージの情報を使います。 |
自動 |
dnf builddep |
apt-get build-dep |
zypper si -d |
emerge -o
|
| 指定したパッケージ名のソースパッケージを表示する。 |
|
dnf repoquery -s |
apt-cache showsrc |
n/a |
|
| 指定されたパッケージ名に対応するソースパッケージをダウンロード |
ABS を使用 && makepkg -o |
dnf download --source |
apt-get source / debcheckout |
zypper source-install |
emerge --fetchonly
|
| パッケージをビルド |
makepkg -s |
rpmbuild -ba (通常) mock (chroot) |
debuild |
rpmbuild -ba; build; osc build |
ebuild; quickpkg
|
| パッケージに問題が存在しないかチェック |
namcap |
rpmlint |
lintian |
rpmlint |
repoman
|
| 操作
|
Arch
|
Red Hat/Fedora
|
Debian/Ubuntu
|
SUSE/openSUSE
|
Gentoo
|
参照