# Tools Manual

"Tools" ist ein kleines Modul um Auto Tasks für Cache-/templates_c Ordner leeren, Datenbank-Tabellen zu warten und sessions zu bereinigen. Außerdem kann es auch Einfache (nur die Datenbank) sowie vollständige (Datenbank zzgl. TRUST, themes und uploads-Verzeichnis) Datensicherung vornehmen. Alle Funktionen kann man außerdem via Button-Klick herbeiführen oder als Cron Job laufen lassen. Danach kann die Datensicherung komplett via FTP an einen anderen Server übertragen werden.

## Index

- Kernfunktionen
- First Start
- Cron-Jobs
- Module upload
- Theme upload
- FTP-Backup einrichten
- E-Mail Benachrichtigungen
- Abschluss

## Kernfunktionen

- Optimierung, Reparatur und Analyse der Datenbank-Tabellen als Cron-Job und Autotask
- "templates_c" und "cache" Verzeichnis mittels Cron-Job oder Auto Task bereinigen
- Bereinigen der Sessions in einem Autotask
- Datenbank-Sicherung sowie volles Backup inklusive Trust und Uploads-Verzeichnis aus dem Backend oder via Cron-Job (Wahlweise mit FTP-Sicherung)

Folgende Voraussetzungen müssen für Tools erfüllt sein:

- ImpressCMS 1.3+
- PHP 5.3 oder 5.4

## Start-Hilfe

### Wie benutze ich die Tools

Die "Tools" sind kleine Helfer zur Wartung der Webseite oder auch als Unterstützung beim "basteln" und stellen dafür verschiedene Kleinigkeiten bereit:

- Optimierung, Reperatur und Analyze der Datenbank-Tabellen: Diese Funktion triggert auf allen icms-Tabellen die Abfragen "CHECK TABLE", "REPAIR TABLE", "ANALYZE TABLE" und "OPTIMIZE TABLE". Dies hält die ImpressCMS-Tabellen sauber und schnell ;-)
- "templates_c" und "cache" leeren: Leert beide Ordner vollständig. Im templates_c Ordner gerade kann sich im Laufe der Zeit viel ansammeln. Es erleichtert auch jedem das aufziehen einer neuen Seite.
- "sessions" bereinigen: Leert die Tabelle "sessions" vollständig.

Die Tools können einfach via Auto Tasks ausgeführt werden. Gehen Sie dazu bitte im ACP zu: System » System Tools » Auto Tasks. Dort finden Sie nach der Installation ein paar neue Auto Tasks. Letzten Endes entscheiden Sie, ob sie alle auf einmal ausführen wollen, oder ob Sie die Auto Tasks lieber seperat laufen lassen.

### Das Backup

Die Backup-Funktion gibt es in 2 Stufen:

- Datensicherung erstellen: Triggert ein vollständiges DB-Backup und speichert dieses gepackt in ein Zip-File im Trust-Verzeichnis unter «modules/tools/backup/db_backup.zip»
- Volle Datensicherung erstellen: Triggert ein vollständiges DB-Backup und speichert dieses mitsamt dem Trust-Pfad sowie dem Upload/Themes-Verzeichnis gepackt in ein Zip-File im Trust-Verzeichnis unter «modules/tools/backup/backup.zip» oder überträgt die Daten Via FTP auf einen anderen Server.

  ACHTUNG: Dies sollte NICHT aus dem Backend heraus ausgeführt werden, sondern als Cron-Job! Es gibt zwar auch die Möglichkeit, dies Via Button zu triggern, dies sollte aber wenn mit ausgeschaltetem FTP genutzt werden, aus Sicherheitsgründen.

## Cron Jobs

Cron-Jobs werden beim Webhoster eingerichtet, um Aufgaben automatisch vom Server ausführen zu lassen. Bei Backups ist das A: sicher(er) und B: weniger Ressourcen-Lastig wie ein Backup via Auto Task. Um den Cron-Job ausführen zu können bitte beim Webhost nachschauen. In das Ziel des Cronjobs muss die Url des gewüschten Jobs eingegeben werden und die Parameter: uname=user&password=password mit angehängt. Username und password bitte mit denen eines Users ersetzen, der administrativen Zugriff auf das Tools-Modul hat

www.meine-seite.de/modules/tools/include/cron/backup.php?uname=user&password=password Führt ein Datenbank-backup OHNE die Ordner Trust und uploads aus

www.meine-seite.de/modules/tools/include/cron/full_backup.php?uname=user&password=password Führt ein Datenbank-backup MIT den Ordner Trust, themes und uploads aus

www.meine-seite.de/modules/tools/include/cron/tools.php?uname=user&password=password Führt alle Tools aus

Wenn Probleme auftreten (z.B. nicht ausgeführter Cron), kann man jeweils noch "&debug=1" aufrufen

Je nach Server/Webhost kann man auch den Cron-Job via Console/SSH ausführen. in diesem Fall bisste die parameter in der gleichen Reihenfolge übergeben. (ssh user@localhost /path/to/my/root/modules/tools/include/cron/full_backup.php -username=user -password=password -debug=1). Bitte in diesem Fall in der Config einstellen, dass die Cron-Jobs nur via SSH laufen dürfen!

Für den Fall, dass die Cron-Jobs nicht via SSH ausgeführt werden können, wird empfohlen einen Verzeichnisschutz anzulegen! Beispieldateien sind im Ordner tools/include/cron/ enthalten. Einfach an die eigenen Daten angleichen und hochladen. Nicht vergessen, die Daten im Cron Job bei dem Webhoster mit anzugeben! Die meisten Webhoster bieten an, diesen Verzeichnisschutz zu generieren. Ansonsten nutzen Sie google.de ;-)

## Module hochladen

Die Modul-upload funktion kann genutzt werden, um Module zu installieren bzw. zu aktualisieren. Wenn man auf den Tab "Module/Themes hochladen" klickt, sollte man im Regelfall zum upload-Formular kommen. Ist der Modul-Ordner nicht beschreibbar und dies lässt sich nicht ändern erscheint eine Fehlermeldung und man muss erst die Berechtigungen angleichen. Dazu bitte ein FTP-Programm nutzen und die Rechte des Modul-Ordners angleichen.

Um Module hochladen zu können, müssen diese im Format "zip" gepackt sein. Diese Zip-Datei sollte:

- nur den Modul-Ordner des gewünschten Moduls enthalen ODER
- 1 Modul gepackt als /modules/modul-ordner

Bitte nicht mehrere Module zeitgleich packen! Nun das Modul über das Upload-Formular hochladen (dieser Vorgang kann je nach Modul-Größe auch etwas dauern) und anschließend dem Link folgen, um das Modul sofort zu installieren/aktualisieren.

Für den Fall, dass das Modul auch eine eigene Bibliothek enthält (Ordner "libraries") oder sonst einen zusätzlichen Orner wird dieser ignoriert!

## Themes hochladen

Die Theme-upload funktion kann genutzt werden, um Themes zu installieren bzw. zu aktualisieren. Wenn man auf den Tab "Module/Themes hochladen" klickt, sollte man im Regelfall zum upload-Formular kommen. Ist der Themes-Ordner nicht beschreibbar und dies lässt sich nicht ändern erscheint eine Fehlermeldung und man muss erst die Berechtigungen angleichen. Dazu bitte ein FTP-Programm nutzen und die Rechte des Themes-Ordners angleichen.

Um Themes hochladen zu können, müssen diese im Format "zip" gepackt sein. Diese Zip-Datei sollte:

- nur den Theme-Ordner des gewünschten Themes enthalen ODER
- 1 Theme gepackt als /themes/theme-ordner ODER
- Mehrere Themes gepackt als /themes/mehrere-theme-ordner

Beim hochladen bitte beachten, dass die Zip-Datei nicht über 2mb beträgt!

## FTP-Backup einrichten

Um ein FTP-Backup einzurichten, gehen Sie bitte zu den Einstellungen des Moduls und stellen FTP erlauben auf Ja, geben die URL zum FTP-Server an sowie einen Benutzer- Namen und Passwort. Der FTP-Pfad sollte direkt auf den Ordner führen, in dem das Backup abgelegt werden soll, als absoluter Pfad vom FTP-Login gesehen.

Volle Datenbank-Backups mit Trust und Upload-Verzeichnis sollten nun nach dem Backup auf den FTP-Server übertragen werden

## Benachrichtigung via E-Mail

Das Modul schickt im Falle eines vollen Backups auch eine Benachrichtigung an die Admin-E-Mail in System » Konfiguration » Haupteinstellungen. Um diese E-Mail verschicken zu können bitte unter System » Konfiguration » Einstellungen » E-Mail-Setup die E-Mail-Konfiguration vornehmen.