В Suse-Linux у вас есть gzip-архивы rpmdb: https://www.novell.com/documentation/suse91/suselinux-adminguide/html/ch02s03.html#sec:rpm.anfragen
Но как я могу получить список всех установленных пакетов из этого файла?
Если я разархивирую его, это будет этот тип файла:
file Packages-20160323
Packages-20160323: Berkeley DB (Hash, version 8, native byte-order)
Я попытался rpm --dbpath
но этим параметрам нужен каталог, а не файл berkley-db ....
Я нашел такое решение:
#!/bin/bash
# get-package-list-from-backup.sh
set -e
set -x
cd /var/adm/backup/rpmdb
for gzipfile in *.gz; do (
base=${gzipfile/.gz/}
dir=/var/tmp/rpmdb-restore-$base
mkdir $dir
cp $gzipfile $dir
cd $dir
gunzip $gzipfile; mv $base Packages
rpm --dbpath $dir -qa | sort > qa.list )
done
Теперь я вижу различия:
vimdiff /var/tmp/rpmdb-restore-Packages-20150625/qa.list /var/tmp/rpmdb-restore-Packages-20160311/qa.list