You probably need a script for this... at least I do. > #!/bin/ksh > > DOIT() > { > START=`date "+%d%b%y @ %T"` > echo "### RPM status started on $START, output file = $FN" > echo "+ rpm -qa > /root/RPM-qa" > rpm -qa > /root/RPM-qa > echo "+ sort < /root/RPM-qa > /root/RPM-qa.sorted" > sort < /root/RPM-qa > /root/RPM-qa.sorted > echo "+ cat /root/RPM-qa.sorted | xargs -l1 rpm -qi | grep \"^Name :\" | awk '{ print \$3 }' > /root/RPM-qa.sorted.basenames" > cat /root/RPM-qa.sorted | xargs -l1 rpm -qi | grep "^Name :" | awk '{ print $3 }' > /root/RPM-qa.sorted.basenames > echo "+ uniq < /root/RPM-qa.sorted.basenames > RPM-qa.sorted.basenames.uniq" > uniq < /root/RPM-qa.sorted.basenames > RPM-qa.sorted.basenames.uniq > echo "+ diff /root/RPM-qa.sorted.basenames RPM-qa.sorted.basenames.uniq" > diff /root/RPM-qa.sorted.basenames RPM-qa.sorted.basenames.uniq > echo > echo > echo "### Verifying individual packages:" > > for i in `cat /root/RPM-qa.sorted` > do > j=`echo $i | xargs -l1 rpm -qi | grep "^Name :" | awk '{ print $3 }'` > echo "+ rpm -V $j # ($i)" > rpm -V $j > done > echo > echo > echo "### Non-RPM files:" > OF=`mktemp /tmp/list.XXXXXX` > > echo "+ rpm -qal | sort | uniq > $OF.rpm" > rpm -qal | sort | uniq > $OF.rpm >> echo "+ find / -print | sort > $OF.find" >> find / -print | sort > $OF.find > echo "+ diff $OF.rpm $OF.find | grep '^>' " > diff $OF.rpm $OF.find | grep '^>' > rm $OF.rpm $OF.find $OF > > END=`date "+%d%b%y @ %T"` > echo "### DONE: RPM status started on $START, finished on $END, output file = $FN" > } > > # MAIN Main main > > FN=/root/CHECK_rpm-V/CHECK_rpm-V.`date '+%d%b%y'` > if [ -f $FN ] > then FN=$FN.`date '+%H:%M'` > fi > export FN > > > DOIT | tee $FN > exit 0 Note that you may want to rewrite the 2 lines prefixed with ">>" to be something more like: >> echo "+ find / -print | egrep -v '^/dev|^/home|^/proc|^/sys|^/tmp' | sort > $OF.find" >> find / -print | egrep -v '^/dev|^/home|^/proc|^/sys|^/tmp' | sort > $OF.find depending on your needs. And yeah... it'll take a while to run, too. Hope this helps, -S David Timms wrote: > > Anybody got some good ideas for listing every file on disk that is: > 1. modified from default rpm install {eg config files} > 2. not installed by any rpm > 3. is a config file for a service - eg. web server /etc/httpd/conf.d/ > and so on > 4. is user data, config, files. > ? > > The purpose is to determine, say before an upgrade, what files need to > be backed up. > > locate / will give me all files on disk. > rpm -qfa will list all files installed by rpm > rpm -Va will tell files changed from what rpm installed. > > Is there a tool that combines the above already ? > > DaveT. >