「Pacman/比較表」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(同期)
8行目: 8行目:
 
{{Tip|他の Linux ディストリビューションのユーザーが [[pacman]] の恩恵を受けることができるようにするシンプルなラッパーがあります: [https://github.com/icy/pacapt pacapt]。このスクリプトは一時的に他のディストリビューションを使っている Arch ユーザーの使用も考えられています。}}
 
{{Tip|他の Linux ディストリビューションのユーザーが [[pacman]] の恩恵を受けることができるようにするシンプルなラッパーがあります: [https://github.com/icy/pacapt pacapt]。このスクリプトは一時的に他のディストリビューションを使っている Arch ユーザーの使用も考えられています。}}
   
  +
{{Note|ここで記述されているツールのいくつかは特定のバージョンの pacman にしか対応していません。-Qk オプションは pacman 4.1 で新しく作成されました。}}
{{Note|
 
* ここで記述されているツールのいくつかは特定のバージョンの pacman にしか対応していません。-Qk オプションは pacman 4.1 で新しく作成されました。
 
* {{ic|pkgfile}} コマンドは {{Pkg|pkgfile}} パッケージにあります。}}
 
   
 
== 基本操作 ==
 
== 基本操作 ==
28行目: 26行目:
 
| 名前や説明の文章でパッケージを検索。デフォルトで名前と説明どちらが検索されるかはツールによって異なります。オプションを使うことでほとんど同じように検索できます。 ||pacman -Ss||dnf search ||apt search||zypper search<br>zypper se [-s]||emerge -S
 
| 名前や説明の文章でパッケージを検索。デフォルトで名前と説明どちらが検索されるかはツールによって異なります。オプションを使うことでほとんど同じように検索できます。 ||pacman -Ss||dnf search ||apt search||zypper search<br>zypper se [-s]||emerge -S
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| パッケージを更新する。新しいバージョンのパッケージをインストール ||pacman -Syu||dnf upgrade ||apt update; apt upgrade||zypper update zypper up||emerge -u world
+
| パッケージを更新する。新しいバージョンのパッケージをインストール ||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 -Syu||dnf distro-sync ||apt update && apt dist-upgrade||zypper dup||emerge -uDN world
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| 全てのローカルキャッシュを削除する。オプションを使って削除するものを制限できます。自動削除では必要のない、古い情報だけが削除されます。 ||pacman -Sc<br/>pacman -Scc ||dnf clean all ||apt-get clean / apt-get autoclean / aptitude clean|| zypper clean || eclean distfiles
+
| 全てのローカルキャッシュを削除する。オプションを使って削除するものを制限できます。自動削除では必要のない、古い情報だけが削除されます。 ||pacman -Sc<br/>pacman -Scc ||dnf clean all ||apt autoclean<br>apt clean|| zypper clean || eclean distfiles
 
|-
 
|-
| 必要なくなった依存パッケージを削除する。あるパッケージを必要としていたパッケージが削除された場合など。 ||<nowiki>pacman -Qdtq | pacman -Rs -</nowiki>||dnf autoremove||apt-get autoremove ||zypper rm -u||emerge --depclean
+
| 必要なくなった依存パッケージを削除する。あるパッケージを必要としていたパッケージが削除された場合など。 ||<nowiki>pacman -Qdtq | pacman -Rs -</nowiki>||dnf autoremove||apt autoremove ||zypper rm -u||emerge --depclean
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
 
| リポジトリに存在しないパッケージを削除する。 ||<nowiki>pacman -Qm | pacman -Rs -</nowiki>||package-cleanup --orphans||aptitude purge '~o'||||
 
| リポジトリに存在しないパッケージを削除する。 ||<nowiki>pacman -Qm | pacman -Rs -</nowiki>||package-cleanup --orphans||aptitude purge '~o'||||
40行目: 38行目:
 
| 依存パッケージとしてインストールされたパッケージを明示的に必要なパッケージとして設定する。 ||pacman -D --asexplicit||dnf mark install||apt-mark manual||||emerge --select
 
| 依存パッケージとしてインストールされたパッケージを明示的に必要なパッケージとして設定する。 ||pacman -D --asexplicit||dnf mark install||apt-mark manual||||emerge --select
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| 依存パッケージとしてパッケージをインストール。明示的に必要なパッケージとして扱わない。 ||pacman -S --asdeps||dnf install => dnf mark remove||aptitude install '$package&M'||||emerge -1
+
| 依存パッケージとしてパッケージをインストール。明示的に必要なパッケージとして扱わない。 ||pacman -S --asdeps||dnf install => dnf mark remove||apt-mark auto||||emerge -1
 
|-
 
|-
| 指定されたパッケージのダウンロードだけを行う。パッケージの解凍やインストールはしない。 ||pacman -Sw||dnf download||apt-get install --download-only (パッケージキャッシュに保存)<br>apt-get download (パッケージキャッシュを迂回)|| zypper --download-only ||emerge --fetchonly
+
| 指定されたパッケージのダウンロードだけを行う。パッケージの解凍やインストールはしない。 ||pacman -Sw||dnf download||apt install --download-only (パッケージキャッシュに保存)<br>apt download (パッケージキャッシュを迂回)|| zypper --download-only ||emerge --fetchonly
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
 
| シェルを起動し複数のコマンドを一度に入力する ||||||apt-config shell||zypper shell ||
 
| シェルを起動し複数のコマンドを一度に入力する ||||||apt-config shell||zypper shell ||
50行目: 48行目:
 
| システム情報のダンプを取得。パッケージ管理システムの現在の状態を表示・保存する。テキストや XML 形式で出力。 ||(/var/lib/pacman/local を参照)||(/var/lib/rpm/Packages を参照)||apt-cache stats||n/a ||emerge --info
 
| システム情報のダンプを取得。パッケージ管理システムの現在の状態を表示・保存する。テキストや XML 形式で出力。 ||(/var/lib/pacman/local を参照)||(/var/lib/rpm/Packages を参照)||apt-cache stats||n/a ||emerge --info
 
|-
 
|-
| パッケージの変更をメールで通知 ||||||apt-get install apt-listchanges||||
+
| パッケージの変更をメールで通知 ||||||apt install apt-listchanges||||
 
|-
 
|-
 
| style="background:#f0f0f0;"|'''<font color="#707070">操作</font>'''
 
| style="background:#f0f0f0;"|'''<font color="#707070">操作</font>'''
70行目: 68行目:
 
| style="background:#f0f0f0;"|'''Gentoo'''
 
| style="background:#f0f0f0;"|'''Gentoo'''
 
|-
 
|-
| パッケージに関する全ての情報を表示。情報量はツールによって違いますが、オプションを使うことで大体同じ情報を得ることができます。 ||pacman -[S<nowiki>|</nowiki>Q]i ||dnf list, dnf info ||apt show / apt-cache policy||zypper info zypper if||emerge -S; emerge -pv; eix
+
| パッケージに関する全ての情報を表示。情報量はツールによって違いますが、オプションを使うことで大体同じ情報を得ることができます。 ||pacman -[S<nowiki>|</nowiki>Q]i ||dnf list<br>dnf info ||apt show<br>apt-cache policy||zypper info zypper if||emerge -S; emerge -pv; eix
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| ローカルのパッケージの情報を表示: 名前、バージョン、説明など。||pacman -Qi ||rpm -qi ||dpkg -s / aptitude show||zypper info; rpm -qi ||emerge -pv と emerge -S
+
| ローカルのパッケージの情報を表示: 名前、バージョン、説明など。||pacman -Qi ||rpm -qi ||dpkg -s<br>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 -Si ||dnf info ||apt-cache show<br>aptitude show||zypper info ||emerge -pv と emerge -S
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
 
| ローカルのパッケージに含まれているファイルを表示 ||pacman -Ql ||rpm -ql||dpkg -L||rpm -Ql ||equery files
 
| ローカルのパッケージに含まれているファイルを表示 ||pacman -Ql ||rpm -ql||dpkg -L||rpm -Ql ||equery files
 
|-
 
|-
| リモートのパッケージに含まれているファイルを表示 ||pkgfile -l||dnf repoquery -l||apt-file list $pattern||||pfl
+
| リモートのパッケージに含まれているファイルを表示 ||pacman -Fl||dnf repoquery -l||apt-file list $pattern||||pfl
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| 指定したファイルがどのパッケージに含まれているか確認 ||pacman -Qo ||rpm -qf (インストール済みのパッケージのみ) または dnf provides (全てのパッケージ) ||dpkg -S / dlocate||zypper search -f ||equery belongs
+
| 指定したファイルがどのパッケージに含まれているか確認 ||pacman -Qo ||rpm -qf (インストール済みのパッケージのみ)<br>dnf provides (全てのパッケージ) ||dpkg -S<br>dlocate||zypper search -f ||equery belongs
 
|-
 
|-
| パッケージが保持しているファイルを表示。他の複雑なコマンドで同じような確認ができます。 ||pacman -Ql <br/>pkgfile -l ||dnf repoquery -l ||dpkg-query -L || rpm -ql ||equery files
+
| パッケージが保持しているファイルを表示。他の複雑なコマンドで同じような確認ができます。 ||pacman -Ql <br/>pacman -Fl ||dnf repoquery -l ||dpkg-query -L || rpm -ql ||equery files
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| 指定したファイルが含まれているパッケージを表示。特定のフィールドの検索のショートカット。他のツールは検索コマンドでこの機能を提供しています。 ||pkgfile||dnf provides ||apt-file search||zypper what-provides zypper wp|| equery belongs (インストールされているパッケージのみ対象); pfl
+
| 指定したファイルが含まれているパッケージを表示。特定のフィールドの検索のショートカット。他のツールは検索コマンドでこの機能を提供しています。 ||pacman -Fo||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
+
| 全てのパッケージから指定したファイルが含まれているパッケージを検索。auto-apt はこの機能を使います。 ||pacman -Fs||dnf provides ||apt-file search||zypper search -f ||equery belongs
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
 
| パッケージの変更履歴を表示 ||pacman -Qc||rpm -q --changelog||apt-get changelog||rpm -q --changelog||equery changes -f
 
| パッケージの変更履歴を表示 ||pacman -Qc||rpm -q --changelog||apt-get changelog||rpm -q --changelog||equery changes -f
110行目: 108行目:
 
| 名前や説明などでパッケージを検索。デフォルトで検索されるフィールドはツールによって異なります。オプションを使うことでツールの違いはなくせます。 ||pacman -Ss ||dnf search ||apt search||zypper search zypper se [-s]||emerge -S
 
| 名前や説明などでパッケージを検索。デフォルトで検索されるフィールドはツールによって異なります。オプションを使うことでツールの違いはなくせます。 ||pacman -Ss ||dnf search ||apt search||zypper search zypper se [-s]||emerge -S
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| アップデートが存在するパッケージを確認。特殊なコマンドやオプションでインストールソースを指定できる場合があります。 ||pacman -Qu ||dnf list updates, dnf check-update ||apt-get upgrade -> n||zypper list-updates zypper patch-check (パッチのみ確認) ||emerge -uDNp world
+
| アップデートが存在するパッケージを確認。特殊なコマンドやオプションでインストールソースを指定できる場合があります。 ||pacman -Qu ||dnf list updates<br>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 -Sl ||dnf list available||apt-cache dumpavail apt-cache dump (キャッシュのみ) apt-cache pkgnames||zypper packages ||emerge -ep world
118行目: 116行目:
 
| インストールソースに存在しないインストール済みのパッケージを表示 ||pacman -Qm||dnf list extras || deborphan || |zypper se -si | grep 'System Packages'||eix-test-obsolete
 
| インストールソースに存在しないインストール済みのパッケージを表示 ||pacman -Qm||dnf list extras || deborphan || |zypper se -si | grep 'System Packages'||eix-test-obsolete
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| 最近インストールソースに追加されたパッケージを表示。新着パッケージの表示。 ||(なし)||dnf list recent ||aptitude search '~N' / aptitude forget-new||n/a||eix-diff
+
| 最近インストールソースに追加されたパッケージを表示。新着パッケージの表示。 ||(なし)||dnf list recent ||aptitude search '~N'<br>aptitude forget-new||n/a||eix-diff
 
|-
 
|-
 
| インストールされているローカルのパッケージとバージョンを表示 ||pacman -Q||rpm -qa||dpkg -l||zypper search -s; rpm -qa ||emerge -e world
 
| インストールされているローカルのパッケージとバージョンを表示 ||pacman -Q||rpm -qa||dpkg -l||zypper search -s; rpm -qa ||emerge -e world
126行目: 124行目:
 
| 他のパッケージから必要とされていないパッケージを表示 ||pacman -Qt||package-cleanup --all --leaves||deborphan -anp1||||
 
| 他のパッケージから必要とされていないパッケージを表示 ||pacman -Qt||package-cleanup --all --leaves||deborphan -anp1||||
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| (依存パッケージではなく) 明示的にインストールされたパッケージを表示 ||pacman -Qe||||apt-mark showmanual||||
+
| (依存パッケージではなく) 明示的にインストールされたパッケージを表示 ||pacman -Qe||dnf history userinstalled||apt-mark showmanual||||
 
|-
 
|-
 
| (依存パッケージとして) 自動的にインストールされたパッケージを表示 ||pacman -Qd||||apt-mark showauto||||
 
| (依存パッケージとして) 自動的にインストールされたパッケージを表示 ||pacman -Qd||||apt-mark showauto||||
148行目: 146行目:
 
| style="background:#f0f0f0;"|'''Gentoo'''
 
| style="background:#f0f0f0;"|'''Gentoo'''
 
|-
 
|-
| X のインストールが必要なパッケージを表示。逆の依存関係を表示。||pacman -Sii||dnf repoquery --alldeps --whatrequires ||apt-cache rdepends / aptitude search ~D$pattern||zypper search --requires || equery depends
+
| X のインストールが必要なパッケージを表示。逆の依存関係を表示。||pacman -Sii||dnf repoquery --alldeps --whatrequires ||apt-cache rdepends<br>aptitude search ~D$pattern||zypper search --requires || equery depends
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
 
| 指定した表現 (パッケージ) と衝突するパッケージを表示。検索を使ってこの機能を模倣することも可能。||||dnf repoquery --conflicts||aptitude search '~C$pattern'|| ||
 
| 指定した表現 (パッケージ) と衝突するパッケージを表示。検索を使ってこの機能を模倣することも可能。||||dnf repoquery --conflicts||aptitude search '~C$pattern'|| ||
 
|-
 
|-
| 特定のパッケージが必要とするパッケージを全て表示。依存パッケージを表示。 ||pacman -[S<nowiki>|</nowiki>Q]i||dnf repoquery --requires||apt-cache depends / apt-cache show||zypper info --requires || emerge -ep
+
| 特定のパッケージが必要とするパッケージを全て表示。依存パッケージを表示。 ||pacman -[S<nowiki>|</nowiki>Q]i||dnf repoquery --requires||apt-cache depends<br>apt-cache show||zypper info --requires || emerge -ep
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| パッケージが提供している機能を表示。 ||||dnf provides ||dpkg -s / aptitude show||zypper info --provides ||equery files
+
| パッケージが提供している機能を表示。 ||||dnf provides ||dpkg -s<br>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 repoquery --alldeps --whatrequires||aptitude search ~D{depends,recommends,suggests}:$pattern<br>aptitude why||zypper search --requires ||equery depends -a
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
 
| 指定されたパッケージによって非推奨となったパッケージを全て表示。 ||||dnf list obsoletes ||apt-cache show||||
 
| 指定されたパッケージによって非推奨となったパッケージを全て表示。 ||||dnf list obsoletes ||apt-cache show||||
182行目: 180行目:
 
| インストールソースの管理 ||${EDITOR} /etc/pacman.conf||${EDITOR} /etc/yum.repos.d/${REPO}.repo||${EDITOR} /etc/apt/sources.list||${EDITOR} /etc/zypp/repos.d/${REPO}.repo ||layman
 
| インストールソースの管理 ||${EDITOR} /etc/pacman.conf||${EDITOR} /etc/yum.repos.d/${REPO}.repo||${EDITOR} /etc/apt/sources.list||${EDITOR} /etc/zypp/repos.d/${REPO}.repo ||layman
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| インストールソースをシステムに追加。ツールによっては特定のソースを追加するコマンドがあり、他のツールはあらゆるタイプのソース URI を使えます。apt や dnf ではソースリストを編集する必要があります。apt-cdrom は特殊なコマンドで CD/DVD をソースとして使うときのオプションです。 ||/etc/pacman.conf||/etc/yum.repos.d/*.repo||apt-cdrom add||zypper service-add ||layman, overlays
+
| インストールソースをシステムに追加。ツールによっては特定のソースを追加するコマンドがあり、他のツールはあらゆるタイプのソース URI を使えます。apt や dnf ではソースリストを編集する必要があります。apt-cdrom は特殊なコマンドで CD/DVD をソースとして使うときのオプションです。 ||/etc/pacman.conf||/etc/yum.repos.d/*.repo||apt-cdrom add||zypper service-add ||layman<br>overlays
 
|-
 
|-
 
| 指定したインストールソース、もしくは全てのインストールソースの情報を更新する。 ||pacman -Sy ||dnf clean expire-cache && dnf check-update ||apt-get update||zypper refresh zypper ref||emerge --sync;layman -S
 
| 指定したインストールソース、もしくは全てのインストールソースの情報を更新する。 ||pacman -Sy ||dnf clean expire-cache && dnf check-update ||apt-get update||zypper refresh zypper ref||emerge --sync;layman -S
216行目: 214行目:
 
| ロックルールを全て表示 ||cat /etc/pacman.conf|| ||/etc/apt/preferences ||/etc/zypp/locks を表示または zypper ll||cat /etc/portage/package.mask
 
| ロックルールを全て表示 ||cat /etc/pacman.conf|| ||/etc/apt/preferences ||/etc/zypp/locks を表示または zypper ll||cat /etc/portage/package.mask
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
| アップグレードを避けたり、ダウングレードを強制したりデフォルトの挙動を上書きするために、指定したパッケージの優先権を設定する。特定のインストールソースのパッケージバージョンを優先するためにも使うことができます。 ||${EDITOR} /etc/pacman.conf<br/>HoldPkg や IgnorePkg を編集||||/etc/apt/preferences, apt-cache policy|| zypper mr -p || ${EDITOR} /etc/portage/package.keywords<br/>=category/package-version を追加
+
| アップグレードを避けたり、ダウングレードを強制したりデフォルトの挙動を上書きするために、指定したパッケージの優先権を設定する。特定のインストールソースのパッケージバージョンを優先するためにも使うことができます。 ||${EDITOR} /etc/pacman.conf<br/>HoldPkg や IgnorePkg を編集||||/etc/apt/preferences<br>apt-cache policy|| zypper mr -p || ${EDITOR} /etc/portage/package.keywords<br/>=category/package-version を追加
 
|-
 
|-
 
| 先に設定した優先権を削除する ||||||/etc/apt/preferences ||zypper mr -p || ${EDITOR} /etc/portage/package.keywords<br/>問題の行を削除
 
| 先に設定した優先権を削除する ||||||/etc/apt/preferences ||zypper mr -p || ${EDITOR} /etc/portage/package.keywords<br/>問題の行を削除
244行目: 242行目:
 
| 全てのパッケージを検証する||pacman -Qk[k]||rpm -Va||debsums||rpm -Va||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 -S||dnf reinstall||apt install --reinstall||zypper install --force||emerge -1O
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
 
| システムの依存関係を検証する。インストール中に強制終了してしまった時に使用。 ||pacman -Dk||dnf repoquery --requires ||apt-get check||zypper verify || emerge -uDN world
 
| システムの依存関係を検証する。インストール中に強制終了してしまった時に使用。 ||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<br>aptitude install||zypper verify ||revdep-rebuild
+
| システムの破損した依存関係を修正する || pacman の依存関係: pacman -Dk<br>共有ライブラリの依存関係: findbrokenpkgs または lddd||dnf repoquery --unsatisfied||apt-get --fix-broken<br>aptitude install||zypper verify ||revdep-rebuild
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
 
| ロールバック用にパッケージシステムにチェックポイントを追加 ||||(不要、毎回行われます)||||n/a||
 
| ロールバック用にパッケージシステムにチェックポイントを追加 ||||(不要、毎回行われます)||||n/a||
292行目: 290行目:
 
| 指定したパッケージ名のソースパッケージを表示する。 ||||dnf repoquery -s||apt-cache showsrc ||n/a||
 
| 指定したパッケージ名のソースパッケージを表示する。 ||||dnf repoquery -s||apt-cache showsrc ||n/a||
 
|-
 
|-
| 指定されたパッケージ名に対応するソースパッケージをダウンロード || [[ABS]] を使用 && makepkg -o ||dnf download --source||apt-get source / debcheckout||zypper source-install||emerge --fetchonly
+
| 指定されたパッケージ名に対応するソースパッケージをダウンロード || [[ABS]] を使用 && makepkg -o ||dnf download --source||apt-get source<br>debcheckout||zypper source-install||emerge --fetchonly
 
|- style="background:#e4e4e4"
 
|- style="background:#e4e4e4"
 
| パッケージをビルド||makepkg -s||rpmbuild -ba (通常)<br>mock (chroot)||debuild||rpmbuild -ba; build; osc build ||ebuild; quickpkg
 
| パッケージをビルド||makepkg -s||rpmbuild -ba (通常)<br>mock (chroot)||debuild||rpmbuild -ba; build; osc build ||ebuild; quickpkg

2017年10月30日 (月) 23:40時点における版

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

ヒント: 他の Linux ディストリビューションのユーザーが pacman の恩恵を受けることができるようにするシンプルなラッパーがあります: pacapt。このスクリプトは一時的に他のディストリビューションを使っている Arch ユーザーの使用も考えられています。
ノート: ここで記述されているツールのいくつかは特定のバージョンの pacman にしか対応していません。-Qk オプションは pacman 4.1 で新しく作成されました。

基本操作

操作 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 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 -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 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 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
リモートのパッケージに含まれているファイルを表示 pacman -Fl dnf repoquery -l apt-file list $pattern pfl
指定したファイルがどのパッケージに含まれているか確認 pacman -Qo rpm -qf (インストール済みのパッケージのみ)
dnf provides (全てのパッケージ)
dpkg -S
dlocate
zypper search -f equery belongs
パッケージが保持しているファイルを表示。他の複雑なコマンドで同じような確認ができます。 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
パッケージの変更履歴を表示 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 dnf history userinstalled 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 -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
ビルドに必要なパッケージをインストール・削除する。ソースパッケージの情報を使います。 自動 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

参照