/usr/sbin/bak2db is in 389-ds-base 1.3.7.10-1ubuntu1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | #!/bin/bash
. /usr/share/dirsrv/data/DSSharedLib
libpath_add "/usr/lib/x86_64-linux-gnu/dirsrv/"
libpath_add ""
libpath_add "/usr/lib/x86_64-linux-gnu"
libpath_add "/usr/lib/x86_64-linux-gnu"
export LD_LIBRARY_PATH
SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
usage()
{
echo "Usage: bak2db archivedir [-Z serverID] [-n backend] [-q] [-h]"
echo "Options:"
echo " archivedir - Directory where the archived backup is located"
echo " -n backend - Backend database name. Example: userRoot"
echo " -Z serverID - Server instance identifier"
echo " -q - Quiet mode - suppresses output"
echo " -h - Display usage"
}
if [ $# -lt 1 ] || [ $# -gt 7 ]
then
usage
exit 1
fi
case $1 in
-*)
usage
exit 1
;;
*)
archivedir=$1
shift
;;
esac
while getopts "hn:Z:qd:vi:a:SD:" flag
do
case $flag in
h) usage
exit 0;;
Z) servid=$OPTARG;;
n) args=$args" -n \"$OPTARG\"";;
q) args=$args" -q";;
d) args=$args" -d \"$OPTARG\"";;
v) args=$args" -v";;
D) args=$args" -D \"$OPTARG\"";;
i) args=$args" -i \"$OPTARG\"";;
a) archivedir=$OPTARG;;
S) args=$args" -S";;
?) usage
exit 1;;
esac
done
shift $(($OPTIND - 1))
if [ $1 ]
then
echo "ERROR - Unknown option: $1"
usage
exit 1
fi
initfile=$(get_init_file "/etc/default" $servid)
if [ $? -eq 1 ]
then
usage
echo "You must supply a valid server instance identifier. Use -Z to specify instance name"
echo "Available instances: $initfile"
exit 1
fi
. $initfile
if [ 1 = `expr $archivedir : "\/"` ]
then
archivedir=$archivedir
else
# relative
archivedir=`pwd`/$archivedir
fi
eval /usr/sbin/ns-slapd archive2db -D $CONFIG_DIR -a $archivedir $args
|