102.5標準
example-2.0-1.x86_64.rpmの内容を現在のディレクトリへ展開して調査する。
RPMデータベースへ登録せず、cpioアーカイブへ変換して取り出す。
適切なコマンドはどれか。
× 不正解
rpm2cpioはRPMアーカイブをcpioストリームへ変換して標準出力する。cpio -iへパイプすればインストールせずファイルを展開できる。
詳細解説
誤り
cpio example-2.0-1.x86_64.rpm | rpm2cpio -idmv変換と展開の入出力方向が逆であり、cpioの構文にも合わない。
変換方向と構文が逆である。
正しい
rpm2cpio example-2.0-1.x86_64.rpm | cpio -idmvRPMを標準出力のcpioストリームへ変換し、cpioで展開する。
正解。変換結果をcpioで展開する。
誤り
rpm -ivh example-2.0-1.x86_64.rpm | cpio -idmvrpm -iはパッケージをインストールし、cpioストリームを出力しない。
RPMを導入してしまう。
誤り
rpm -e example-2.0-1.x86_64.rpm | cpio -idmvrpm -eはパッケージ削除であり、アーカイブ展開ではない。
RPMを削除する操作である。
実際に確かめる
一時的な検証環境で実行できる例です。
rpm2cpio example.rpm | cpio -t期待される結果
RPM内のパス一覧。実在するRPMを一時ディレクトリで使う理解のポイント
- rpm2cpioは標準出力
- cpio -iで展開
- RPM DBへ登録しない
確認時の注意
- 確認環境: rpm2cpio 4.x公式仕様
基礎のおさらい
データベース非登録
単なる展開なのでパッケージ管理上のインストール状態にはならない。
安全な調査
未知のアーカイブは一時ディレクトリで一覧確認してから展開する。
問題IDKP-102-214
確認環境rpm2cpio 4.x公式仕様
最終技術確認2026-08-12
誤り・権利侵害を報告