Les fichiers pour installer le serveur NALC.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

67 lines
1.4KB

  1. #!/bin/bash
  2. # Author: Sys4
  3. # Licence: GPLv3
  4. serverpath=/home/minetest/nalc-stable
  5. world=nalc-stable
  6. world_file=all # news|technic|fbn|fbnp|bitchange|christmas|randommsg
  7. branch=stable # 1.0|1.1|dev
  8. bak=0
  9. update=0
  10. restart=0
  11. usage() {
  12. echo "usage: ./shutdown.sh [-h|--help] [-r|--restart] [-b|--bak] [-u|--update]"
  13. echo "Options:"
  14. echo -e "\t-h --help\tAffiche cette aide."
  15. echo -e "\t-r --restart\tRedémarre le serveur après arrêt."
  16. echo -e "\t-b --bak\tRéalise une sauvegarde après arrêt."
  17. echo -e "\t-u --update\tRéalise une mise à jour après arrêt."
  18. exit 0
  19. }
  20. action() {
  21. kill -s TERM $(pidof minetestserver)
  22. sleep 10
  23. kill -s TERM $(pidof -x $serverpath/start.sh)
  24. [[ $bak -eq 1 ]] && $serverpath/backup.sh
  25. [[ $update -eq 1 ]] && $serverpath/upgrade.sh -s $serverpath -m -w $world -b $branch -f $world_file
  26. [[ $restart -eq 1 ]] && $serverpath/start.sh&
  27. exit 0
  28. }
  29. # Pas de paramètre
  30. #[[ $# -lt 1 ]] && error
  31. # ou
  32. [[ $# -lt 1 ]] && action
  33. # -o : Options courtes
  34. # -l : options longues
  35. OPT=$(getopt -o b,r,h,u -l bak,restart,help,update -- "$@")
  36. # éclatement de $options en $1, $2...
  37. set -- $OPT
  38. while true; do
  39. case "$1" in
  40. -b|--bak)
  41. bak=1
  42. shift;;
  43. -r|--restart)
  44. restart=1
  45. shift;;
  46. -h|--help)
  47. usage;;
  48. -u|--update)
  49. update=1
  50. shift;;
  51. --)
  52. shift;;
  53. *)
  54. action
  55. shift;;
  56. esac
  57. done