Benutzer:Duese/Bacula
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