187 lines
5.6 KiB
Text
187 lines
5.6 KiB
Text
ccollect- Installieren, Konfigurieren und Anwenden
|
|
===================================================
|
|
Julian Meier <julian.meier__@__julian.mkr-tech.ch>
|
|
v0.1, Initiale Version vom 2006-03-04
|
|
:Author Initials: JM
|
|
|
|
inkrementelle Datensicherung
|
|
mit 'hardlinks' und 'rsync'
|
|
|
|
Einleitung
|
|
----------
|
|
'ccollect' ist ein Backuptool geschrieben in der sh-skript Programmiersprache.
|
|
Es braucht nichts besonderes nur die '/bin/sh'-Konsole (oder eine kompatible).
|
|
|
|
Installation
|
|
------------
|
|
|
|
Anforderungen
|
|
~~~~~~~~~~~~~
|
|
|
|
.Die aufgelisteten Werkzeuge müssen für das Benutzen von ccollect installiert sein:
|
|
- bc
|
|
- cp
|
|
- rsync
|
|
- date
|
|
- ssh (optional, wenn man ssh-Verbindungen nutzen moechte)
|
|
|
|
Am besten überprüfen Sie das mit dem Befehl 'apt-get install bc rsync ssh'.
|
|
Beim Fehlen eines Werkzeuges wird dieses nachinstalliert.
|
|
|
|
Installieren
|
|
~~~~~~~~~~~~
|
|
|
|
. Laden Sie sich die neuste Version von ccollect herunter.
|
|
Diese finden Sie unter: 'http://linux.schottelius.org/ccollect'
|
|
. Wechseln Sie in der Konsole mit "cd 'Pfad" in das Verzeichniss,
|
|
indem sich das ccollect Archiv befindet.
|
|
Entpacken Sie das Archiv mit "tar xvfj ccollect-$version.tar.bz2".
|
|
Am Besten ist es, wenn Sie jetzt in das Verzeichniss mit den
|
|
entpackten Daten wechseln: "cd 'pfad/'ccollect-'version'.
|
|
. Danach kopieren Sie die Datei 'ccollect.sh' aus dem entpackten Archiv nach
|
|
/usr/local/bin. Das geht mit dem Befehl "cp ccollect.sh /usr/local/bin".
|
|
. Nun ändern Sie die Rechte für die Datei damit jeder Benutzer das
|
|
Programm verwenden kann: "chmod 0755 /usr/local/bin/ccollect.sh"
|
|
. Erstellen Sie nun das Konfigurationsverzeichnis für ccollect:
|
|
"mkdir /etc/ccollect/"
|
|
. Starten sie nun zum Testen das Programm ccollect mit dem Befehl
|
|
`ccollect.sh` in der Konsole.
|
|
|
|
|
|
Konfiguration
|
|
-------------
|
|
|
|
Konfigurationsverzeichnisse
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Die Konfigurationsdaten befinden sich bei ccollect im oben erstellten Verzeichnis
|
|
"/etc/ccollect". Um ccollect richtig konfigurieren zu können benötigen Sie
|
|
noch ein paar weitere Verzeichnisse:
|
|
|
|
- "/etc/ccollect/defaults" mit:
|
|
'mkdir /etc/ccollect/defaults'
|
|
- "/etc/ccollect/defaults/intervals" mit:
|
|
'mkdir /etc/ccollect/defaults/intervals'
|
|
- "/etc/ccollect/sources" mit:
|
|
'mkdir /etc/ccollect/sources'
|
|
|
|
|
|
Intervalle
|
|
~~~~~~~~~~
|
|
|
|
Der Intervall-Wert definiert, wie viele Backup-Versionen ccollect von
|
|
den gesicherten Daten behalten soll.
|
|
Der Name der Datei, in der der Wert steht, ist zugleich auch der
|
|
Name des Intervalls.
|
|
|
|
--------------------------------------------------------------
|
|
julian@flumy:/etc/ccollect/defaults/intervals$ ls
|
|
daily
|
|
julian@flumy:/etc/ccollect/defaults/intervals$ cat daily
|
|
7
|
|
julian@flumy:/etc/ccollect/defaults/intervals$
|
|
--------------------------------------------------------------
|
|
|
|
|
|
Intervall erstellen
|
|
^^^^^^^^^^^^^^^^^^^^
|
|
Sie erstellen einen Intervall wie folgt:
|
|
|
|
. Wechseln Sie in das Intervall-Verzeichnis: 'cd /etc/ccollect/defaults/intervals'.
|
|
. Erstellen Sie einen neuen Intervall mit dem Befehl
|
|
"echo 'wert' > 'Intervall-Name'"
|
|
|
|
|
|
Sources
|
|
~~~~~~~
|
|
|
|
Mit Sourcen meint man bei 'ccollect' die Quelldaten. Der Wert einer 'source'-Datei
|
|
verweist auf einen Pfad in dem sich die zu sichernden Daten befinden.
|
|
|
|
.Im Ordner '/etc/ccollect/sources/*' wird festgelegt:
|
|
- Der Sicherungs-Titel
|
|
- Quell- und Ziel-Verzeichnis
|
|
- Spezielle Einstellungen
|
|
|
|
Sicherungs-Titel
|
|
^^^^^^^^^^^^^^^^
|
|
Der Sicherungstitel ist der Name eines Ordners in /etc/ccollect/sources.
|
|
|
|
|
|
Man erstellt also ein neue neue Sicherung mit dem Befehl
|
|
"mkdir '/etc/ccollect/sources/'Sicherungs-Titel'".
|
|
In diesem Verzeichnis folgen dann die spezifischen Konfigurationsdaten
|
|
(nur!) für diese Sicherung.
|
|
|
|
Quelle
|
|
~~~~~~
|
|
Mit Quelle ist gemeint welche Daten gesichert werden.
|
|
Dies wird in der Konfigurationsdatei 'source' festgelegt.
|
|
|
|
Diese liegt im Verzeichnis "/etc/ccollect/sources/'Sicherungs-Titel'".
|
|
Wechseln Sie in das Verzeichnis mit dem Sicherungs-Titel und erstellen Sie die
|
|
Datei mit "echo 'Quellpfad' > source".
|
|
|
|
Exclude
|
|
^^^^^^^
|
|
Es kann vorkommen das man in einem Verzeichniss alles sichern will
|
|
bis auf ein paar Unterordner.
|
|
Für dieses Vorhaben gibt es die Datei 'exclude', die sich wiederum
|
|
im Verzeichnis 'Sicherungs-Titel' befindet.
|
|
|
|
Die Datei wird mit folgenden Schritten angelegt:
|
|
|
|
. "echo 'Quellpfad/verzeichnis1 > exclude"
|
|
Ein Pfad wird weggelassen.
|
|
. "echo 'Quellpfad/verzeichnis2 >> exclude"
|
|
Ein weiterer Pfad der weggelassen wird. Das zweite '>' bewirkt,
|
|
das an die 'exclude'-Datei angefügt wird (das einfache '>'
|
|
ueberschreibt eine vorhandene Datei).
|
|
|
|
|
|
Ziel
|
|
~~~~
|
|
Mit dem Ziel ist gemeint wohin die Sicherung gespeichert wird.
|
|
Dies geschieht mit einer Verknüpfung (Link), die 'destination' heisst.
|
|
|
|
.Erstellen Sie diese mit den Befehlen
|
|
- "ln -s '/Pfad/zum/Speicherort/' destination"
|
|
- Mit dem Befehl "ls -l destination" kann man die Richtigkeit der
|
|
Verknüpfung überprüfen.
|
|
|
|
[IMPORTANT]
|
|
==============================
|
|
Es
|
|
darf
|
|
immer
|
|
nur
|
|
eine
|
|
'source',
|
|
'destination',
|
|
und
|
|
'exclude'
|
|
Datei
|
|
vorhanden
|
|
sein.
|
|
==============================
|
|
|
|
|
|
Spezielles
|
|
~~~~~~~~~~
|
|
Im Ordner "/etc/ccollect/sources/'Sicherung'" kann man weitere Daten einfügen
|
|
und damit Optionen ein- oder auszuschalten.
|
|
|
|
'verbose'::
|
|
Beim Sicherungsvorgang ausführlich berichten ('-v' für 'rsync').
|
|
'very_verbose'::
|
|
Beim Sicherungsvorgang sehr ausführlich berichten
|
|
('-v' für 'rsync', 'mkdir', 'cp' und 'rm').
|
|
'summary'::
|
|
'ccollect' erstellt beim Beenden des Sicherungsvorganges eine
|
|
Zusammenfassung des Geschehenen.
|
|
'rsync_option'::
|
|
Alle Befehle in dieser Datei zu 'rsync' werden ausgeführt beim Sicherungsvorgang.
|
|
'pre_exec'::
|
|
Die Befehle im Inhalt dieser Datei werden vor dem Backup ausgeführt.
|
|
'post_exec'::
|
|
Die Befehle im Inhalt dieser Datei werden nach dem Backup ausgeführt.
|