Benutzer:Duese/Bacula

Aus DebianforumWiki
Zur Navigation springen Zur Suche springen

vchanger

Um einen virtuellen Tapechanger für (USB-)Festplatten zu bekommen, kann man das Programm vchanger verwenden. Es mountet bei einer vollen Festplatte die nächste Festplatte eines "Magazine-Bays".

vchanger kann auf Sourceforge heruntergeladen werden. Dieses HowTo bezieht sich auf vchanger Version 0.8.6.

vchanger kompilieren

Nach dem Herunterladen und entpacken wechselt man in das gerade entpackte Verzeichnis. Mit nachfolgende Schritten wird dann ein Debian-Paket erstellt und installiert.

aptitude install build-essential uuid-dev libblkid-dev
./configure
make
checkinstall make install-strip

autofs installieren

vchanger verwendet autofs damit die Festplatten bzw. Partitionen automatisch gemountet und nach Verwendung unmountet werden.

aptitude install autofs

Aufgrund eines Bugs im Paket autofs5 unter Debian Squeeze muss in der Datei /etc/nsswitch.conf die folgende Zeile hinzugefügt werden:

automount:      files

autofs für vchanger konfigurieren

Damit Festplatten automatisch in einem dediziertem Verzeichnis gemountet werden, muss dieses erstellt werden.

mkdir /mnt/vchanger

Anschließend teilt man autofs noch mit, wo es die Platten mounten soll und dass die Platten nach 30 Sekunden Inaktivität wieder unmountet werden sollen.

# /etc/auto.master
...
+auto.master

# Following entries for vchanger (for bacula)
/mnt/vchanger           /etc/auto.vchanger              --timeout=30

#eof
# /etc/auto.vchanger
*          -fstype=auto,rw,sync       :/dev/disk/by-uuid/&
# eof

autofs neu starten:

/etc/init.d/autofs restart

Festplatten für vchanger vorbereiten

In diesem HowTo wird für die Festplatten das Filesystem ext4 verwendet. sdXX bitte durch die Bezeichnung der jeweiligen Platte ersetzen.

mke2fs -t ext4 -O large_file /dev/sdXX

Um sich die UUIDs der Festplatten bzw. deren Partitionen anzeigen zu lassen zeige man sich den Inhalt von /dev/disk/by-uuid an

ls -l /dev/disk/by-uuid

Wenn autofs richtig konfiguriert ist, zeigt bei einer frisch formatierten Platte nachfolgender Befehl

ls -lha /mnt/vchanger/0f79f18c-1809-4d42-a82d-ced1d9c1cd97

folgendes an:

insgesamt 20K
drwxr-xr-x 3 root   root   4,0K 17. Mär 09:26 .
drwxr-xr-x 3 root   root      0 17. Mär 13:05 ..
drwx------ 2 root   root    16K 17. Mär 09:26 lost+found

Hier sieht man, dass Bacula noch keine Rechte hat, auf die Platte zu schreiben, daher muss noch ein chown auf die Partitionen ausgeführt werden:

chown -R bacula:bacula /mnt/vchanger/0f79f18c-1809-4d42-a82d-ced1d9c1cd97

Für die anderen Partitionen obiges bitte analog durchführen.


vchanger konfigurieren

Wir erstellen ein dediziertes Verzeichnis für vchanger und vergeben passende Rechte:

mkdir /etc/bacula/vchanger
touch /etc/bacula/vchanger/changer1.conf
chown -R bacula:bacula /etc/bacula/vchanger

Im Verzeichnis /dev/disk/by-uuid zeigt einzelne Festplatten mitsamt ihren UUIDs an:

$ ls -l /dev/disk/by-uuid:
0f79f18c-1809-4d42-a82d-ced1d9c1cd97 -> /dev/sdb1
2fbb82b4-0697-493b-98ef-5a49bd80f7e7 -> /dev/sdb2
f3475e4b-4c5d-4200-8000-64dd102f2bc8 -> /dev/sdb3
eaff49b3-49dc-4937-8c05-8fb4061b2058 -> /dev/sdb4

Die UUIDs werden in der Datei /etc/bacula/vchanger/changer1.conf hinterlegt.

# /etc/bacula/vchanger/changer1.conf
changer_name = "changer1"
work_dir = "/var/lib/bacula/vchanger/changer1"
logfile = "/var/log/vchanger/changer1.log"
virtual_drives = 2
slots_per_magazine = 3
magazine_bays = 1
automount_dir = /mnt/vchanger

magazine = "UUID:0f79f18c-1809-4d42-a82d-ced1d9c1cd97"
magazine = "UUID:2fbb82b4-0697-493b-98ef-5a49bd80f7e7"
magazine = "UUID:f3475e4b-4c5d-4200-8000-64dd102f2bc8"
magazine = "UUID:eaff49b3-49dc-4937-8c05-8fb4061b2058"

Um ein neues Magazin zu initialisieren:

vchanger -u bacula -g disk /etc/bacula/vchanger/changer1.conf initmag 1