# Pacman Rosetta (日本語)

このページは openSUSE のソフトウエア管理のコマンドライン比較 を基にして作っています。Arch を比較にいれて単純化し、Arch ユーザーにとって使いやすいようにディストリビューションの順番を並び替えました。

他の Linux ディストリビューションのユーザーが pacman の恩恵を受けることができるようにするシンプルなラッパーがあります: pacapt。このスクリプトは一時的に他のディストリビューションを使っている Arch ユーザーの使用も考えられています。

Note:

- ここで記述されているツールのいくつかは特定のバージョンの pacman にしか対応していません。-Qk オプションは pacman 4.1 で新しく作成されました。
- `pkgfile` コマンドは pkgfile パッケージにあります。

操作 | Arch | Red Hat/Fedora | Debian/Ubuntu | (旧) SUSE | openSUSE | Gentoo
名前でパッケージをインストール | pacman -S | yum install | apt-get install | rug install | zypper install zypper in | emerge [-a]
名前でパッケージを削除 | pacman -Rc | yum remove/erase | apt-get remove | rug remove/erase | zypper remove zypper rm | emerge -C
名前や説明の文章でパッケージを検索。デフォルトで名前と説明どちらが検索されるかはツールによって異なります。オプションが使うツールはほとんど同じです。 | pacman -Ss | yum search | apt-cache search | rug search | zypper search zypper se [-s] | emerge -S
パッケージを更新する - 新しいバージョンのパッケージをインストール | pacman -Syu | yum update | apt-get upgrade | rug update | zypper update zypper up | emerge -u world
パッケージを更新する - アップデートコマンドの別方式で、より複雑なアップデートが行えます -- 例えばディストリビューションのアップグレードなどです。通常のアップグレードコマンドで省略されるようなアップグレードは、このコマンドで行うことができます。 | pacman -Syu | yum distro-sync | apt-get dist-upgrade |  | zypper dup | emerge -uDN world
パッケージを再インストール - 依存関係を考えずに指定されたパッケージを再インストールする。 | pacman -S | yum reinstall | apt-get install --reinstall |  | zypper install --force | emerge [-a]
ローカルのパッケージファイル (例: app.rpm) をインストールしインストールソースを使って依存関係を解決する | pacman -U | yum localinstall | dpkg -i && apt-get install -f |  | zypper in /path/to/local.rpm | emerge
ローカルパッケージでパッケージを更新してインストールソースを使って依存関係を解決する | pacman -U | yum localupdate |  |  | n/a | emerge |
システムの破損した依存関係を修正する | pacman dep level - testdb, shared lib level - findbrokenpkgs or lddd | package-cleanup --problems | apt-get --fix-broken / aptitude install | rug* solvedeps | zypper verify | revdep-rebuild
指定されたパッケージのダウンロードだけ行う、パッケージの解凍やインストールはしない | pacman -Sw | yumdownloader (found in yum-utils package) | apt-get --download-only |  | zypper --download-only / aptitude download | emerge --fetchonly
そのパッケージを必要としていたパッケージが削除されたなどして、必要なくなった依存パッケージを削除する。 | pacman -Qdtq | pacman -Rs - | package-cleanup --leaves | apt-get autoremove |  | n/a | emerge --depclean
指定されたパッケージ名に対応するソースパッケージをダウンロード | ABS を使う && makepkg -o | yumdownloader --source | apt-get source / debcheckout |  | zypper source-install | emerge --fetchonly
リポジトリから既に外されたパッケージを削除。 |  | package-cleanup --orphans |  |  |  |
ビルドに必要なパッケージをインストール・削除する。ソースパッケージの情報を使います。 | automatic | yum-builddep | apt-get build-dep |  | zypper si -d | emerge -o
アップデートされないようにパッケージをロックルールに追加する | ${EDITOR} /etc/pacman.conf IgnorePkg を修正する | yum.conf <--”exclude” option (add/amend) | echo "$PKGNAME hold" | dpkg --set-selections | rug* lock-add | /etc/zypp/locks にパッケージ名を記述する | /etc/portage/package.mask
パッケージのロックルールを削除 | /etc/pacman.conf の IgnorePkg からパッケージを削除 | yum.conf <--”exclude” option (remove/amend) | echo "$PKGNAME install" | dpkg --set-selections | rug* lock-delete | /etc/zypp/locks からパッケージ名を削除する | /etc/portage/package.mask (or package.unmask)
全てのロックルールの一覧を表示 | cat /etc/pacman.conf | yum.conf (research needed) | /etc/apt/preferences | rug* lock-list | View /etc/zypp/locks | cat /etc/portage/package.mask
ロールバックのためにパッケージシステムにチェックポイントを追加する |  | (不必要、自動で行われます) |  | rug* checkpoint-add | n/a |
システムからチェックポイントを削除する | N/A | N/A |  | rug* checkpoint-remove | n/a |
全てのシステムチェックポイントを一覧する | N/A | yum history list |  | rug* checkpoints | n/a |
特定の月日やチェックポイントまで全てのパッケージをロールバックする。 | N/A | yum history rollback |  | rug* rollback | n/a |
指定した操作をひとつ元に戻す。 | N/A | yum history undo |  |  | n/a |
明示的に必要な依存パッケージとして以前インストールされたとしてパッケージに印を付ける。 | pacman -D --asexplicit |  | aptitude unmarkauto |  |  | emerge --select
依存パッケージとしてパッケージをインストール / 明示的に必要だと印を付けない。 | pacman -S --asdeps |  |  |  |  | emerge -1 |  |  |  |  |  |  |
パッケージ情報の管理 |  |  |  |  |  |
システム全体の情報のダンプを取得 - パッケージ管理システムの現在の状態を表示し、保存などする。テキストや XML 形式で出力される。rug は sqlite データベースとして情報を保存します。 (Note: Why either-or here? No tool offers the option to choose the output format.) | (see /var/lib/pacman/local) | (see /var/lib/rpm/Packages) | apt-cache stats | rug dump | n/a | emerge --info
パッケージについての全ての情報を表示。デフォルトコマンドで表示されるツールの詳細度は異なります。オプションを付けた時は、どのツールも同じです。 | pacman -[S|Q]i | yum list or info | apt-cache show / apt-cache policy | rug info | zypper info zypper if | emerge -S; emerge -pv; eix
名前や説明の文章でパッケージを検索。デフォルトで名前と説明どちらが検索されるかはツールによって異なります。オプションが使うツールはほとんど同じです。 | pacman -Ss | yum search | apt-cache search | rug search | zypper search zypper se [-s] | emerge -S
更新があるパッケージを一覧する。 Note: Some provide special commands to limit the output to certain installation sources, others use options. | pacman -Qu | yum list updates yum check-update | apt-get upgrade -> n | rug list-updates rug summary | zypper list-updates zypper patch-check (just for patches) | emerge -uDNp world
パッケージマネージャによって管理されている全てのインストールソースの全てのパッケージを一覧する。ツールによっては出力するインストールソースを制限できるオプションやコマンドがあります。 | pacman -Sl | yum list available | apt-cache dumpavail apt-cache dump (Cache only) apt-cache pkgnames | rug packages | zypper packages | emerge -ep world
Displays packages which provide the given exp. aka reverse provides. Mainly a shortcut to search a specific field. Other tools might offer this functionality through the search command. | pkgfile <filename> | yum whatprovides yum provides | apt-file search <filename> | rug what-provides | zypper what-provides zypper wp | equery belongs (only installed packages); pfl
X がインストールされるのに必要なパッケージを表示する (逆の依存パッケージを表示する)。rug の what-requires はパッケージ名以外も使えます。 | pacman -Sii | yum resolvedep | apt-cache rdepends / aptitude search ~Dpattern | rug what-requires | IN PROGRESS | equery depends
指定された表現（パッケージ）と衝突するパッケージを表示する。検索を使ってこの機能と同じこともできます。rug の what-requires はパッケージ名以外も使えます | (none) | repoquery --whatconflicts | aptitude search '~Cpattern' | rug info-conflicts rug what-conflicts | IN PROGRESS |
指定されたパッケージに必要とされているパッケージを全て一覧する (依存パッケージを表示する)。 | pacman -[S|Q]i | yum deplist | apt-cache depends / apt-cache show | rug info-requirements | IN PROGRESS | emerge -ep
現在のパッケージが提供するファイルを一覧する |  | yum provides |  | rug info-provides | IN PROGRESS | equery files
パッケージが保持しているファイルを一覧する、この機能はほかのコマンドを組み合わせることでも同じことができます。 | pacman -Ql $pkgname pkgfile -l | repoquery -l $pkgname | dpkg -L / apt-file list | rug* file-list | IN PROGRESS | equery files
特定のパッケージを必要としている全てのパッケージを一覧する |  | repoquery --whatrequires [--recursive] |  |  |  | equery depends -a
全てのパッケージから特定のファイルを保持しているパッケージを検索する。auto-apt はこの機能を使っています。 | pkgfile -s | yum provides yum whatprovides | apt-file search | rug* package-file rug what-provides | IN PROGRESS | equery belongs
指定したパッケージが廃止した全てのパッケージを表示する。 |  | yum list obsoletes | apt-cache show | rug info-obsoletes | IN PROGRESS |
完全なシステムの依存関係の検証をする。インストール中に強制終了してしまった時に使用します。 | testdb | yum deplist | apt-get check ? apt-cache unmet | rug verify rug* dangling-requires | n/a | emerge -uDN world
インストールされたパッケージのリストを生成する | pacman -Q | yum list installed | dpkg --get-selections |  | zypper | emerge -ep world
インストールされているがどのインストールソースからも利用できなくなっているパッケージを一覧する。 | pacman -Qm | yum list extras | deborphan |  | zypper se -si | grep 'System Packages' | eix-test-obsolete
List packages that were recently added to one of the installation sources, i.e. which are new to it. | (none) | yum list recent | aptitude search '~N' / aptitude forget-new |  | n/a | eix-diff
パッケージマネージャの操作ログを表示。 | cat /var/log/pacman.log | yum history cat /var/log/yum.log | cat /var/log/dpkg.log | rug history | cat /var/log/zypp/history | located in /var/log/portage
全てのローカルキャッシュを削除する。オプションを使って削除するものを制限できます。Autoclean は必要のない、古い情報を削除します。 | pacman -Sc pacman -Scc | yum clean | apt-get clean / apt-get autoclean / aptitude clean |  | zypper clean | eclean distfiles
デバッグなどのためにローカルパッケージをローカルパッケージキャッシュに追加する。 | cp $pkgname /var/cache/pacman/pkg/ |  | apt-cache add |  | n/a | cp $srcfile /usr/portage/distfiles
指定されたパッケージ名のソースパッケージを表示する |  | repoquery -s | apt-cache showsrc |  | n/a |
Generates an output suitable for processing with dotty for the given package(s). |  |  | apt-cache dotty |  | n/a |
アップグレードを避けたり、ダウングレードを強制したりデフォルトの挙動を上書きするために、指定したパッケージの優先権を設定する。特定のインストールソースのパッケージバージョンを優先するためにも使うことができます。 | ${EDITOR} /etc/pacman.conf Modify HoldPkg and/or IgnorePkg arrays | yum-plugin-priorities and yum-plugin-protect-packages | /etc/apt/preferences, apt-cache policy |  | zypper mr -p | ${EDITOR} /etc/portage/package.keywords Add a line with =category/package-version
先に設定した優先権を削除する |  |  | /etc/apt/preferences |  | zypper mr -p | ${EDITOR} /etc/portage/package.keywords remove offending line
設定した優先権のリストを表示する。 |  |  | apt-cache policy /etc/apt/preferences |  | n/a | cat /etc/portage/package.keywords
優先権が引き起こす可能性がある問題を無視する。 |  |  |  |  | n/a |
インストールソースの管理 | ${EDITOR} /etc/pacman.conf | ${EDITOR} /etc/yum.repos.d/${REPO}.repo | ${EDITOR} /etc/apt/sources.list |  |  | layman
インストールソースをシステムに追加する。 Some tools provide additional commands for certain sources, others allow all types of source URI for the add command. Again others, like apt and yum force editing a sources list. apt-cdrom is a special command, which offers special options design for CDs/DVDs as source. | ${EDITOR} /etc/pacman.conf | ${EDITOR} /etc/yum.repos.d/${REPO}.repo | apt-cdrom add | rug service-add rug mount /local/dir | zypper service-add | layman, overlays
指定したインストールソース、もしくは全てのインストールソースの情報を更新する。 | pacman -Sy | yum clean expire-cache && yum check-update | apt-get update | rug refresh | zypper refresh zypper ref | layman -f
URI, エイリアスなどの情報を含む全てのインストールソースの一覧を表示する。 | cat /etc/pacman.d/mirrorlist | cat /etc/yum.repos.d/* |  | rug service-list | zypper service-list | layman -l
インストールソースを無効化する |  | yum --disablerepo=${REPO} |  |  |  | emerge package::repo-to-use
インストールしているのとは別のバージョンのディストリビューションからパッケージをダウンロード。 |  | yum --releasever=${VERSION} | apt-get install -t release package/ apt-get install package/release (deps not covered) |  |  | echo "category/package ~amd64" >> /etc/portage/package.keywords && emerge package
その他のコマンド |  |  |  |  |  |
シェルを起動し複数のコマンドを一度に入力する |  | yum shell | apt-config shell |  | zypper shell |
パッケージの検証 |  |  |  |  |  |
ひとつのパッケージ | pacman -Qk[k] <package> | rpm -V <package> | debsums | rpm -V <package> | rpm -V <package> | equery check
全てのパッケージ | pacman -Qk[k] | rpm -Va | debsums | rpm -Va | rpm -Va | equery check
パッケージの問い合わせ |  |  |  |  |  |
インストールされたパッケージとそのバージョンを一覧する | pacman -Q | rpm -qa | dpkg -l |  |  | emerge -e world
ローカルのパッケージの情報を表示: 名前、バージョン、説明など。 | pacman -Qi | rpm -qi | dpkg -s |  |  | emerge -pv and emerge -S
リモートのパッケージの情報を表示: 名前、バージョン、説明など。 | pacman -Si | yum info | apt-cache show / aptitude show |  |  | emerge -pv and emerge -S
ローカルのパッケージによって提供されたファイルを表示 | pacman -Ql | rpm -ql | dpkg -L |  |  | equery files
リモートのパッケージによって提供されるファイルを表示 | pkgfile -l | repoquery -l |  |  |  | pfl
特定のファイルを提供するパッケージを問い合わせる | pacman -Qo | rpm -qf (installed only) or yum whatprovides (everything) | dpkg -S/dlocate |  |  | equery belongs
パッケージ管理データベースのエントリではなくコマンドラインのパッケージを問い合わせる | pacman -Qp | rpm -qp | dpkg -I |  |  |
パッケージの変更履歴を表示 | pacman -Qc | rpm -q --changelog | apt-get changelog |  |  | equery changes -f
ローカルにインストールされたパッケージを名前や説明で検索 | pacman -Qs |  | aptitude search '~i(~nexpr|~dexpr)' |  |  | eix -S -I
パッケージのビルド |  |  |  |  |  |
パッケージをビルドする | makepkg -s | rpmbuild -ba (normal) mock (in chroot) | debuild | rpmbuild -ba | rpmbuild -ba | ebuild; quickpkg
パッケージの問題をチェック |  | rpmlint | lintian |  |  | repoman
パッケージファイルの中身を一覧する | pacman -Qpl <file> | rpmls rpm -qpl | dpkg -L | rpm -qpl | rpm -qpl |
パッケージを展開 | tar -Jxvf | rpm2cpio | cpio -vid | ar vx | tar -zxvf data.tar.gz | rpm2cpio | cpio -vid | rpm2cpio | cpio -vid | tar -jxvf
パッケージ管理データベースのエントリではなくコマンドラインのパッケージを問い合わせる | pacman -Qp | rpm -qp | dpkg -I |  |  |
操作 | Arch | Red Hat/Fedora | Debian/Ubuntu | (旧) SUSE | openSUSE | Gentoo

Category:

- Package management (日本語)