PHP 7.4.33
Preview: rpmdb_loadcvt Size: 1.43 KB
//usr/lib/rpm/rpmdb_loadcvt

#!/bin/bash

ac=$#
cmd=`basename $0`

rpmdb=/var/lib/rpm
dbfiles="`/bin/ls -1 $rpmdb/*`"
dbdump=/usr/lib/rpm/rpmdb_dump
dbload=/usr/bin/db_load

set `$dbdump -V` || {
    echo "The file $dbdump, usually in the rpm-devel package, is needed."
    echo " Please install the rpm-devel package and retry $cmd."
    exit 1
}
dumpfmt="${5%%:}"

set `$dbload -V` || {
    echo "The file $dbload, usually in the db4-utils package, is needed."
    echo " Please install the db4_utils package and retry $cmd."
    exit 1
}
loadfmt="${5%%:}"

[ "$dumpfmt" = "$loadfmt" ] && {
    echo "Both $dbdump and $dbload use db-$loadfmt format."
    echo "No conversion is possible."
    exit 0
}

[ "$ac" != "0" -o "`/usr/bin/id -u`" != "0" ] && {
    echo "$cmd: Convert $rpmdb files to db-$loadfmt format."
    echo "$cmd: Must be run as root, takes no arguments."
    exit 1
}

echo "Converting to db-$loadfmt compatible format (1-10 minutes per file) ..."

dbfile=
trap "
    [ -n "$dbfile" ] && {
	[ -f $dbfile-O ] && /bin/mv $dbfile-O $dbfile
	/bin/rm -f $dbfile-N
    }
    exit 1
" 1 2 3 15

rm -f $rpmdb/__db*

for dbfile in $dbfiles
do
    echo " `/usr/bin/file $dbfile`"

    $dbdump $dbfile | $dbload $dbfile-N || {
	echo "Failed conversion:"
	echo "    $dbdump $dbfile | $dbload $dbfile-N"
	echo "Cleaning up and exiting ..."
	/bin/rm -f $dbfile-N
	exit 1
    }

    /bin/mv $dbfile $dbfile-O
    /bin/mv $dbfile-N $dbfile
    /bin/rm -f $dbfile-O
done

echo "Done!"

exit 0

Directory Contents

Dirs: 4 × Files: 23

Name Size Perms Modified Actions
fileattrs DIR
- drwxr-xr-x 2025-01-08 05:07:24
Edit Download
macros.d DIR
- drwxr-xr-x 2025-04-24 05:09:22
Edit Download
platform DIR
- drwxr-xr-x 2024-12-17 04:11:02
Edit Download
redhat DIR
- drwxr-xr-x 2025-04-02 05:08:30
Edit Download
1.77 KB lrwxr-xr-x 2017-08-25 08:23:02
Edit Download
3.04 KB lrwxr-xr-x 2017-08-25 08:23:02
Edit Download
468 B lrwxr-xr-x 2023-04-06 08:55:45
Edit Download
682 B lrwxr-xr-x 2023-04-06 08:55:45
Edit Download
42.96 KB lrw-r--r-- 2024-12-17 04:11:02
Edit Download
634 B lrw-r--r-- 2024-12-17 04:11:01
Edit Download
921 B lrwxr-xr-x 2023-03-31 15:44:53
Edit Download
10.92 KB lrwxr-xr-x 2023-03-31 15:44:53
Edit Download
296 B lrw-r--r-- 2024-12-17 04:11:01
Edit Download
61 B lrw-r--r-- 2024-12-17 04:11:01
Edit Download
688 B lrw-r--r-- 2024-12-17 04:11:01
Edit Download
1.22 KB lrwxr-xr-x 2024-12-17 04:11:01
Edit Download
16.51 KB lrwxr-xr-x 2021-09-21 16:38:10
Edit Download
28.61 KB lrwxr-xr-x 2021-09-21 16:38:10
Edit Download
1.43 KB lrwxr-xr-x 2024-12-17 04:11:01
Edit Download
16.51 KB lrwxr-xr-x 2021-09-21 16:38:10
Edit Download
16.48 KB lrwxr-xr-x 2021-09-21 16:38:10
Edit Download
12.45 KB lrwxr-xr-x 2021-09-21 16:38:10
Edit Download
16.46 KB lrwxr-xr-x 2021-09-21 16:38:10
Edit Download
11.20 KB lrw-r--r-- 2024-12-17 04:11:02
Edit Download
16.75 KB lrw-r--r-- 2024-12-17 04:11:02
Edit Download
254 B lrwxr-xr-x 2017-08-25 08:23:02
Edit Download
929 B lrwxr-xr-x 2024-12-17 04:11:01
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).