Benutzer-Werkzeuge

Webseiten-Werkzeuge


backup

Datensicherung - Backup

Geräte bekommen Defekte. Zwangsläufig. Deshalb: Datensicherung!

rsync

Als GUI kann luckyBackup verwendet werden. (https://luckybackup.sourceforge.net/), dabei werden auch Versionen unterstützt.

Beispiel: Backup rsync über ssh

Beteiligte Computer: ernie (Ziel) und bert (Quelle)

  • rsync und ssh auf beiden Computern installieren
  • Synchronisation wird von ernie initiiert
    • cron-job
  • paßwortfreies Schlüsselpaar anlegen
    • ssh-keygen -t rsa -f ernie.id_rsa
  • öffentlichen Schlüssel auf bert in authorized_keys eintragen
  • ssh testen, Fingerprint akzeptieren
    • ssh -i /root/.ssh/ernie.id_rsa bert.example.com
  • rsync testen
    • rsync -e 'ssh -i /root/.ssh/ernie.id_rsa' -avz --delete bert.example.com:/etc /var/backups/bert
  • Skript in /usr/local/bin anlegen
  • Eintrag in crontab erstellen
    • 0 20 * * 1-5 root /usr/local/bin/backup_bert

Bandsicherung mit Bacula

Beispiel: Am Server ist ein LTO2 Laufwerk angeschlossen.

Gerät: /dev/nst0 bzw. /dev/st0

Der Unterschied zwischen nst0 und st0 ist, daß das zweite Gerät nach jedem Auftrag automatisch zum Bandanfang zurückspult. Bacula empfieht, nst0 zu verwenden.

Band löschen: mt -f /dev/st0 erase Achtung: Dieser Vorgang kann mehrere Stunden dauern.

Als Datensicherungssoftware kann man Bacula verwenden. Die Katalogdaten speichern wir in MySQL.

apt-get install bacula-director-mysql bacula-fd bacula-sd bacula-sd-mysql bacula-console
mysql -u root -p
> CREATE DATABASE bacula CHARACTER SET UTF8;
> CREATE USER bacula@localhost IDENTIFIED BY '********';
> GRANT ALL PRIVILEGES ON bacula.* TO bacula@localhost;
> FLUSH PRIVILEGES;

Für Scripte, die auf die Datenbank zugreifen müssen, werden die Zugriffsdaten in einer speziellen Datei vorgehalten. Diese kann mit --defaults-file <filename> verwendet werden.

Nach einer installation hat das Script delete_catalog_backup die falschen Berechtigungen. Am besten umstellen mit:

chown bacula. delete_catalog_backup
chmod 750 delete_catalog_backup
mysql-defaults.cnf
[client]
host     = localhost
user     = bacula
password = ********
socket   = /var/run/mysqld/mysqld.sock

Storage Daemon konfigurieren

  • File Storage nach /var/backups/mysql
  • Tape Storage (LTO-2)

Im Standard sendet Bacula für jeden Job eine Email. Im normalen Betrieb kann das störend sein. Deshalb empfiehlt es sich nur Meldungen zu senden, die nicht ok sind. Das sind Fehler, aber auch Bendwechselaufforderungen. Konfiguriert wird das in /etc/bacula/bacula-dir.conf:

bacula-dir.conf
Messages {
  Name = Standard
  mailcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\" -s \"Bacula: %t %e of %c %l\" %r"
  operatorcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\" -s \"Bacula: Intervention needed for %j\" %r"
  mail on error = root = all, !skipped            
  operator = root = mount
  console = all, !skipped, !saved
  append = "/var/log/bacula/bacula.log" = all, !skipped
  catalog = all
}

Verschlüsselung

Wichtig: Das Debian-Paket des Filedaemons unterstützt keine Verschlüsselung. Es muß neu kompiliert werden!

Versuch: Konfiguration ohne Masterschlüssel.

cd /etc/bacula
openssl genrsa -out mail-fd.pem -pubout 2048
openssl rsa -in mail-fd.pem -pubout >> mail-fd.pem
chown bacula mail-fd.pem

mail-fd.pem GUT extern sichern, ohne diese Datei ist eine Wiederherstellung nicht möglich!

bacula-fd.conf
  [...]
  PKI Encryption = yes
  PKI Signatures = yes
  PKI Key Pair = /etc/bacula/mail-fd.pem
backup.txt · Zuletzt geändert: 06.11.2023 11:34 von thooge

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki