Was ist mcctl?
mcctl installiert und betreibt Minecraft-Server auf Debian 12 (bookworm) und 13 (trixie) sowie Ubuntu 22.04 (jammy) und 24.04 (noble). Ein einziger Befehl deckt alle gängigen Servertypen ab, wahlweise nativ als systemd-Dienst oder in Docker. Ohne Parameter startet ein Assistent, der durch die Einrichtung führt.
Das Tool ist in Python geschrieben und kommt ohne zusätzliche Bibliotheken aus. Die passende Java-Version (Eclipse Temurin) installiert mcctl automatisch, mehrere Java-Versionen können parallel existieren.
Unterstützte Servertypen
- Vanilla, Paper, Purpur, Folia, Spigot (Spigot wird per BuildTools kompiliert)
- Fabric, Quilt, Forge, NeoForge (Forge ab 1.12.2, NeoForge inklusive neuem Versionsschema ab 26.1)
- Modrinth-Modpacks als .mrpack-Datei, URL oder Slug
- CurseForge-Modpacks und beliebige Serverpack-ZIPs (FTB, ATM usw.)
- Velocity und BungeeCord als Proxy
- Bedrock Dedicated Server (nur amd64)
- Eigene JARs per URL oder Datei
Funktionen
- Nativ oder Docker: Nativ läuft jeder Server als eigener systemd-Dienst mit Logs im Journal. Im Docker-Modus nutzt mcctl die bewährten itzg-Images.
- Modpacks ohne Handarbeit: mcctl installiert genau den Loader aus dem Pack, prüft alle Downloads per Prüfsumme und ergänzt fehlende Abhängigkeiten, die viele Packs fälschlich als clientseitig markieren.
- Updates: Server und Modpacks lassen sich aktualisieren. Welt, server.properties, OPs und Whitelist bleiben erhalten, vorher läuft automatisch ein Backup.
- Backups: zstd-komprimierte Archive, auf Wunsch täglich per systemd-Timer. Während des Backups wird das Speichern sauber pausiert, damit die Welt konsistent bleibt.
- Live-Konsole: Log und Eingabe in einem Fenster, inklusive Befehlsverlauf. Einzelne Befehle lassen sich auch direkt senden.
- Sauberes Herunterfahren: mcctl sendet den Stop-Befehl und wartet bis zu 180 Sekunden, bis die Welt vollständig gespeichert ist. Nach Abstürzen startet der Server automatisch neu.
- Härtung: Native Server laufen als eigener Systembenutzer mit systemd-Sandboxing und dürfen nur in ihr eigenes Verzeichnis schreiben.
- Komfort: Automatische Portvergabe, optionale Freigabe in ufw, Bash-Vervollständigung und ein Systemcheck per mcctl doctor.
Installation
Als Debian-Paket (empfohlen):
curl -fLO https://git.hexaho.st/OneAndOnlyMace/mcctl/-/releases/permalink/latest/downloads/mcctl_all.deb
sudo apt install ./mcctl_all.deb
Alternativ aus dem Quellcode:
git clone https://git.hexaho.st/OneAndOnlyMace/mcctl.git && cd mcctl
sudo ./install.sh
Danach den Assistenten starten:
sudo mcctl install
Beispiele
# Paper-Server mit 6 GB RAM, Port in ufw öffnen
mcctl install --name survival --type paper --memory 6G --accept-eula --open-firewall
# Modrinth-Modpack per Slug in Docker
mcctl install --name cobble --type mrpack --source cobblemon-fabric --mode docker --accept-eula
# Velocity-Proxy mit Paper-Backend
mcctl install --name proxy --type velocity --port 25565
mcctl install --name lobby --type paper --port 30001 --offline --accept-eula
Wichtige Befehle
mcctl list alle Instanzen mit Status
mcctl start|stop|restart <name>
mcctl console <name> Live-Konsole
mcctl update <name> Server oder Modpack aktualisieren
mcctl set <name> memory=8G Einstellungen ändern
mcctl backup <name> Backup erstellen
mcctl backup-schedule <name> on tägliches Backup aktivieren
mcctl restore <name> <datei> Backup wiederherstellen
Voraussetzungen und Einschränkungen
- Debian 12/13 oder Ubuntu 22.04/24.04 (auch Ableitungen wie Linux Mint), Root-Rechte
- Natives CurseForge funktioniert nur bei Packs mit offiziellem Serverpack, sonst Docker verwenden
- Forge vor 1.12.2 nur über Docker oder als Serverpack
- Velocity und BungeeCord legen ihre Konfiguration beim ersten Start an, Backends und Forwarding-Secret werden danach eingetragen
Lizenz
MIT. Minecraft ist eine Marke von Mojang/Microsoft. Mit --accept-eula wird die Minecraft-EULA akzeptiert.
Quellcode und Releases: https://git.hexaho.st/OneAndOnlyMace/mcctl
-
Version 1.2.0
-
TheMace -
29. Oktober 2026 um 15:43 -
0 Downloads
-