Cent OSが5.4になったのを機会に、yumのアップデートで放置されていた、rpmnew、rpmsaveファイルの確認をすることにした。
まず、rpmnew、rpmsaveファイルの洗い出し。
# find / -print | egrep "rpmnew$|rpmsave$" >foo
変更内容確認と、同時に必要なら修正
# chkrpm foo
chkrpmは自作のdiffを実行するperlスクリプト
#! /usr/bin/perl
while(<>) {
chop;
if ($_ =~ /rpmnew$/) {
$RPMNEW = $_;
$RPMNEW =~ s/.rpmnew$//;
system "diff -c $RPMNEW $_|lv";
} elsif ($_ =~ /rpmsave$/) {
$RPMNEW = $_;
$RPMNEW =~ s/.rpmsave$//;
system "diff -c $_ $RPMNEW|lv";
}
}
これで先に現れるのが、現在の設定ファイル
rmpnewについては、変更行が!で、自分が追加していたと思われる行が"-"で、(まだ追加していないが)新規に追加するべき行が"+"で表示される。
rmpsaveについては、変更行が!で、自分が追加していたと思われる(削除された)行が"-"で、新規に追加された行が"+"で表示される。
最後にrmpnewとrpmsaveファイルを削除。
# cat foo | xargs -t rm
今回のrpmnewファイルによる修正事項は以下のもの。
/etc/dovecot.conf
セキュリティホールになりうる以下のパラメータを削除。valid_chroot_dirs = /home
以下のパラメータを追加。
auth default {
mechanisms = plain
}
/etc/smartd.conf
rpmnewのものに入れ替え。/etc/yum.d/CentOS-Base.repo
gpgkeyがローカルのファイルを使うようになっていたので修正。gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5