restoreconfig.in 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/bin/sh
  2. source @datadir@/@package_name@/data/DSSharedLib
  3. libpath_add "@libdir@/@package_name@/"
  4. libpath_add "@nss_libdir@"
  5. libpath_add "@libdir@"
  6. libpath_add "@pcre_libdir@"
  7. export LD_LIBRARY_PATH
  8. SHLIB_PATH=$LD_LIBRARY_PATH
  9. export SHLIB_PATH
  10. usage ()
  11. {
  12. echo "Usage: restoreconfig [-Z serverID] [-h]"
  13. echo "Options:"
  14. echo " -Z serverID - Server instance identifier"
  15. echo " -h - Display usage"
  16. }
  17. while getopts "Z:h" flag
  18. do
  19. case $flag in
  20. Z) servid=$OPTARG;;
  21. h) usage
  22. exit 0;;
  23. ?) usage
  24. exit 1;;
  25. esac
  26. done
  27. initfile=$(get_init_file "@initconfigdir@" $servid)
  28. if [ $? == 1 ]
  29. then
  30. usage
  31. echo "You must supply a valid server instance identifier. Use -Z to specify instance name"
  32. echo "Available instances: $initfile"
  33. exit 1
  34. fi
  35. servid=`normalize_server_id $initfile`
  36. . $initfile
  37. conf_ldif=`ls -1t @localstatedir@/lib/@PACKAGE_NAME@/slapd-$servid/bak/$servid-*.ldif 2>/dev/null | head -1 `
  38. if [ -z "$conf_ldif" ]
  39. then
  40. echo No configuration to restore in @localstatedir@/lib/@PACKAGE_NAME@/slapd-$servid/bak/ ; exit 1
  41. fi
  42. echo Restoring $conf_ldif...
  43. @sbindir@/ns-slapd ldif2db -D $CONFIG_DIR -i $conf_ldif -n NetscapeRoot 2>&1
  44. exit $?