rpmコマンド

はじめに

rpmコマンドの覚書。

rpmパッケージ自体は以下から取ってくるなどする必要あり。

https://access.redhat.com/downloads/content/package-browser

参照

### rpmの一覧表示
[root@my-instance ~]# rpm -qa | grep instantclient
oracle-instantclient19.20-sqlplus-19.20.0.0.0-1.x86_64
oracle-instantclient19.20-basic-19.20.0.0.0-1.x86_64

### 特定のrpmの情報を表示
[root@my-instance ~]# rpm -qi oracle-instantclient19.20-sqlplus-19.20.0.0.0-1.x86_64
Name        : oracle-instantclient19.20-sqlplus
Version     : 19.20.0.0.0
Release     : 1
Architecture: x86_64
Install Date: Mon 09 Oct 2023 04:05:22 AM GMT
Group       : Applications/File
Size        : 3270531
License     : Oracle
Signature   : (none)
Source RPM  : oracle-instantclient19.20-sqlplus-19.20.0.0.0-1.src.rpm
Build Date  : Sat 15 Jul 2023 04:34:07 AM GMT
Build Host  : phxdbfak28.dev3farm1phx.databasede3phx.oraclevcn.com
Relocations : (not relocatable)
Packager    : Nobody <nobody@oracle.com>
Vendor      : Oracle Corporation
URL         : https://www.oracle.com/
Summary     : Oracle Instant Client SQL*Plus package
Description :
The Oracle Instant Client SQL*Plus package provides the SQL*Plus command line tool for executing SQL and PL/SQL statements in Oracle Database.

### パッケージの配置ディレクトリを表示
[root@my-instance ~]# rpm -ql oracle-instantclient19.20-sqlplus-19.20.0.0.0-1.x86_64
/usr/bin/sqlplus
/usr/bin/sqlplus64
/usr/lib/oracle
/usr/lib/oracle/19.20
/usr/lib/oracle/19.20/client64
/usr/lib/oracle/19.20/client64/bin
/usr/lib/oracle/19.20/client64/bin/sqlplus
/usr/lib/oracle/19.20/client64/lib
/usr/lib/oracle/19.20/client64/lib/glogin.sql
/usr/lib/oracle/19.20/client64/lib/libsqlplus.so
/usr/lib/oracle/19.20/client64/lib/libsqlplusic.so
/usr/share/oracle
/usr/share/oracle/19.20
/usr/share/oracle/19.20/client64
/usr/share/oracle/19.20/client64/doc
/usr/share/oracle/19.20/client64/doc/SQLPLUS_LICENSE
/usr/share/oracle/19.20/client64/doc/SQLPLUS_README

変更

### パッケージをインストールする
$ rpm -ivh パッケージファイル名

### パッケージを更新する
$ rpm -Uvh パッケージファイル名

### パッケージをアンインストールする
$ rpm -evh パッケージ名 

yum,dnfとの違い

  • rpmが、パッケージを自分で適用する、依存関係にあるパッケージが不足した場合は自分で取ってくる、という動きだったのに対し、
  • yum(とのその後継のdnf)は、リポジトリを登録しておけば、パッケージはそこから自動で取得する、依存関係にあるパッケージもまとめて取得してきてくれる、

というイメージ。