Hello,
currently I'm really struggling with the bareos config..
Especially the virtual full config doesn't work as I expected.
We have a bunch of clients (laptops and desktops) running windows7 x64.
I would like to only make one initial full backup in the beginning and after
that I only want incremental backups and a monthly virtual full backup for each
client.
No tapes are used, just plain disk based storage...
I figured out already how to achieve most of my goals but after doing a virtual
full and migrating it back to the initial full backup pool, the next
incremental backup is always upgraded to a normal full backup and i just can't
figure out why...I also tried to migrate it back to the incremental
pool....getting the same result...No suitable full backup is found....
Currently I'm using three pools for each client. One for the incremental
backups, one for the full backups and one for the virtual full ones...
I also want to keep the storage space used as minimal as possible. so that's
why I'm using the truncate option.
Here's my client config file:
# Pool Definitions
Pool {
Name = Pool-ATN32YBK32
Pool Type = Backup
Storage = StorageAT
Recycle = yes
AutoPrune = yes
Volume Retention = 31 days
Maximum Volume Bytes = 2GB
Maximum volumes = 50
Maximum Volume Jobs = 28
Action On Purge = Truncate
#Recycle Oldest Volume = yes
Recycle Current Volume = yes
LabelFormat = "BCK-ATN32YBK32-Incr_"
Next Pool = Pool-ATN32YBK32-VirtFull
}
Pool {
Name = Pool-ATN32YBK32-Full
Pool Type = Backup
Storage = StorageAT
Recycle = yes
AutoPrune = yes
Volume Retention = 1 sec
Maximum Volume Bytes = 100GB
Maximum volumes = 1
Maximum Volume Jobs = 1
Action On Purge = Truncate
#Recycle Oldest Volume = yes
Recycle Current Volume = yes
LabelFormat = "BCK-${Client}-Full"
Next Pool = Pool-ATN32YBK32-VirtFull
}
Pool {
Name = Pool-ATN32YBK32-VirtFull
Pool Type = Backup
Storage = StorageAT-TEMP
Recycle = yes
AutoPrune = yes
Volume Retention = 1 sec
Maximum Volume Bytes = 100GB
Maximum volumes = 1
Maximum Volume Jobs = 1
Recycle Current Volume = yes
Action On Purge = Truncate
LabelFormat = "BCK-${Client}-virtualfull"
Next Pool = Pool-ATN32YBK32-Full
}
# Client Definition
Client {
Name = ATN32YBK32-fd
Address = ATN32YBK32
Password = "XXXXXXXXX"
File Retention = 31 days
Job Retention = 31 days
Soft Quota = 25GB
Hard Quota = 50GB
}
# Job Definitions
Job {
Name = ATN32YBK32
JobDefs = Windows7-AT
Client = ATN32YBK32-fd
Pool = Pool-ATN32YBK32
Messages = Standard
Full Backup Pool = Pool-ATN32YBK32-Full
FileSet = "Windows7-clients-with-exclude"
}
Job {
Name = ATN32YBK32-virtualfull
JobDefs = VirtualFull-AT
Client = ATN32YBK32-fd
Pool = Pool-ATN32YBK32
Messages = Standard
FileSet = "Windows7-clients-with-exclude"
RunScript {
RunsWhen = After
Runs On Client = no
RunsOnFailure = no
FailJobOnError = Yes
Console = "purge volume=BCK-ATN32YBK32-fd-Full action=truncate
storage=StorageAT pool=Pool-ATN32YBK32-Full"
Command = "/bin/bash -c \"/bin/echo 'run job=ATN32YBK32-migrate yes' \|
/usr/sbin/bconsole\""
}
}
Job {
Name = ATN32YBK32-migrate
JobDefs = Migrate-AT
Client = ATN32YBK32-fd
Pool = Pool-ATN32YBK32-VirtFull
Selection Type = Volume
Selection Pattern = "BCK-ATN32YBK32-fd-virtualfull"
Messages = Standard
FileSet = "Windows7-clients-with-exclude"
RunScript {
RunsWhen = After
Runs On Client = no
RunsOnFailure = no
FailJobOnError = yes
Console = "purge volume=BCK-ATN32YBK32-fd-virtualfull action=truncate
storage=StorageAT-TEMP pool=Pool-VirtFull-ATN32YBK32"
}
}
Job Defs:
JobDefs {
Name = "Windows7-AT"
Type = Backup
Level = Incremental
FileSet = "Windows7-clients-with-exclude"
Schedule = "AT_default"
Storage = StorageAT
Messages = Standard
Pool = PoolAT
Priority = 10
Allow Duplicate Jobs = no
Cancel Queued Duplicates = yes
Cancel Running Duplicates = yes
Write Bootstrap = "/var/lib/bareos/%c_%n.bsr"
Reschedule On Error = yes
Reschedule Interval = 3600
Reschedule Times = 14
Accurate = Yes
Prefer Mounted Volumes = no
#Messages = Standard
}
JobDefs {
Name = "VirtualFull-AT"
Type = Backup
Level = "AT_default"
Storage = StorageAT
Pool = PoolAT-Temp
#Purge Migration Job = yes
FileSet = "Windows7-clients-with-exclude"
Schedule = VirtualFull
Accurate = yes
Priority = 13
Allow Duplicate Jobs = no
Cancel Queued Duplicates = yes
Cancel Running Duplicates = yes
Prefer Mounted Volumes = no
#Messages = Standard
}
JobDefs {
Name = "Migrate-AT"
Type = Migrate
Level = Full
Storage = StorageAT
Pool = PoolAT-Temp
Purge Migration Job = yes
FileSet = "Windows7-clients-with-exclude"
Schedule = "AT_default"
Accurate = yes
Priority = 13
Allow Duplicate Jobs = no
Cancel Queued Duplicates = yes
Cancel Running Duplicates = yes
Spool Data = no
Spool Attributes = yes
Prefer Mounted Volumes = no
#Messages = Standard
}
Storage:
Storage {
Name = StorageAT
# Do not use "localhost" here
Address = ATSLNZBAREOS.CORPORATE.AD.NUFARM.COM
Password = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Device = FileStorageAT1
Device = FileStorageAT2
Device = FileStorageAT3
Device = FileStorageAT4
Device = FileStorageAT5
Device = FileStorageAT6
Device = FileStorageAT7
Device = FileStorageAT8
Device = FileStorageAT9
Device = FileStorageAT10
Media Type = File
SDPort = 9103
Maximum Concurrent Jobs = 5
#Client Connect Wait = 3 mins
Heartbeat Interval = 30 sec
TLS Certificate = ""
TLS Key = ""
TLS CA Certificate File = ""
}
Storage {
Name = StorageAT_manual
# Do not use "localhost" here
Address = ATSLNZBAREOS.CORPORATE.AD.NUFARM.COM
Password = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Device = FileStorageAT_manual
Media Type = File
SDPort = 9103
Maximum Concurrent Jobs = 5
#Client Connect Wait = 3 mins
Heartbeat Interval = 30 sec
TLS Certificate = ""
TLS Key = ""
TLS CA Certificate File = ""
}
Storage {
Name = StorageAT_Restore
# Do not use "localhost" here
Address = ATSLNZBAREOS.CORPORATE.AD.NUFARM.COM
Password = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Device = FileStorageATRestore
Media Type = File
SDPort = 9103
Maximum Concurrent Jobs = 5
#Client Connect Wait = 3 mins
Heartbeat Interval = 30 sec
TLS Certificate = ""
TLS Key = ""
TLS CA Certificate File = ""
}
Storage {
Name = StorageAT-TEMP
# Do not use "localhost" here
Address = ATSLNZBAREOS.CORPORATE.AD.NUFARM.COM
Password = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Device = FileStorageAT-Temp1
Device = FileStorageAT-Temp2
Device = FileStorageAT-Temp3
Device = FileStorageAT-Temp4
Device = FileStorageAT-Temp5
Device = FileStorageAT-Temp6
Media Type = File
SDPort = 9103
Maximum Concurrent Jobs = 5
TLS Certificate = ""
TLS Key = ""
TLS CA Certificate File = ""
}
SD config:
Device {
Name = FileStorageAT_manual
Media Type = File
Archive Device = /mnt/atarznetapp04/Backups
LabelMedia = yes; # lets Bareos label unlabeled media
Random Access = Yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
}
Device {
Name = FileStorageAT1
Media Type = File
Archive Device = /mnt/atarznetapp04/Backups
LabelMedia = yes; # lets Bareos label unlabeled media
Random Access = Yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
}
.
.
.
.
.
.
Device {
Name = FileStorageAT10
Media Type = File
Archive Device = /mnt/atarznetapp04/Backups
LabelMedia = yes; # lets Bareos label unlabeled media
Random Access = Yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
}
Device {
Name = FileStorageATRestore
Media Type = File
Archive Device = /mnt/atarznetapp04/Backups
LabelMedia = yes; # lets Bareos label unlabeled media
Random Access = Yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
}
Device {
Name = FileStorageAT-Temp1
Media Type = File
Archive Device = /mnt/atarznetapp04/Backups
LabelMedia = yes; # lets Bareos label unlabeled media
Random Access = yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
}
.
.
.
.
Device {
Name = FileStorageAT-Temp6
Media Type = File
Archive Device = /mnt/atarznetapp04/Backups
LabelMedia = yes; # lets Bareos label unlabeled media
Random Access = yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
}
Device {
Name = FileStorageAT-Temp
Media Type = File
Archive Device = /mnt/atarznetapp04/Backups
LabelMedia = yes; # lets Bareos label unlabeled media
Random Access = yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
}
Her#s what I get as an output when running an incremental backup after the
virtual full has been migrated back to the full backup pool
7-Feb 17:43 ATSLNZBAREOS-dir JobId 129: No prior Full backup Job record found.
17-Feb 17:43 ATSLNZBAREOS-dir JobId 129: No prior or suitable Full backup found
in catalog. Doing FULL backup.
17-Feb 17:43 ATSLNZBAREOS-dir JobId 129: Start Backup JobId 129,
Job=ATN32YBK32.2015-02-17_17.43.02_26
17-Feb 17:43 ATSLNZBAREOS-dir JobId 129: There are no more Jobs associated with
Volume "BCK-ATN32YBK32-fd-Full". Marking it purged.
17-Feb 17:43 ATSLNZBAREOS-dir JobId 129: All records pruned from Volume
"BCK-ATN32YBK32-fd-Full"; marking it "Purged"
17-Feb 17:43 ATSLNZBAREOS-dir JobId 129: Recycled volume
"BCK-ATN32YBK32-fd-Full"
17-Feb 17:43 ATSLNZBAREOS-dir JobId 129: Using Device "FileStorageAT1" to write.
Can some one point me into the right direction? Any help would be highly
appreciated!!!! I’m going nuts here….
--
You received this message because you are subscribed to the Google Groups
"bareos-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/d/optout.