staging.inyokaproject.org

Erfahrungen mit Bareos

Status: Ungelöst | Ubuntu-Version: Server 12.04 (Precise Pangolin)
Antworten |

archondis

Anmeldungsdatum:
2. August 2012

Beiträge: 313

Hallo,

gestern bin auf auf einen Artikel von Bareos gestossen. Hört sich nicht schlecht an.

Hat in diesem Forum jemand Erfahrungen mit dieser Backupsofteware? Unter der Haube soll es wie Bacula aufgebaut sein.

danke

Moderiert von Elektronenblitz63:

In das passende Forum verschoben. Bitte beachte die Themen-Stickys "Welche Themen gehören hier her und welche nicht?" bei der Wahl des richtigen Forums. Danke.

archondis

(Themenstarter)

Anmeldungsdatum:
2. August 2012

Beiträge: 313

Hallo,

ich habe mal das Bareos unter Ubuntu installiert,

allerdings zu Bacula gibt es einige Änderungen.

Wie folgt!

/etc/init.d/apparmor stop && /etc/init.d/apparmor teardown update-rc.d -f apparmor remove

Vorbereitung!

apt-get install mysql-server phpmyadmin apache2

URL=http://download.bareos.org/bareos/release/latest/xUbuntu_12.04/ printf "deb $URL /\n" > /etc/apt/sources.list.d/bareos.list

# add package key wget -q $URL/Release.key -O- | apt-key add -

apt-get update

apt-get install bareos bareos-database-mysql


Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut Statusinformationen werden eingelesen... Fertig Die folgenden zusätzlichen Pakete werden installiert: bareos-bconsole bareos-client bareos-common bareos-database-common bareos-database-tools bareos-director bareos-filedaemon bareos-storage bareos-traymonitor fontconfig fontconfig-config heirloom-mailx libaudio2 libavahi-client3 libavahi-common-data libavahi-common3 libcap2 libcups2 libfastlz libfontconfig1 libice6 libjpeg-turbo8 libjpeg8 liblcms1 liblzo2-2 libmng1 libmysqlclient18 libqt4-dbus libqt4-declarative libqt4-network libqt4-script libqt4-sql libqt4-sql-mysql libqt4-xml libqt4-xmlpatterns libqtcore4 libqtgui4 libsm6 libtiff4 libxi6 libxrender1 libxt6 mysql-common qdbus ttf-dejavu-core x11-common Vorgeschlagene Pakete: bareos-doc mysql-server kde gnome-desktop-environment exim4 mail-transport-agent nas cups-common liblcms-utils libqt4-declarative-folderlistmodel libqt4-declarative-gestures libqt4-declarative-particles libqt4-declarative-shaders qt4-qmlviewer libqt4-dev libthai0 qt4-qtconfig Die folgenden NEUEN Pakete werden installiert: bareos bareos-bconsole bareos-client bareos-common bareos-database-common bareos-database-mysql bareos-database-tools bareos-director bareos-filedaemon bareos-storage bareos-traymonitor fontconfig fontconfig-config heirloom-mailx libaudio2 libavahi-client3 libavahi-common-data libavahi-common3 libcap2 libcups2 libfastlz libfontconfig1 libice6 libjpeg-turbo8 libjpeg8 liblcms1 liblzo2-2 libmng1 libmysqlclient18 libqt4-dbus libqt4-declarative libqt4-network libqt4-script libqt4-sql libqt4-sql-mysql libqt4-xml libqt4-xmlpatterns libqtcore4 libqtgui4 libsm6 libtiff4 libxi6 libxrender1 libxt6 mysql-common qdbus ttf-dejavu-core x11-common 0 aktualisiert, 48 neu installiert, 0 zu entfernen und 0 nicht aktualisiert. Es müssen 15,6 MB an Archiven heruntergeladen werden. Nach dieser Operation werden 54,4 MB Plattenplatz zusätzlich benutzt.


Muss eingestellt werden, ansonsten kann die Installation nicht abgeschlossen werden.

vi /etc/mysql/my.cnf

[client] user=root password=mein password

danach bconsole!

Wer das ganze unter Windows 7 Installieren möchte "den Kompletten Server", sollte die PostgreSQL - Datenbank installieren ! Mysql habe ich nicht zum laufen gebracht.

Zumal ich nur wening Infos bekommen hatte.!

Alles im allem würde ich mal behaupten, dass Bareos einfach Kunden haben möchte, um das Produkt zu verkaufen!

Selbst wenn es Besserungen gibt, denke ich doch, dass es mit der Community von Bacula eine Herausforderung gibt.

bei Bacula bekomme ich defenetiv mehr Infos als zu Bareos. Bareos lässt sich den Supoort auch mit stolzen Preisen verkaufen!

Eine Linksliste wollte ich nicht zur Verfügung stellen!!!

lange Rede kurzer Sinn

Eine Umstellung würde ich persönlich nicht empehelen, denn Bareos zieht in die Richtung, Support Vertäge zu bekommen.

Und mit dem Bacula "Buch von Bacula - Philipp Storz" ist man doch am richtigen Platz.

Mit dem Baula Fork " Bareos" ist man was goolge anbelangt schnell hiflos.

Das war und ist meine Meinung.

Beste Grüsse

DonMichelangelo

Anmeldungsdatum:
21. August 2006

Beiträge: Zähle...

Ich setze Bareos bei einem Kunden ein. Gesichert wird per Autochanger LTO5 Storage und auf Filestorage und mein bisheriger Eindruck ist positiv.

Es bietet eindeutig Verbesserungen gegenüber der Bacula Community Version wie Deduplizierung und frei erhältliche Windows Clients welche für mich auch Hauptgrund waren nicht Bacula zu nehmen. Interessant bleibt es aber wie diese Law-suit Geschichte zwischen Bacula und Bareos ausgeht, da ich befürchte dass die Existenz von Bareos u.a. auch davon abhängt.

Angeblich war wohl nicht AGPL Code der aber aus dem Enterprise-Zweig stammt und im Bacula 5.2 Zweig gelandet ist, der aber bekanntlich als Bareos Grundlage dient.

Und was die Community Größe angeht: Klar Bacula ist größer und es ist auch mehr im Netz darüber zu finden, aber man darf auch nicht unter dem Tisch fallen lassen wie lange es Bacula schon gibt. Bacula gibt es seit dem Jahr 2000 und Bareos erst seit 2013.

Und: Vieles was für Bacula gilt, gilt auch für Bareos.

Nüchtern betrachtet muss man gestehen, dass Bareos für den OSS-Enthusiasten wohl aufgrund der Verbesserungen gegenüber Bacula vorzuziehen ist. Und falls es mit Bareos nicht weitergehen sollte - aus welchem Grund auch immer - dann kann man ja immer noch zu Bacula rüberwechseln.

Die Configs sind ja größtenteils identisch, lediglich die Plugins und Clients wird man sich dann durch Subscriptions kaufen müssen.

flexmind

Anmeldungsdatum:
2. Mai 2014

Beiträge: 20

Hallo,

ich hätte da auch mal eine Frage:

Wir nutzen Bareos u.a. auch um einen Windows Desktop zu sichern.

Gibt es eine Möglichkeit wie man dem Client einen Befehl ausführen lassen kann, der nach erfolgtem Backup ausgeführt wird?

Wir würden den betroffenen PC gerne nach erfolgreichem Backup runterfahren lassen.

DonMichelangelo

Anmeldungsdatum:
21. August 2006

Beiträge: Zähle...

flexmind schrieb:

Hallo,

ich hätte da auch mal eine Frage:

Wir nutzen Bareos u.a. auch um einen Windows Desktop zu sichern.

Gibt es eine Möglichkeit wie man dem Client einen Befehl ausführen lassen kann, der nach erfolgtem Backup ausgeführt wird?

Wir würden den betroffenen PC gerne nach erfolgreichem Backup runterfahren lassen.

Theoretisch sollte das möglich sein. Guck dir mal das hier an: http://doc.bareos.org/master/html/bareos-manual-main-reference.html

Und dann die RunScript Direktive sollte für dich von Relevanz sein. Müsstest es dann nur noch hinkriegen von Linux aus einen Befehl auf Windows abzusetzen.

Das könntest Du per SSH-Server lösen, den Du auf der Windows-Kiste installierst, oder Du probierst mal winexe aus, siehe: http://sourceforge.net/projects/winexe

Würde mich freuen von deinen Erfahrungen dann zu hören, denn selber hatte ich sowas auch noch nicht ausprobiert.

Gruß,

Micha

P.S. Ich kann Dir noch wärmstens für weitere Bareos Fragen die Mailinglist empfehlen: https://groups.google.com/forum/?fromgroups#!forum/bareos-users

P.P.S: Anscheinend kann Bareos schon nativ Windows Commands ausführen. Siehe ClientRunBeforeJob und Run After Job in der Doku...

flexmind

Anmeldungsdatum:
2. Mai 2014

Beiträge: 20

Hallo Micha,

wir haben das nun mit einem einzeiler shutdown.bat auf dem client gelöst. Die Batdatei wird nach erfolgreichem Backup vom Bareos-dir angestossen.

In der Bareos-dir.conf sieht das dann so aus:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
Job {
  Name = "deine bezeichnung"
  Client = dummy-pc-fd
  JobDefs = "DefaultJob"
  Accurate = Yes
  Schedule = "WeeklyCycledatev"
  FileSet = "Windows All Drives"
 RunScript {
        command = c:/shutdown.bat
        RunsOnSuccess = Yes
          }
}

Hinterlegt wurde der Eintrag in der Job-Resource für den entsprechenden Client. Hoffe das hilft dir ein stück weiter.

Gruß flexmind

archondis

(Themenstarter)

Anmeldungsdatum:
2. August 2012

Beiträge: 313

Hallo,

ich sichere zur Zeit einen Windows 2012R2 Server mit bareos. klappt bisher. Gibt es auch einen BAT wie unter bacula? Leider konnte ich bisher nichts finden.

danke

flexmind

Anmeldungsdatum:
2. Mai 2014

Beiträge: 20

Wir verwenden als GUI Webacula.

Mit Webacula können auch administrative Aufgaben umgesetzt werden inkl Monitoring.

Fertige Pakete für versch. Distibutionen finden sich unter:

http://download.bareos.org/bareos/contrib/

Auserdem wird noch PHP und Zend-Framework, version 1 benötigt.

archondis

(Themenstarter)

Anmeldungsdatum:
2. August 2012

Beiträge: 313

supper, vielen dank! 👍

archondis

(Themenstarter)

Anmeldungsdatum:
2. August 2012

Beiträge: 313

hallo,

nur kurz zur Info

Sicherung eines Windows Verzeichnisses "ClientRunBeforeJob"

1
2
3
4
5
Job {
        Name = "job-client-WK2012"
        JobDefs = "jobdefs-WK2012"
        ClientRunBeforeJob = "C:/backupdir/test.cmd"
}

test.cmd auf dem Server

1
2
3
4
5
6
set PATH=%PATH%;C:\Program Files\7-Zip\
7z
C:
cd\
cd C:\backupdir
7z a -t7z files.7z *.jpg

KLAPPT!

flexmind

Anmeldungsdatum:
2. Mai 2014

Beiträge: 20

Super, vielen Dank!

Kennt jemand einen Weg die Verbindung zum Client zu Testen, befor ein Backup-JOB ausgeführt wird.

Ziel ist:

- vor dem Backup zuprüfen ob der Client online ist

- ist der Client nicht verfügbar den Job garnicht erst ausführen

- Ergebnis keine Fehlermeldung für fehlgeschlagene Backups, weil der Client nicht online ist

archondis

(Themenstarter)

Anmeldungsdatum:
2. August 2012

Beiträge: 313

hey,

das sollte mit estimate listing "bconsole" gehen

Hier ein Beispiel!

in der bacula-dir.conf binde ich meine Clients ein, so kann ich diese jederzeit aus der Sicherung wieder rausnehmen

1
@/etc/bacula/conf.d/clients/windows7.conf

Ob der Client eine Verbindung hat, kannst Du mit dem Befehl status "dann TAB Taste wählen"

1
2
3
4
5
6
root@bacula:/etc/bacula/conf.d/clients# bconsole
Connecting to Director 192.168.50.165:9101
1000 OK: bacula-dir Version: 5.2.5 (26 January 2012)
Enter a period to cancel a command.
*status
all        client=    days=      dir=       director   nnn        slots      storage=

dann client= "wieder die Tabtase"

1
2
*status client=
bacula-fd    baukpc13-fd  wks-203-fd

dein Client auswählen

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
*status client=wks-203-fd
Connecting to Client wks-203-fd at 192.168.50.189:9102

wks-203-fd Version: 5.2.5 (26 January 2012)  VSS Linux Cross-compile Win32
Daemon started 23-Jun-14 09:09. Jobs: run=15 running=0.
Microsoft Windows 7 Professional Service Pack 1 (build 7601), 32-bit
 Heap: heap=0 smbytes=122,757 max_bytes=236,069 bufs=83 max_bufs=177
 Sizeof: boffset_t=8 size_t=4 debug=0 trace=1
Running Jobs:
Director connected at: 25-Jun-14 08:25
No Jobs running.
====

Deine Verbindung steht!

Was sichere ich ?

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11

*estimate listing client=wks-203-fd
Die definierten Aufträge sind:
     1: Job-test
     2: RestoreFiles-wks-203-fd
     3: Job-Webserver
     4: Restore-Webserver
     5: Job-Bacula
     6: BackupCatalog
     7: RestoreFiles
Wähle Auftragsresource aus (1-7): 2

Ergibt nun die ausgabe was gesichert wird!

1
2
3
4
5
6
7
..........

-rwxrwxrwx   1 0        0         3124781056 2014-06-22 12:38:51  C:/baculatestbackup/windows-7-professional-sp1-64bit-de.iso
-rwxrwxrwx   1 0        0         4344508416 2014-06-22 12:40:02  C:/baculatestbackup/windows-server-2012r2-std-datacenter-64bit-de.iso
drwxrwxrwx   1 0        0                  0 2014-06-18 08:16:38  C:/baculatestbackup

2000 OK estimate files=2,046 bytes=18,306,991,222

hier das Fileset der Clients

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
FileSet {
  Name = "Fileset-wks-203-fd"
        Include {
                Options {
                        IgnoreCase = yes
                        aclsupport=yes
                                #Exclude = yes                  # wenn aktive = yes! ACHTUNG hier muss ein Exclude definert sein, wenn nicht wird nichts gesichert!
                                #Exclude Directorys
                                #Firefox exclude chache about:cache in der adsresszeile
                                #WildDir = "[A-Z]:/Users/Administrator/AppData/Local/Mozilla/Firefox/Profiles/birzlvh8.default/Cache"

                        }
                        #------- Was gesichert werden soll
                        #File = "C:/Users/Administrator/AppData/Roaming/Thunderbird/Profiles/uckisjvg.default"
                        #File = "C:/Users/Administrator/AppData/Roaming/mozilla/firefox/Profiles/birzlvh8.default"
                        # OriginalSicherungen
                        File = "C:/Users/Administrator/Desktop"
                        File = "C:/Users/Administrator/Documents"

                #Testlauf Status OK!
                File = "C:/baculatestbackup"
                }

        }

gruss

archondis

(Themenstarter)

Anmeldungsdatum:
2. August 2012

Beiträge: 313

Hallo,

jetzt hätte ich auch noch ein Frage zu den Pools

Zur Zeit hatte ich immer für meine Sicherungen

1
2
Incremental    
Full  

in einem Pool gespeichert!

Bringt es mir irgendwelche Vorteile, wenn ich für die Sicherung FULL und Incremental einen eigenen Pool anlege?

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
                                     
                                        Pool
                                                {
                                                Name = Pool-Terminal-FULL
                                                Pool Type = Backup
                                                Recycle = yes                   # Bacula can automatically recycle Volumes
                                                AutoPrune = yes                 # Prune expired volumes
                                                Volume Retention = 1 days               # MUSS Maximum Volumes / Maximum Volume Jobs haben!
                                                Maximum Volumes = 4             # Es werden 4 Volumes angelegt aber Ohne Maximum Volume Jobs wird nur ein Volume angelegt!
                                                Maximum Volume Jobs = 8         # Pro volume 8 Jobs
                                                Label Format = "$FULL-{Client}-${Pool}-${Year}${Month:p/2/0/r}${Day:p/2/0/r}-${Hour:p/2/0/r}${Minute:p/2/0/r}-${JobId}"
                                                }


                                        Pool
                                                {
                                                Name = Pool-Terminal-INCRE
                                                Pool Type = Backup
                                                Recycle = yes                   # Bacula can automatically recycle Volumes
                                                AutoPrune = yes                 # Prune expired volumes
                                                Volume Retention = 1 days           # MUSS Maximum Volumes / Maximum Volume Jobs haben!
                                                Maximum Volumes = 4             # Es werden 4 Volumes angelegt aber Ohne Maximum Volume Jobs wird nur ein Volume angelegt!
                                                Maximum Volume Jobs = 8         # Pro volume 8 Jobs
                                                Label Format = "$INCRE-{Client}-${Pool}-${Year}${Month:p/2/0/r}${Day:p/2/0/r}-${Hour:p/2/0/r}${Minute:p/2/0/r}-${JobId}"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10

                                        Schedule
                                                {
                                                Name = "Schedule-Terminal"
                                                Run = Level=Full Pool=Pool-Terminal-FULL daily at 11:50
                                                Run = Level=Incremental Pool=Pool-Terminal-INCRE daily at 12:00
                                                Run = Level=Incremental Pool=Pool-Terminal-INCRE daily at 12:10
                                                Run = Level=Incremental Pool=Pool-Terminal-INCRE daily at 12:15
                                                Run = Level=Full Pool=Pool-Terminal-FULL daily at 12:20
                                                }

danke

flexmind

Anmeldungsdatum:
2. Mai 2014

Beiträge: 20

Hallo,

vielen Dank für die ausführliche Beschreibung.

Das trifft es aber nicht ganz, die Möglichkeiten der bconsole sind mir bekannt.

Ich hatte aber nicht vor mich erst an die console zu setzen und alles händisch durchzutesten.

Mir geht es darum dies automatisiert von wo aus auch immer durchführen zu lassen.

Zu deiner Frage MehrPoolStrategie

So wie die aktuelle conf ausschaut macht es keinen Unterschied.

Gedacht ist das ganze für verschiedene Vorhaltezeiten der verschiedenen Backuplevel.

Was wiederum von der erforderlichen Backupstrategie und der Granularität der Rücksicherungen abhängt.

Güße 👍

archondis

(Themenstarter)

Anmeldungsdatum:
2. August 2012

Beiträge: 313

hallo,

danke für deine antwort.

ich denke, dass du an dem händischen nicht herumkommst. Alleine das label für dein volume sollte von hand durchgeführt werden "so habe ich das in der doku verstanden".

Eventuell könnte man mit dem echo Befehl etwas machen "bacula-bconsole-commands-from-bash-cli"

1
2
und abfragen über die bash vornehmen 
echo "status client=ts-fd" | bconsole 

bacula-bconsole-commands-from-bash-cli http://vmhacks.com/running-bacula-bconsole-commands-from-bash-cli/

Allerdings muss der cient ja von Hand eingebunden werden, da wird ja auch die Verbinding gleicht geprüft. Sollte es später doch keine Verbindung geben, so bekommst du ja über messages einen Hinweis auf einen failed connnect. Da wird ja die Verbinung automatisch geprüft.

Oder wieder über bestimmte befehle ob alle dienste laufen

1
2
3
4
5
6
7
8
clear
netstat -to
ps w -C "bacula-sd bacula-fd bacula-dir"
ps auwx | grep bacula
netstat -tan | grep "910*"
netstat -lptuan | grep bacula
netstat -tulpn | grep LISTEN
netstat -to

gruss

Antworten |