Suse: Restaurar lista de pacotes de / var / adm / backup / rpmdb / Packages-20160323 .gz

2

No Suse-Linux, você tem gzps de backups do rpmdb: link

Mas como posso obter a lista de todos os pacotes instalados deste arquivo?

Se eu descompactar, é esse tipo de arquivo:

file Packages-20160323 
Packages-20160323: Berkeley DB (Hash, version 8, native byte-order)

Eu tentei rpm --dbpath , mas essa opção quer um diretório e não um berkley-db-file ....

    
por guettli 23.03.2016 / 08:53

1 resposta

2

Eu encontrei esta solução:

#!/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

Agora posso ver as diferenças:

vimdiff /var/tmp/rpmdb-restore-Packages-20150625/qa.list /var/tmp/rpmdb-restore-Packages-20160311/qa.list
    
por 23.03.2016 / 09:35