Backup-Modul · Benutzeranleitung
Die ganze Installation sichern und im Notfall zurückholen
Das Backup-Modul sichert Deine FreeScout-Installation vollständig in eine Datei: die Datenbank, alle hochgeladenen Dateien und den Quelltext aller installierten Module. Aus dieser einen Datei lässt sich die Installation wiederherstellen — auch auf einem leeren Server, auf dem noch kein FreeScout liegt.
Du findest es in FreeScout unter Verwalten → Backup. Es braucht kein anderes Modul.

Was in einer Sicherung steckt
Ein Archiv enthält vier Dinge:
mysqldump — Tickets, Kunden, Einstellungen, alles.storage/app: Anhänge, Profilbilder, Logos, Tresorsymbole.Modules/, damit eine Wiederherstellung auf einem neuen Server nicht erst jedes Modul einzeln braucht.manifest.json hält fest, welche FreeScout-Fassung und welche Modulfassungen darin liegen.Dass der Modul-Quelltext mitkommt, ist Absicht. Ohne ihn müsstest Du auf dem neuen Server erst jedes Modul beschaffen, in der richtigen Fassung, mit dem richtigen Lizenzschlüssel — genau in dem Moment, in dem Du es am wenigsten brauchst.
FreeScout selbst ist nicht im Archiv. Es wird bei der Wiederherstellung in der Fassung geholt, die im Verzeichnis steht.
Sicherungen nach Plan
Unter Verwalten → Backup → Einstellungen legst Du fest, wann gesichert wird: täglich zu einer festen Uhrzeit, oder wöchentlich an beliebigen Wochentagen, jeder mit eigener Zeit.
Letzte N behalten räumt die ältesten Sicherungen von selbst weg. Eine Sicherung, die Du anpinnst, ist davon ausgenommen: sie zählt nicht mit und wird nie automatisch gelöscht. Das ist der Platz für den Stand vor einer grösseren Umstellung.
Zusätzlich nach draussen
Jede fertige Sicherung kann automatisch auf einen FTP- oder FTPS-Server geschoben werden, mit eigener Aufbewahrungsregel — Du kannst also lokal drei Sicherungen halten und auf dem entfernten Server dreissig.
Der Punkt daran: eine Sicherung, die nur auf demselben Server liegt wie das Original, hilft gegen einen Bedienfehler, aber nicht gegen einen Ausfall der Maschine. Verbindung testen prüft Zugang und Pfad, ohne eine Datei anzufassen.
Schlägt das Hochladen fehl, bleibt die lokale Sicherung davon unberührt und gültig. Der entfernte Kopiervorgang darf die Sicherung nicht mit sich nehmen.
Prüfen, bevor Du Dich darauf verlässt
Die Aktion Prüfen an einer Sicherung tut mehr, als in die Datei zu schauen. Sie packt das Archiv in einen Übungsordner aus, kontrolliert das Verzeichnis, zählt die Modulordner nach — und wenn der Datenbankbenutzer es darf, spielt sie den Datenbankabzug wirklich ein, in eine eigene Testdatenbank, die danach sofort wieder gelöscht wird.
Das ist der Unterschied zwischen «die Datei sieht heil aus» und «diese Sicherung lässt sich zurückspielen». Nichts davon berührt Deine laufende Installation.
Nimm Dir diesen Schritt einmal für die Sicherung, auf die Du im Ernstfall zurückgreifen würdest. Eine ungeprüfte Sicherung ist eine Hoffnung, keine Sicherung.
Zurückspielen, wenn FreeScout noch läuft
Dieser Weg gilt, solange Du Dich noch anmelden kannst.
- Wähle in der Übersicht das Archiv, oder lade eines aus einer älteren Installation hoch.
- Tippe zur Bestätigung den genauen Dateinamen ab, bei einem hochgeladenen Archiv das Wort
RESTORE. - Das Modul legt zuerst eine Sicherung des aktuellen Zustands an. Das ist nicht abschaltbar, und es ist der Grund, warum eine schiefgelaufene Wiederherstellung selbst wieder rückgängig zu machen ist.
- Danach werden Datenbank,
storage/appundModules/aus dem Archiv ersetzt. Die Seite zeigt den Fortschritt. - Melde Dich neu an und sieh unter
Verwalten→Modulenach, ob die Fassungen die erwarteten sind — der Stand aus dem Archiv gewinnt über den, der auf der Platte lag.
Der abgetippte Dateiname ist bewusst unbequem. Ein Bestätigungsfenster klickt man weg; einen Dateinamen tippt man nicht versehentlich ab.
Zurückspielen auf leerem Boden
Wenn FreeScout nicht mehr startet, oder Du auf einen neuen Server umziehst, brauchst Du keine laufende Installation. Es genügen das Archiv und die Datei kickstart.php, die Du auf der Backup-Seite herunterlädst.
Weder FreeScout noch die Module noch Composer müssen vorher da sein.
Der Reihe nach
Lege ein leeres Web-Verzeichnis und eine Datenbank bereit. Kopiere kickstart.php und das Archiv nebeneinander hinein — über SFTP oder SCP, nicht über den Browser: eine Sicherung ist meist mehrere hundert Megabyte gross und läuft im Browser in die Grenze für Dateigrössen.
Öffne dann kickstart.php im Browser. Der erste Schritt ist eine Zugangsprobe: das Skript schreibt eine Zufallsmarke in eine Datei neben sich und lässt Dich diese vorlesen. Wer wiederherstellt, hat Zugriff auf das Verzeichnis; ein Vorbeikommender hat ihn nicht.

Danach führt der Assistent durch sechs Schritte: Prüfung der Umgebung, Auswahl des Archivs, Beschaffung von FreeScout selbst, Datenbankzugang, Schlüssel und schliesslich die Wiederherstellung.
Beim Archivschritt nennt er, was drin ist, bevor etwas geschrieben wird: FreeScout-Fassung, Zeitpunkt der Sicherung, Grösse und jedes enthaltene Modul.

Zum Schluss lässt sich der Assistent selbst löschen, zusammen mit der Marke und seiner Zustandsdatei. Nimm dieses Angebot an: solange er da ist, liegt ein entpackter Datenbankabzug im Web-Verzeichnis.
Wenn etwas hängt
Ein Schritt, der lange dauert, hängt nicht. Der Assistent arbeitet in kurzen Abschnitten und wird erneut aufgerufen — er merkt sich, wie weit er gekommen ist. Das ist so gebaut, weil viele Hoster die Laufzeit eines Aufrufs begrenzen.
Lässt sich die Markendatei nicht schreiben, fehlen dem Webserver die Rechte im Verzeichnis. Das ist zuerst zu beheben; ein Assistent, der ohne seine Zugangsprobe liefe, wäre schlimmer.
Verschlüsselte Archive
Setzt Du unter Verwalten → Backup → Einstellungen ein Archivpasswort, wird jede weitere Sicherung als .fsback.enc geschrieben: dasselbe Archiv, aber vollständig mit AES-256-GCM verschlüsselt.
Weil es dann seinen eigenen Inhalt schützt, trägt es zusätzlich den APP_KEY in sich — den Schlüssel also, mit dem FreeScout Postfachpasswörter und Zugangsdaten in der Datenbank verschlüsselt. Für eine Wiederherstellung brauchst Du dann nur noch das Passwort.
| Ohne Passwort | Mit Passwort | |
|---|---|---|
Mit gewöhnlichem tar zu öffnen | ja | nein |
Enthält den APP_KEY | nein | ja |
| Wiederherstellung braucht | den APP_KEY, separat aufbewahrt | das Passwort |
| Verlorenes Geheimnis bedeutet | Zugangsdaten neu eintragen | keine Wiederherstellung |
| Schützt ein entwendetes Archiv | nein | ja |
Die unverschlüsselte Form ist nicht die schlechtere. Sie lässt sich mit jedem tar öffnen, auch ohne dieses Modul — und ein verlorenes Passwort kann sie nicht unbrauchbar machen. Die Verschlüsselung tauscht das gegen den Schutz eines Archivs, das den Server verlassen hat.
Und genau darum geht es: ein gestohlener FTP-Zugang, eine verlorene Festplatte, eine falsch freigegebene Ablage. Gegen den eigenen Server schützt sie nicht, denn die geplanten Sicherungen laufen ohne Dich — die Anwendung muss das Passwort also kennen.
Das Notfallblatt
Unter Verwalten → Backup → Einstellungen erzeugt Notfallblatt eine druckfertige Seite mit den Wiederherstellungsschritten. Sie richtet sich danach, welche Form Du benutzt:
APP_KEY wird gedruckt — denn ihn hält sonst nichts fest, und Papier im Tresor ist besser als nirgends.
Bewahre es dort auf, wo Du Verträge aufbewahrst — und nicht auf demselben Server.
Gut zu wissen
Eine Wiederherstellung ersetzt alles
Datenbank, storage/app und Modules/ werden vollständig durch den Inhalt des Archivs ersetzt. Nicht ergänzt, nicht zusammengeführt. Was seit der Sicherung entstanden ist, ist danach weg — deshalb die Sicherung des aktuellen Zustands als erster Schritt, und deshalb der abzutippende Dateiname.
Ein Passwortwechsel verschlüsselt nichts neu
Ältere Archive brauchen weiterhin das Passwort, mit dem sie geschrieben wurden, und das Modul führt bewusst keine Liste früherer Passwörter. Drucke nach einem Wechsel ein neues Notfallblatt und behalte das alte, bis die damit verschlüsselten Archive weggeräumt sind.
Was der Server mitbringen muss
tar, mysqldump und mysql müssen auf dem Server vorhanden sein — im üblichen FreeScout-Container sind sie es. Der FTP-Versand benutzt cURL und nicht die FTP-Erweiterung von PHP, die auf vielen Servern fehlt.