add README.md

This commit is contained in:
Marko Oldenburg
2019-06-05 10:39:54 +02:00
parent eb7b661058
commit 111d85d6d0
2 changed files with 123 additions and 108 deletions

112
doc/README.md Normal file
View File

@ -0,0 +1,112 @@
# backupME
### Voraussetzungen
- minimum Perl > 5.12 erwartet
- die Konsolenprogramme tar und bzip2
- optional für den MySQL Dump das Programm mysqldump
- optional für CleanUp das Programm find
- für das senden an FHEM wird eine passwortlose telnet Instanz benötigt
Alle Abhängikeiten werden vor dem eigentlichen Start geprüft. Die optionalen werden nur bei aktiver Verwendung überprüft.
### Anwenden
```
backupME.pl backupME.conf
```
Es ist möglich mehrere Konfigurationsdateien an zu legen und backupME zu übergeben.
```
/usr/local/bin/backupME.pl -c /usr/local/etc/backupME_FHEM.conf
/usr/local/bin/backupME.pl --configs /usr/local/etc/backupME_DOKUWIKI.conf
/usr/local/bin/backupME.pl -c /usr/local/etc/backupME_FHEM.conf,/usr/local/etc/backupME_DOKUWIKI.conf
/usr/local/bin/backupME.pl --configs /usr/local/etc/backupME_FHEM.conf,/usr/local/etc/backupME_DOKUWIKI.conf
/usr/local/bin/backupME.pl --configfiles /usr/local/etc/backupME_FHEM.conf,/usr/local/etc/backupME_DOKUWIKI.conf
```
Da ein Backup zu meist Abends oder in der Nacht alleine laufen soll/kann, empfehle ich einen Eintrag in der crontab. Also das einrichten eines Cronjobs
### Konfiguration
#### wie soll das Verzeichnis heißen wo die Backups hin geschrieben werden
BACKUPDIRNAME=fhem_backups
#### Name der Backupdatei
BACKUPFILENAME=fhem_backup
#### Startverzeichnis wo Daten liegen zum sichern
SOURCEPATH=/opt/fhem/backup
#### Dateien Komma getrennt welche gesichert werden sollen. Kann auch zum Beispiel mittels *.md oder * fur alles lauten. Muss sich aber unterhalb von SOURCEPATH befinden
FILES_TO_BACKUP=FHEM-"`date +%Y%m%d`"*.tar.gz
#### Verzeichnis unter welches die Backupstruktur aufgebaut werden soll.
BACKUPPATH=/home/marko/Google_Drive_Secure/pi-webapp01_BACKUPS
#### wie viele Backups sollen aufgehoben werden.
DAILY_DATA_BACKUPS=6
### Special Konfiguration
#### Soll bei nicht vorhanden sein des Backupverzeichnis das Skript abgebrochen werden. Sinnvoll bei encfs oder eingebundenen Netzwerkverzeichnissen. 0 nein 1 ja
SPECIALCHECK_BACKUPPATH=1
#### # Verzeichnisse oder Dateien unterhalb von SOURCEPATH, welche aufgeräumt werden sollen. Löschen aller Daten älter CLEAN_UP_DAYS Tage. Kommasepariert
CLEAN_UP_PATHS=/*
#### löschen älter X Tage
CLEAN_UP_DAYS=4
#### soll das Ergebnis des Backups (ok|error) in ein FHEM Dummy geschrieben werden? 0 nein 1 ja. telnet Instanz muss ohne SSL und Passwort vorhanden sein
FHEMSUPPORT=1
#### Name des FHEM Dummys für das schreiben des Ergebnisses
FHEMDUMMY=dummyBackupScript
FHEMHOST=
TELNETPORT=
### MySQL DB Dumps
#### soll ein MYSQL Dump erstellt werden 0 nein 1 ja
MYSQLDUMP=0
#### Datenbank User
DBUSER=
#### Datenbank User Passwort
DBPASS=
#### Instanzname der Datenbank
DBNAMES=fhemLogHistory
#### wo soll der Dump hingeschrieben werden
DBBACKUPPATH=/opt/fhem/backup
### Konfigurationsbeispiel:
```
BACKUPDIRNAME=fhem_backups
BACKUPFILENAME=fhem_backup
SOURCEPATH=/opt/fhem/backup
FILES_TO_BACKUP=FHEM-"`date +%Y%m%d`"*.tar.gz
BACKUPPATH=/home/marko/Google_Drive_Secure/pi-webapp01_BACKUPS
DAILY_DATA_BACKUPS=6
SPECIALCHECK_BACKUPPATH=1
CLEAN_UP_PATHS=/opt/fhem/backup/*
CLEAN_UP_DAYS=4
FHEMSUPPORT=1
FHEMDUMMY=dummyBackupScript
MYSQLDUMP=0
DBUSER=
DBPASS=
DBNAMES=fhemLogHistory
DBBACKUPPATH=/opt/fhem/backup
```