Pacman/比較表

提供: ArchWiki
2015年11月24日 (火) 22:42時点におけるKusakata (トーク | 投稿記録)による版
ナビゲーションに移動 検索に移動

メインの記事は pacman を見て下さい。

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

ヒント: 他の Linux ディストリビューションのユーザーが pacman の恩恵を受けることができるようにするシンプルなラッパーがあります: pacapt。このスクリプトは一時的に他のディストリビューションを使っている Arch ユーザーの使用も考えられています。
ノート:
  • ここで記述されているツールのいくつかは特定のバージョンの pacman にしか対応していません。-Qk オプションは pacman 4.1 で新しく作成されました。
  • pkgfile コマンドは pkgfile パッケージにあります。
操作 Arch Red Hat/Fedora Debian/Ubuntu SUSE/openSUSE Gentoo
名前でパッケージをインストール pacman -S dnf install apt-get install zypper install
zypper in
emerge [-a]
名前でパッケージを削除 pacman -Rs dnf remove apt-get autoremove zypper remove
zypper rm
emerge -C
名前や説明の文章でパッケージを検索。デフォルトで名前と説明どちらが検索されるかはツールによって異なります。オプションが使うツールはほとんど同じです。 pacman -Ss dnf search apt-cache search zypper search
zypper se [-s]
emerge -S
パッケージを更新する - 新しいバージョンのパッケージをインストール pacman -Syu dnf upgrade apt-get update; apt-get upgrade zypper update zypper up emerge -u world
パッケージを更新する - アップデートコマンドの別方式で、より複雑なアップデートが行えます -- 例えばディストリビューションのアップグレードなどです。通常のアップグレードコマンドで省略されるようなアップグレードは、このコマンドで行うことができます。 pacman -Syu dnf distro-sync apt-get dist-upgrade zypper dup emerge -uDN world
パッケージを再インストール - 依存関係を考えずに指定されたパッケージを再インストールする。 pacman -S dnf reinstall apt-get install --reinstall zypper install --force emerge [-a]
ローカルのパッケージファイル (例: app.rpm) をインストールしインストールソースを使って依存関係を解決する pacman -U dnf install dpkg -i && apt-get install -f zypper in /path/to/local.rpm emerge
ローカルパッケージでパッケージを更新してインストールソースを使って依存関係を解決する pacman -U dnf upgrade debi emerge
システムの破損した依存関係を修正する pacman dep level - testdb, shared lib level - findbrokenpkgs や lddd dnf repoquery --unsatisfied apt-get --fix-broken
aptitude install
zypper verify revdep-rebuild
指定されたパッケージのダウンロードだけ行う、パッケージの解凍やインストールはしない pacman -Sw dnf download apt-get install --download-only (パッケージキャッシュに保存)
apt-get download (パッケージキャッシュを迂回)
zypper --download-only emerge --fetchonly
そのパッケージを必要としていたパッケージが削除されたなどして、必要なくなった依存パッケージを削除する。 pacman -Qdtq | pacman -Rs - dnf autoremove apt-get autoremove zypper rm -u emerge --depclean
指定されたパッケージ名に対応するソースパッケージをダウンロード ABS を使う && makepkg -o dnf download --source apt-get source / debcheckout zypper source-install emerge --fetchonly
リポジトリから既に外されたパッケージを削除。 package-cleanup --orphans aptitude purge '~o'
ビルドに必要なパッケージをインストール・削除する。ソースパッケージの情報を使います。 自動 dnf builddep apt-get build-dep zypper si -d emerge -o
アップデートされないようにパッケージをロックルールに追加する /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 からパッケージ名を削除 /etc/portage/package.mask (または package.unmask)
全てのロックルールの一覧を表示 cat /etc/pacman.conf /etc/apt/preferences /etc/zypp/locks を表示 cat /etc/portage/package.mask
ロールバックのためにパッケージシステムにチェックポイントを追加する (不要、自動で行われます) n/a
システムからチェックポイントを削除する N/A N/A n/a
全てのシステムチェックポイントを一覧する N/A dnf history list n/a
特定の月日やチェックポイントまで全てのパッケージをロールバックする。 N/A dnf history rollback n/a
指定した操作をひとつ元に戻す。 N/A dnf history undo n/a
明示的に必要な依存パッケージとして以前インストールされたとしてパッケージに印を付ける。 pacman -D --asexplicit apt-mark manual emerge --select
依存パッケージとしてパッケージをインストール / 明示的に必要だと印を付けない。 pacman -S --asdeps aptitude install 'pkg&M' emerge -1
パッケージ情報の管理
システム全体の情報のダンプを取得 - パッケージ管理システムの現在の状態を表示し、保存などする。テキストや XML 形式で出力される。 (/var/lib/pacman/local を参照) (/var/lib/rpm/Packages を参照) apt-cache stats n/a emerge --info
パッケージに関する全ての情報を表示。情報量はデフォルトコマンドによって違いますが、オプションを使うことで同じになります。 pacman -[S|Q]i dnf list, dnf info apt-cache show / apt-cache policy zypper info zypper if emerge -S; emerge -pv; eix
正規表現を使って名前や説明などでパッケージを検索。デフォルトで検索されるフィールドはツールによって異なります。オプションを使うことでツールの違いはなくせます。 pacman -Ss dnf search apt-cache search zypper search zypper se [-s] emerge -S
変更履歴を表示 apt-get changelog
パッケージの変更をメールで通知 apt-get install apt-listchanges
アップデートが存在するパッケージを確認 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
指定したファイルが含まれているパッケージを表示。特定のフィールドの検索のショートカット。他のツールは検索コマンドでこの機能を提供しています。 pkgfile <filename> dnf provides apt-file search <filename> zypper what-provides zypper wp equery belongs (インストールされたパッケージのみ); pfl
X のインストールが必要なパッケージを表示。逆の依存関係を表示。 pacman -Sii dnf provides apt-cache rdepends / aptitude search ~Dpattern 開発中 equery depends
指定した表現 (パッケージ) と衝突するパッケージを表示。検索を使ってこの機能を模倣することも可能。 repoquery --whatconflicts aptitude search '~Cpattern'
特定のパッケージが必要とするパッケージを全て表示。依存パッケージを表示。 pacman -[S|Q]i dnf repoquery --requires apt-cache depends / apt-cache show zypper info --requires emerge -ep
パッケージが提供しているものを表示。 dnf provides dpkg -s / aptitude show 開発中 equery files
パッケージに含まれているファイルを表示。他の複雑なコマンドを使ってこの機能を模倣することも可能。 pacman -Ql $pkgname
pkgfile -l
dnf repoquery -l $pkgname dpkg-query -L $pkgname equery files
特定のパッケージを必要とするパッケージを全て表示。 repoquery --whatrequires [--recursive] aptitude search \~D{depends,recommends,suggests}:pattern / aptitude why pkg equery depends -a
全てのパッケージから指定したファイルが含まれているパッケージを検索。auto-apt はこの機能を使います。 pkgfile -s dnf provides apt-file search equery belongs
指定したパッケージが廃止した全てのパッケージを表示する。 dnf list obsoletes apt-cache show 開発中
完全なシステムの依存関係の検証をする。インストール中に強制終了してしまった時に使用します。 testdb dnf repoquery --requires apt-get check n/a emerge -uDN world
インストールされたパッケージのリストを生成する pacman -Q dnf list installed dpkg --list | grep ^i zypper 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
パッケージマネージャの操作ログを表示 cat /var/log/pacman.log dnf history cat /var/log/dpkg.log cat /var/log/zypp/history /var/log/portage に存在
全てのローカルキャッシュを削除する。オプションを使って削除するものを制限できます。Autoclean は必要のない、古い情報を削除します。 pacman -Sc
pacman -Scc
dnf clean all 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
dotty で指定したパッケージを処理するのに適した出力を生成。 apt-cache dotty n/a
アップグレードを避けたり、ダウングレードを強制したりデフォルトの挙動を上書きするために、指定したパッケージの優先権を設定する。特定のインストールソースのパッケージバージョンを優先するためにも使うことができます。 ${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 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
インストールソースをシステムに追加。ツールによっては特定のソースを追加するコマンドがあり、他のツールはあらゆるタイプのソース 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 layman -f
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
その他のコマンド
シェルを起動し複数のコマンドを一度に入力する apt-config shell zypper shell
パッケージの検証
ひとつのパッケージ pacman -Qk[k] <package> rpm -V <package> debsums rpm -V <package> equery check
全てのパッケージ pacman -Qk[k] rpm -Va debsums rpm -Va equery check
パッケージの問い合わせ
インストールされたパッケージとそのバージョンを一覧する pacman -Q rpm -qa dpkg -l emerge -e world
ローカルのパッケージの情報を表示: 名前、バージョン、説明など。 pacman -Qi rpm -qi dpkg -s / aptitude show emerge -pv と emerge -S
リモートのパッケージの情報を表示: 名前、バージョン、説明など。 pacman -Si dnf info apt-cache show / aptitude show emerge -pv と emerge -S
ローカルのパッケージによって提供されたファイルを表示 pacman -Ql rpm -ql dpkg -L equery files
リモートのパッケージによって提供されるファイルを表示 pkgfile -l repoquery -l apt-file list pattern pfl
特定のファイルを提供するパッケージを問い合わせる pacman -Qo rpm -qf (インストールしたパッケージのみ) や dnf provides (全てのパッケージ) dpkg -S / dlocate equery belongs
パッケージ管理データベースのエントリではなくコマンドラインのパッケージを問い合わせる pacman -Qp rpm -qp dpkg -I
パッケージの変更履歴を表示 pacman -Qc rpm -q --changelog apt-get changelog equery changes -f
ローカルにインストールされたパッケージを名前や説明で検索 pacman -Qs rpm -qa '*<str>*' aptitude search '~i(~n 名前|~d 説明)' eix -S -I
他のパッケージから必要とされていないパッケージを一覧 pacman -Qt package-cleanup --all --leaves deborphan -anp1
パッケージのビルド
パッケージをビルドする makepkg -s rpmbuild -ba (通常)
mock (chroot)
debuild rpmbuild -ba ebuild; quickpkg
パッケージの問題をチェック namcap rpmlint lintian repoman
パッケージファイルの中身を一覧する pacman -Qpl <file> rpmls rpm -qpl dpkg -c rpm -qpl
パッケージを展開 tar -Jxvf rpm2cpio | cpio -vid dpkg-deb -x rpm2cpio | cpio -vid tar -jxvf
パッケージ管理データベースのエントリではなくコマンドラインのパッケージを問い合わせる pacman -Qp rpm -qp dpkg -I
操作 Arch Red Hat/Fedora Debian/Ubuntu SUSE/openSUSE Gentoo

参照