|
Server IP : 87.107.10.74 / Your IP : 216.73.216.213 Web Server : LiteSpeed System : Linux box401.parsvds.com 4.18.0-553.30.1.lve.el8.x86_64 #1 SMP Tue Dec 3 01:21:19 UTC 2024 x86_64 User : aubxzmbu ( 3121) PHP Version : 7.4.33 Disable Function : exec,shell_exec,system,passthru,popen,eval,proc_close,proc_open,pcntl_exec,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_getpriority,pcntl_setpriority MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/../../lib/rpm/ |
| [ Home ] | [ C0mmand ] | [ Upload File ] |
|---|
#!/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