rpmコマンド備忘録(問い合わせ系)
とりあえずここに書いたことは書かない.
問い合わせは-qを基本で.個人的にはバッチを書くときとか記録に残すときには--queryとか長いオプションを使うほうが後で察しやすいのでお勧め.
あと-pをつけるとインストールしていなくても調べることができます(-pつけたときはファイル名で.つけなければインストールされたパッケージ名などを指定します)。
パッケージに含まれる設定ファイル群の表示
フルパス名だけ.
$ rpm -q --configfiles bind /etc/logrotate.d/named /etc/named.conf /etc/named.rfc1912.zones /etc/rndc.conf /etc/rndc.key /etc/sysconfig/named /var/named/named.ca /var/named/named.empty /var/named/named.localhost /var/named/named.loopback
ls -la並みの粒度の情報で
$ rpm -qv --configfiles bind -rw-r----- 1 root named 163 1月 8 23:21 /etc/logrotate.d/named -rw-r----- 1 root named 793 6月 30 2008 /etc/named.conf -rw-r----- 1 root named 931 6月 21 2007 /etc/named.rfc1912.zones -rw-r----- 1 root named 0 1月 8 23:21 /etc/rndc.conf -rw-r----- 1 root named 0 1月 8 23:21 /etc/rndc.key -rw-r--r-- 1 root root 602 1月 8 23:21 /etc/sysconfig/named -rw-r----- 1 root named 1892 2月 18 2008 /var/named/named.ca -rw-r----- 1 root named 129 6月 21 2007 /var/named/named.empty -rw-r----- 1 root named 152 6月 21 2007 /var/named/named.localhost -rw-r----- 1 root named 145 6月 21 2007 /var/named/named.loopback
- qvv(-vをもう一個追加の意味)でコマンドrpmの内部動作も表示できるお.
%configとかの情報も知りたいんだけどなー今度調べる
ドキュメント一覧の表示
いわゆるテキストドキュメントとかmanのファイルとか.
$ rpm -q --docfiles bind /usr/share/doc/bind-9.5.1/CHANGES /usr/share/doc/bind-9.5.1/COPYRIGHT /usr/share/doc/bind-9.5.1/Copyright /usr/share/doc/bind-9.5.1/README /usr/share/doc/bind-9.5.1/arm/Bv9ARM-book.xml (snip) /usr/share/man/man8/named-compilezone.8.gz /usr/share/man/man8/named.8.gz /usr/share/man/man8/rndc-confgen.8.gz /usr/share/man/man8/rndc.8.gz
これも-qvとかするとls -la風
パッケージ操作時に実行されるスクリプトの表示
preinstall | ファイル配置前に実行する |
postinstall | ファイル配置後にに実行する |
preuninstall | ファイル削除前に実行する |
postuninstall | ファイル削除後に実行する |
アップデートはuninstall && installなことに注意.
$1に1が渡されるんだっけ? って大小比較もしてるな.これは知らなかった.おいおい調べる.
$ rpm -q --scripts bind preinstall scriptlet (using /bin/sh): if [ "$1" -eq 1 ]; then /usr/sbin/groupadd -g 25 -f -r named >/dev/null 2>&1 || :; /usr/sbin/useradd -u 25 -r -n -M -g named -s /sbin/nologin -d /var/named -c Named named >/dev/null 2>&1 || :; fi; :; postinstall scriptlet (using /bin/sh): /sbin/ldconfig /sbin/chkconfig --add named if [ "$1" -eq 1 ]; then if [ ! -e /etc/rndc.key ]; then /usr/sbin/rndc-confgen -a > /dev/null 2>&1 fi [ -x /sbin/restorecon ] && /sbin/restorecon /etc/rndc.* /etc/named.* >/dev/null 2>&1 ; # rndc.key has to have correct perms and ownership, CVE-2007-6283 [ -e /etc/rndc.key ] && chown root:named /etc/rndc.key [ -e /etc/rndc.key ] && chmod 0640 /etc/rndc.key [ -x /usr/sbin/bind-chroot-admin ] && /usr/sbin/bind-chroot-admin --sync; fi :; preuninstall scriptlet (using /bin/sh): if [ "$1" -eq 0 ]; then /sbin/service named stop >/dev/null 2>&1 || :; /sbin/chkconfig --del named || :; fi; :; postuninstall scriptlet (using /bin/sh): /sbin/ldconfig if [ "$1" -ge 1 ]; then /sbin/service named try-restart >/dev/null 2>&1 || :; fi; :;
その他
備忘録なのでもしかしたら追記していくかも.