「Pacman/比較表」の版間の差分
ナビゲーションに移動
検索に移動
Kusanaginoturugi (トーク | 投稿記録) (カテゴリの修正) |
(ログファイルのローテーションを翻訳して追加) |
||
308行目: | 308行目: | ||
| style="background:#f0f0f0;" |'''Gentoo''' |
| style="background:#f0f0f0;" |'''Gentoo''' |
||
|} |
|} |
||
+ | |||
+ | == ログファイルのローテーション == |
||
+ | |||
+ | デフォルトでは、Arch Linux は {{ic|pacman.log}} をローテーションしません。{{Bug|11272}} および {{Bug|20428#comment66480}} を参照してください。これは、他のほとんどの Linux ディストリビューションのデフォルトポリシーとは対照的です。一部のディストリビューション、特に Gentoo は、デフォルトではログファイルをほとんど書き込みません。 |
||
==参照== |
==参照== |
2023年7月29日 (土) 20:08時点における版
このページは openSUSE のソフトウエア管理のコマンドライン比較 を基にして作っています。Arch を比較にいれて単純化し、Arch ユーザーにとって使いやすいようにディストリビューションの順番を並び替えました。
目次
基本操作
操作 | 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 -vc |
名前や説明の文章でパッケージを検索。デフォルトで名前と説明どちらが検索されるかはツールによって異なります。オプションを使うことでほとんど同じように検索できます。 | 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 -uDN @world |
パッケージを更新する。アップデートコマンドの別方式で、より複雑なアップデートが行えます。例えばディストリビューションのアップグレードなどです。通常のアップグレードコマンドで省略されるようなアップグレードは、このコマンドで行うことができます。 | pacman -Syu | dnf distro-sync | apt update && apt dist-upgrade | zypper dup | emerge -uDN @world |
全てのローカルキャッシュを削除する。オプションを使って削除するものを制限できます。自動削除では必要のない、古い情報だけが削除されます。 | pacman -Sc pacman -Scc |
dnf clean all | apt autoclean apt clean |
zypper clean | eclean distfiles |
必要なくなった依存パッケージを削除する。あるパッケージを必要としていたパッケージが削除された場合など。 | pacman -Qdtq | pacman -Rs - | dnf autoremove | apt autoremove | zypper rm -u | emerge --depclean |
リポジトリに存在しないパッケージを削除する。 | pacman -Rs - | dnf repoquery --extras | aptitude purge '~o' | ||
依存パッケージとしてインストールされたパッケージを明示的に必要なパッケージとして設定する。 | pacman -D --asexplicit | dnf mark install | apt-mark manual | emerge --select | |
依存パッケージとしてパッケージをインストール。明示的に必要なパッケージとして扱わない。 | pacman -S --asdeps | dnf install => dnf mark remove | apt-mark auto | emerge -1 | |
指定されたパッケージのダウンロードだけを行う。パッケージの解凍やインストールはしない。 | pacman -Sw | dnf download | apt install --download-only (パッケージキャッシュに保存) apt 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 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 / dnf info installed | 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 または equery m (meta) |
ローカルのパッケージに含まれているファイルを表示 | pacman -Ql | rpm -ql | dpkg -L | rpm -Ql | equery files; qlist |
リモートのパッケージに含まれているファイルを表示 | pacman -Fl | dnf repoquery -l または repoquery -l (yum-utils パッケージにあり) | apt-file list $pattern | pfl | |
指定したファイルがどのパッケージに含まれているか確認 | pacman -Qo | rpm -qf (インストール済みのパッケージのみ) dnf provides (全てのパッケージ) repoquery -f (yum-utils パッケージにあり) |
dpkg -S dlocate |
zypper search -f | equery belongs; qfile |
パッケージが保持しているファイルを表示。他の複雑なコマンドで同じような確認ができます。 | pacman -Ql pacman -Fl |
dnf repoquery -l | dpkg-query -L | rpm -ql | equery files |
指定したファイルが含まれているパッケージを表示。特定のフィールドの検索のショートカット。他のツールは検索コマンドでこの機能を提供しています。 | pacman -Fo | dnf provides | apt-file search | zypper what-provides zypper wp | equery belongs (インストールされているパッケージのみ対象); pfl |
全てのパッケージから指定したファイルが含まれているパッケージを検索。auto-apt はこの機能を使います。 | pacman -Fs | dnf provides | apt-file search | zypper search -f | equery belongs; qfile |
パッケージの変更履歴を表示 | 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; eix |
アップデートが存在するパッケージを確認。特殊なコマンドやオプションでインストールソースを指定できる場合があります。 | 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 | portageq all_best_visible |
インストールされているパッケージのリストを生成 | pacman -Q | dnf list installed | dpkg --list | grep ^i | zypper search --installed-only | qlist -IC |
インストールソースに存在しないインストール済みのパッケージを表示 | 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 | qlist -ICv |
ローカルにインストールされているパッケージを名前と説明で検索 | pacman -Qs | rpm -qa '*<str>*' | aptitude search '~i(~n $name|~d $description)' | eix -S -I | |
他のパッケージから必要とされていないパッケージを表示 | pacman -Qt | package-cleanup --all --leaves | deborphan -anp1 | emerge -pc | |
(依存パッケージではなく) 明示的にインストールされたパッケージを表示 | pacman -Qe | dnf history userinstalled | apt-mark showmanual | emerge -pvO @selected; eix --selected | |
(依存パッケージとして) 自動的にインストールされたパッケージを表示 | 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 または repoquery --whatr[equires] | apt-cache rdepends aptitude search ~D$pattern |
zypper search --requires | emerge -pvc |
指定した表現 (パッケージ) と衝突するパッケージを表示。検索を使ってこの機能を模倣することも可能。 | dnf repoquery --conflicts | aptitude search '~C$pattern' | |||
特定のパッケージが必要とするパッケージを全て表示。依存パッケージを表示。 | pacman -[S|Q]i | dnf repoquery --requires または repoquery -R | apt-cache depends apt-cache show |
zypper info --requires | emerge -ep |
パッケージが提供している機能を表示。 | dnf provides | dpkg -s aptitude show |
zypper info --provides | equery files; qlist | |
特定のパッケージを必要とするパッケージを全て表示。 | 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; eselect repository |
インストールソースをシステムに追加。ツールによっては特定のソースを追加するコマンドがあり、他のツールはあらゆるタイプのソース 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; eselect repository list |
指定したリポジトリ由来の全てのパッケージの一覧を表示する | paclist <repo> | eix --in-overlay | |||
インストールソースを無効化する | 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.accept_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.accept_keywords =category/package-version を追加 | |
先に設定した優先権を削除する | /etc/apt/preferences | zypper mr -p | ${EDITOR} /etc/portage/package.accept_keywords 問題の行を削除 | ||
設定した優先権のリストを表示する。 | apt-cache policy /etc/apt/preferences | zypper lr -p | grep -r . /etc/portage/package.accept_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 -1O | |
システムの依存関係を検証する。インストール中に強制終了してしまった時に使用。 | 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 | |
ビルドに必要なパッケージをインストール・削除する。ソースパッケージの情報を使います。 | ABS を使い makepkg -seoc | 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 |
ログファイルのローテーション
デフォルトでは、Arch Linux は pacman.log
をローテーションしません。FS#11272 および FS#20428#comment66480 を参照してください。これは、他のほとんどの Linux ディストリビューションのデフォルトポリシーとは対照的です。一部のディストリビューション、特に Gentoo は、デフォルトではログファイルをほとんど書き込みません。