Minecraft Server
Hinweise: - Standardmäßig startet der Server mit 2 GB RAM (-Xmx2G -Xms1G). Kannst du im Service-File anpassen. - Autostart ist eingerichtet via systemd. - Unterstützt nur Debian/Ubuntu & CentOS/RHEL/Fedora. Andere müssten ergänzt werden. - Serverdateien liegen in /opt/minecraft.
Linux
SH
Other
v1.0.0
Script Code
#!/bin/bash
# Minecraft Server Installer mit Autostart
# Unterstützt: Debian/Ubuntu, CentOS/RHEL
set -e
# === OS-Prüfung ===
if [ -f /etc/os-release ]; then
. /etc/os-release
OS=$ID
else
echo "❌ Konnte OS nicht erkennen!"
exit 1
fi
echo "➡️ Betriebssystem erkannt: $OS"
# === Pakete installieren ===
case "$OS" in
ubuntu|debian)
sudo apt update
sudo apt install -y openjdk-21-jre-headless wget screen
;;
centos|rhel|fedora)
sudo yum install -y java-21-openjdk wget screen
;;
*)
echo "❌ Nicht unterstütztes OS: $OS"
exit 1
;;
esac
# === Minecraft User anlegen ===
if ! id "minecraft" &>/dev/null; then
sudo useradd -m -r -d /opt/minecraft -s /bin/bash minecraft
fi
cd /opt/minecraft
sudo -u minecraft mkdir -p /opt/minecraft
# === Neueste Minecraft Version abrufen ===
LATEST_JAR=$(wget -qO- https://launchermeta.mojang.com/mc/game/version_manifest.json | grep -oP '(?<="url": ")[^"]*' | head -n1)
SERVER_JAR_URL=$(wget -qO- $LATEST_JAR | grep -oP '(?<="server":\s*")[^"]*')
echo "➡️ Lade Minecraft Server von: $SERVER_JAR_URL"
sudo -u minecraft wget -O /opt/minecraft/server.jar $SERVER_JAR_URL
# === EULA akzeptieren ===
echo "eula=true" | sudo tee /opt/minecraft/eula.txt > /dev/null
# === Systemd Service erstellen ===
SERVICE_FILE=/etc/systemd/system/minecraft.service
sudo bash -c "cat > $SERVICE_FILE" <<EOF
[Unit]
Description=Minecraft Server
After=network.target
[Service]
WorkingDirectory=/opt/minecraft
User=minecraft
Restart=always
ExecStart=/usr/bin/java -Xmx2G -Xms1G -jar /opt/minecraft/server.jar nogui
[Install]
WantedBy=multi-user.target
EOF
# === Service aktivieren ===
sudo systemctl daemon-reexec
sudo systemctl enable minecraft
sudo systemctl start minecraft
echo "✅ Minecraft Server erfolgreich installiert!"
echo "➡️ Server läuft jetzt als Service: systemctl status minecraft"
echo "➡️ Dateien liegen in: /opt/minecraft"
Haftungsausschluss: Wir geben unser Bestes, alle Skripte zu überprüfen, können jedoch keine 100%ige Sicherheit garantieren. Die Nutzung erfolgt auf eigene Gefahr. Wir haben keinen Einfluss auf Inhalte von Drittanbietern.
Details
- Ersteller
- Florian Linde
- Veröffentlicht
- 27.8.2025
- Downloads
- 0
- Dateigröße
- 1.93 KB