Advertisement
PiXLFAIL

backup.sh

Aug 4th, 2024
283
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.55 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # Definiere Variablen
  4. SCREEN_NAME="minecraft-console"  # Name des Screen-Fensters
  5. BACKUP_DIR="/home/ivan/minecraft/backup"  # Verzeichnis für Backups
  6. WORLD_DIR="/home/ivan/minecraft/worlds"  # Verzeichnis der Welten
  7.  
  8. # Erstelle ein Backup-Ordner mit dem aktuellen Datum
  9. DATE=$(date +"%Y%m%d")
  10. BACKUP_PATH="$BACKUP_DIR/Feriencamp_2_$DATE"
  11.  
  12. # Gehe in das Weltverzeichnis
  13. cd "$WORLD_DIR" || exit
  14.  
  15. # Informiere den Benutzer über den Start des Backups
  16. echo "Starte Backup-Prozess für die Minecraft-Welten..."
  17. echo "Erstelle ein Backup-Verzeichnis: $BACKUP_PATH"
  18.  
  19. # Erstelle das Backup-Verzeichnis, falls es nicht existiert
  20. mkdir -p "$BACKUP_PATH"
  21.  
  22. # Stoppe den Server und mache ein Backup
  23. echo "Speichere die Welt..."
  24. screen -S "$SCREEN_NAME" -p 0 -X stuff "save-all$(echo -ne '\r')"
  25. sleep 5  # Warte kurz, damit der Speicherprozess abgeschlossen wird
  26.  
  27. echo "Stoppe den Server..."
  28. screen -S "$SCREEN_NAME" -p 0 -X stuff "stop$(echo -ne '\r')"
  29.  
  30. # Warte, bis der Server stoppt
  31. sleep 10  # Wartezeit, um sicherzustellen, dass der Server komplett gestoppt ist
  32.  
  33. # Kopiere die Welten in das Backup-Verzeichnis
  34. echo "Kopiere die Welten in das Backup-Verzeichnis..."
  35. cp -r "$WORLD_DIR"/* "$BACKUP_PATH"
  36.  
  37. # (Optional: Füge hier eventuell weitere Dateien hinzu, die du sichern möchtest)
  38.  
  39. # Starte den Server wieder
  40. echo "Starte den Minecraft-Server erneut..."
  41. cd /home/ivan/minecraft/server || exit
  42. screen -mdS "$SCREEN_NAME" java -Xmx12G -Xms12G -jar minecraftedu_server.jar nogui
  43.  
  44. echo "Backup abgeschlossen und der Server läuft wieder."
  45.  
  46.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement