MochiuWiki : SUSE, EC, PCB
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
検索
個人用ツール
ログイン
Toggle dark mode
名前空間
ページ
議論
表示
閲覧
ソースを閲覧
履歴を表示
Linuxコマンド - RPMコマンドのソースを表示
提供: MochiuWiki : SUSE, EC, PCB
←
Linuxコマンド - RPMコマンド
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループのいずれかに属する利用者のみが実行できます:
管理者
、new-group。
このページのソースの閲覧やコピーができます。
== 概要 == RPM (Red Hat Package Manager) は、RHELやその派生ディストリビューションで使用されるパッケージ管理システムである。<br> rpmコマンドは、パッケージのインストール、更新、削除、検索等を行うために使用される。<br> <br><br> == rpmファイルの詳細情報の確認(インストール前) == -pオプションを付与すると、インストール前にrpmファイルから確認できる。<br> パッケージファイル情報の詳細を表示する。<br> rpm -qip <rpmファイル名> <br> 該当パッケージでインストールされるファイルの一覧を表示する。<br> rpm -qlp <rpmファイル名> <br> パッケージが依存しているファイルを表示する。<br> rpm -qRp <rpmファイル名> <br><br> == rpmファイルの詳細情報の確認 == -iまたは--infoオプションで確認できる。<br> rpm -qi <rpmファイル名> <br><br> == インストールされているrpmのリストの表示 == -aまたは--allオプションで確認できる。<br> rpm -qa openal-soft-1.17.2-lp151.5.3.1.x86_64 libpng16-16-32bit-1.6.34-lp151.3.3.1.x86_64 openssl-1.1.0i-lp151.1.1.noarch wicked-service-0.6.60-lp151.2.12.1 ・ ・ ・ <br><br> == rpmファイルでインストールされるファイルの表示 == -lまたは--listオプションで表示できる。<br> rpm -ql <rpmファイル名> /etc/pki/CA /etc/pki/CA/certs /etc/pki/CA/crl ・ ・ ・ <br><br> == 特定のファイルがどのrpmに含まれているかを確認 == <code>-f</code>オプション、または、<code>--file</code>オプションで表示することができる。<br> <br> 特定のコマンドおよびライブラリがインストールされているパッケージ名を調べるために使用する。<br> rpm -qf $(which <コマンド名>) # または rpm -qf <ライブラリのパス> <br> 各オプションを以下に示す。<br> * -qオプション *: quiet (静粛) モードを指定する。 *: つまり、通常の出力ではなく、エラー以外の情報を表示しないようにする。 *: <br> * -fオプション *: 指定されたファイルがどのパッケージに属するかを調べるために使用する。 *: -qオプションと組み合わせて使用する場合、指定されたファイルが含まれるパッケージ名を表示する。 <br> whichコマンドで実行可能ファイルのパスを表示することにより、<br> 特定のコマンドの実行可能ファイルのパスを調べて、それがどのパッケージに属するかを調べるために使用するものである。<br> <br> # 使用例: rpm -qf $(which dd) # 出力例: # これは、ddコマンドがcoreutilsパッケージの一部であることを示している coreutils-8.32-3.el8.x86_64 <br> # 使用例: rpm -qf /usr/lib64/libcrypto.so.10 # 出力例: # /usr/lib64/libcrypto.so.10ファイルは、openssl-libs-1.0.2k-8.el7.x86_64というrpmに含まれている openssl-libs-1.0.2k-8.el7.x86_64 <br><br> == 特定のrpmファイルをインストールするために必要なパッケージ名称の表示 == 以下の例では、nssをインストールするには、bashやglibcが必要であることがわかる。<br> rpm -q --requires nss | cut -d ' ' -f 1 | xargs rpm -q --whatprovides | sort | uniq bash-4.2.46-28.el7.x86_64 chkconfig-1.7.4-1.el7.x86_64 glibc-2.17-196.el7_4.2.x86_64 ・ ・ ・ <br><br> == 特定のrpmファイルが提供するファイルに依存するパッケージの表示 == 以下の例では、nssで提供するファイルは、NetworkManagerが使用していることがわかる。<br> rpm -q --provides nss | cut -d ' ' -f 1 | xargs rpm -q --whatrequires | sort | uniq NetworkManager-1.8.0-9.el7.x86_64 NetworkManager-libnm-1.8.0-9.el7.x86_64 NetworkManager-tui-1.8.0-9.el7.x86_64 ・ ・ ・ <br><br> == rpmファイルのインストールおよびアンインストール時に実行されるスクリプトの表示 == --scriptsオプションで表示できる。<br> rpm -q --scripts nss-3.16.1-4.el6_5.x86_64 postinstall scriptlet (using /bin/sh): # If we upgrade, and the shared filename is a regular file, then we must # remove it, before we can install the alternatives symbolic link. if [ $1 -gt 1 ] ; then ・ ・ ・ <br><br> == 特定のrpmファイルのインストールテストを行う == 実際には実行せずに、 -iや-eオプションを付与した際のインストールテストを行う。<br> --testオプションで実行できる。<br> rpm -i --test postgresql-8.4.20-2.el6_6.i686.rpm エラー: 依存性の欠如: libc.so.6 は postgresql-8.4.20-2.el6_6.i686 に必要とされています libc.so.6(GLIBC_2.0) は postgresql-8.4.20-2.el6_6.i686 に必要とされています libc.so.6(GLIBC_2.1) は postgresql-8.4.20-2.el6_6.i686 に必要とされています ・ ・ ・ <br><br> == 特定のrpmファイルのアンインストールを行う == <code>-e</code>または、<code>--erase</code>オプションは、指定したパッケージを削除する際に使用する。<br> rpm -e <パッケージ名> <br><br> == パッケージの更新履歴を見る == --changelogオプションで実行できる。<br> rpm -q --changelog libblkid-2.17.2-12.14.el6_5.x86_64 * 水 4月 09 2014 Karel Zak <kzak@redhat.com> 2.17.2-12.14.el6_5 - fix #1085818 - hwclock --systohc can hang on busy or virtual machine ・ ・ ・ <br><br> == パッケージインストール時のスクリプトの確認 == --scriptsオプションで確認できる。<br> rpm -q --scripts wget-1.19.5-7.el8_0.1.x86_64.rpm postinstall scriptlet (using /bin/sh): /sbin/install-info /usr/share/info/wget.info.gz /usr/share/info/dir || : preuninstall scriptlet (using /bin/sh): if [ "$1" = 0 ]; then /sbin/install-info --delete /usr/share/info/wget.info.gz /usr/share/info/dir || : fi <br><br> == 特定のパッケージのチェック == <code>-V</code>または<code>--verify</code>オプションは、指定したパッケージに含まれるファイルの変更や損傷を検査する際に使用する。<br> rpm -V <パッケージ名> <br> パッケージの検査では、 パッケージ内のインストールされたファイルの情報と、rpmデータベースに格納されているパッケージのメタデータから得られたファイルの情報を比較する。<br> <br> 例えば、ファイルのサイズ、 所有者、グループ等を比較する。<br> 問題がある場合には、問題に応じて文字が出力されるため、その出力結果から、ファイルの整合性に関する問題を識別し、ファイルを元の状態に戻すか、変更を許可するか等を判断する。<br> <br><br> == RPMファイルの展開 == rpmコマンドの問い合わせ機能は、インストールしたファイルが対象となるため、<br> インストール前にRPMファイルにどのようなファイルが含まれているかを調べたり、一部のファイルを取り出したりすることはできない。<br> <br> インストール前に上記のようなことを行う場合、RPMパッケージをcpio形式のアーカイブファイルに変換して、ファイルの一覧を表示・展開すればよい。<br> <br> RPMファイルをcpioファイルに変換するには、rpm2cpioコマンドを使用する。<br> また、cpio形式のアーカイブファイルから、ファイルを展開およびファイルの一覧を表示するにはcpioコマンドを使用する。<br> # RPMファイルの一覧の表示 rpm2cpio <ファイル名>.rpm | cpio --list # RPMファイルの展開 rpm2cpio <ファイル名>.rpm | cpio -id <br><br> == rpmdev-extractコマンドの使用 == 上記の方法では、ファイル形式の変換処理が発生するため、入力するコマンドが長くなる。<br> RPMファイルを展開するだけであれば、rpmdev-extractコマンドを使用した方が簡単である。<br> <br> rpmdev-extractコマンドは、rpmdevtoolsというパッケージに含まれている。<br> 以下のコマンドを実行して、rpmdevtoolsをインストールする。<br> # RHEL sudo dnf install rpmdevtools <br> rpmdev-extractコマンドは、引数で指定されたRPMファイルを展開する。<br> rpmdev-extract <RPMファイル> <br><br> {{#seo: |title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki |keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板 |description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux |image=/resources/assets/MochiuLogo_Single_Blue.png }} __FORCETOC__ [[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]]
Linuxコマンド - RPMコマンド
に戻る。
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
Collapse