Hi, I'm having some troubles with bacula failing to perform automatic backups. The issue seems to be that the storage daemon is not automatically labelling a new volume. The setup looks like this:

Director lives on an Intel server running Ubuntu 10.04.2 LTS, the installed version of bacula is from the packages for this release: 5.0.1

Storage daemons live on a pair of Netgear ReadyNAS NV+ (sparc-based NAS boxes) using 5.0.1 compiled natively on a ReadyNAS box. The NV+ is running Linux 2.6.17.14ReadyNAS and I believe this is a re-packaged Debian Sarge

We have File daemons (version 5.0.3) deployed on a range of Windows 2003, 2000 and Ubuntu server boxes.

We do a full backup each Saturday morning, then each weeknight we write an incremental. The director config has has custom schedules so that alternate weeks are written to different storage daemons.

The problems seemed to start occurring when the volume names rolled over from Incr-0099 to Incr-0100 (that is the first instance I can find of this issue, anyway). I don't know if this is coincidence or not. When the problem occurred, we got this in the director's logs:

12-Apr 22:00 rm-bac-1-dir JobId 173: Start Backup JobId 173, Job=rov-impac-1-tshome.2011-04-12_22.00.00_53
12-Apr 22:00 rm-bac-1-dir JobId 173: Using Device "rm-nas-1-rov-impac-1"
12-Apr 21:53 rov-impac-1-fd JobId 173: DIR and FD clocks differ by -381 seconds, FD automatically compensating. 12-Apr 21:51 rm-nas-1.radoncvic.com.au JobId 173: Job rov-impac-1-tshome.2011-04-12_22.00.00_53 is waiting. Cannot find any appendable volumes.
Please use the "label" command to create a new Volume for:
    Storage:      "rm-nas-1-rov-impac-1" (/c/bacula/rov-impac-1)
    Pool:         Incremental
    Media type:   File1
12-Apr 22:05 rm-bac-1-dir JobId 173: Created new Volume "Incr-0101" in catalogue. 12-Apr 21:56 rm-nas-1.radoncvic.com.au JobId 173: Warning: mount.c:221 Open device "rm-nas-1-rov-impac-1" (/c/bacula/rov-impac-1) Volume "Incr-0101" failed: ERR=dev.c:548 Could not open: /c/bacula/rov-impac-1/Incr-0101, ERR=No such file or directory

There don't seem to be any permission or related issues preventing the volume being created. After re-starting the SD it is able to create new volumes (for a while, anyhow).

I can either go and manually issue a label command in bconsole, or I can go restart the SD and DIR and it'll all work again for a few days. However neither of those is really a proper solution.

If anyone can help, I would very much appreciate it.

I have attached config files for the director, and one of the storage daemons. Please let me know if there is more detail I can provide.

I will note that I have allowed up to 10 simultaneous jobs in the director - I recall reading that this was not recommended, however I was unsure if that recommendation was current, and frankly, the ability to run multiple jobs concurrently is quite desirable to use our network efficiently. If anyone thinks this might be the issue, I can try running with concurrency set to 1.

If you're interested, there's a lot more detail about the project here:
http://pyarra.blogspot.com/2011/03/disk-based-backup-solution-bacula.html
http://pyarra.blogspot.com/2011/03/bacula-mis-matched-director-and-storage.html
http://pyarra.blogspot.com/2011/03/problems-cross-compiling-bacula-501-for.html
http://pyarra.blogspot.com/2011/03/cross-compiling-i-admit-defeat.html
http://pyarra.blogspot.com/2011/03/compiling-bacula-natively-on-readynas.html

Any other comments on what I have set up would be appreciated - I think I've set up something reasonable, but independent sanity checks would be great.

My suspicion is that the issue is on the storage daemon. I've now set them to create debug level output (using-v -dt -d 200) which I have redirected to a file, so I hope to have more info in future.

Regards, Philip.


--
Philip Yarra
System Administrator
Radiation Oncology Victoria
phone: 0447 502 176
email: pya...@radoncvic.com.au

#
# Default Bacula Director Configuration file
#
#  The only thing that MUST be changed is to add one or more
#   file or directory names in the Include directive of the
#   FileSet resource.
#
#  For Bacula release 5.0.1 (24 February 2010) -- ubuntu 10.04
#
#  You might also want to change the default email address
#   from root to your address.  See the "mail" and "operator"
#   directives in the Messages resource.
#

Director {                            # define myself
  Name = rm-bac-1-dir
  DIRport = 9101                # where we listen for UA connections
  QueryFile = "/etc/bacula/scripts/query.sql"
  WorkingDirectory = "/var/lib/bacula"
  PidDirectory = "/var/run/bacula"
  Maximum Concurrent Jobs = 10
  Password = "removed"
  Messages = Daemon
  DirAddress = 127.0.0.1
}

JobDefs {
  Name = "DefaultJob"
  Type = Backup
  Level = Incremental
  Client = rm-bac-1
  FileSet = "Full Set"
  #Schedule = "WeeklyCycle"
  Pool = Full
  # this default storage shold not be used, provided only beecause a defalt is 
required
  Storage = rm-nas-1-catalog
  Messages = Standard
  Full Backup Pool = Full
  Incremental Backup Pool = Incremental
  Priority = 10
  Write Bootstrap = "/var/lib/bacula/%c.bsr"
}


#
# Define the main nightly save backup job
#   By default, this job will back up to disk in 
/nonexistant/path/to/file/archive/dir
#Job {
#  Name = "rm-bac-1"
#  JobDefs = "DefaultJob"
#}

Job {
  Name = "wd-server-user-shares"
  Client = wd-server
  FileSet = "wd-server-users-fileset"
  Type = Backup
  JobDefs = "DefaultJob"
  Schedule = "WeeklyCycle-wd-server"
}

Job {
  Name = "em-fap-user-shares"
  Client = em-fap
  FileSet = "em-fap-users-fileset"
  Type = Backup
  JobDefs = "DefaultJob"
  Schedule = "WeeklyCycle-em-fap"
}

# Backup the catalog database (after the nightly save)
Job {
  Name = "BackupCatalog"
  JobDefs = "DefaultJob"
  Level = Full
  FileSet="Catalog"
  Schedule = "WeeklyCycleAfterBackup"
  # This creates an ASCII copy of the catalog
  # Arguments to make_catalog_backup.pl are:
  #  make_catalog_backup.pl <catalog-name>
  RunBeforeJob = "/etc/bacula/scripts/make_catalog_backup.pl MyCatalog"
  # This deletes the copy of the catalog
  RunAfterJob  = "/etc/bacula/scripts/delete_catalog_backup"
  Write Bootstrap = "/var/lib/bacula/%n.bsr"
  Priority = 11                   # run after main backup
}

Job {
  Name = "rg-server-user-shares"
  Client = rg-server
  FileSet = "rg-server-users-fileset"
  Type = Backup
  JobDefs = "DefaultJob"
  Schedule = "WeeklyCycle-rg-server"
}

Job {
  Name = "ep-server-user-shares"
  Client = ep-server
  FileSet = "ep-server-users-fileset"
  Type = Backup
  JobDefs = "DefaultJob"
  Schedule = "WeeklyCycle-ep-server"
}

Job {
  Name = "fr-server-user-shares"
  Client = fr-server
  FileSet = "fr-server-users-fileset"
  Type = Backup
  JobDefs = "DefaultJob"
  Schedule = "WeeklyCycle-fr-server"
}

Job {
  Name = "rov-impac-1-tshome"
  Client = rov-impac-1
  FileSet = "rov-impac-1-tshome-fileset"
  Type = Backup
  JobDefs = "DefaultJob"
  Schedule = "WeeklyCycle-rov-impac-1"
}

Job {
  Name = "zevon-home"
  Client = zevon
  FileSet = "zevon-home-fileset"
  Type = Backup
  JobDefs = "DefaultJob"
  Schedule = "WeeklyCycle-zevon"
}

Job {
  Name = "rov-citrix-cs-documents"
  Client = rov-citrix-cs
  FileSet = "rov-citrix-cs-documents-fileset"
  Type = Backup
  JobDefs = "DefaultJob"
  Schedule = "WeeklyCycle-rov-citrix-cs"
}



#
# Standard Restore template, to be changed by Console program
#  Only one such job is needed for all Jobs/Clients/Storage ...
#
Job {
  Name = "RestoreFiles"
  Type = Restore
  Client = rm-bac-1
  FileSet="Full Set"                  
  # default is required, this would not work for most restores, as it is 
overridden
  Storage = rm-nas-1-catalog
  Pool = Default
  Messages = Standard
  Where = /tmp/bacula-restores
}


# List of files to be backed up
FileSet {
  Name = "Full Set"
  Include {
    Options {
      signature = MD5
    }
#    
#  Put your list of files here, preceded by 'File =', one per line
#    or include an external list with:
#
#    File = <file-name
#
#  Note: / backs up everything on the root partition.
#    if you have other partitions such as /usr or /home
#    you will probably want to add them too.
#
#
    File = /
  }

#
# If you backup the root directory, the following two excluded
#   files can be useful
#
  Exclude {
    File = /var/lib/bacula
    File = /nonexistant/path/to/file/archive/dir
    File = /proc
    File = /tmp
    File = /.journal
    File = /.fsck
  }
}

FileSet {
  Name = wd-server-users-fileset
  Enable VSS = yes
  Include {
     Options {
       signature = SHA1
       compression = GZIP
     }
      File = "E:/shares/users"
   }
}

FileSet {
  Name = em-fap-users-fileset
  Enable VSS = yes
  Include {
     Options {
       signature = SHA1
       compression = GZIP
     }
      File = "E:/shares/users"
   }
}

FileSet {
  Name = rg-server-users-fileset
  Enable VSS = no
  Include {
     Options {
       signature = SHA1
       compression = GZIP
     }
      File = "D:/users"
   }
}

FileSet {
  Name = ep-server-users-fileset
  Enable VSS = yes
  Include {
     Options {
       signature = SHA1
       compression = GZIP
     }
      File = "C:/shares/users"
      File = "C:/shares/rt-docs"
   }
}

FileSet {
  Name = fr-server-users-fileset
  Enable VSS = yes
  Include {
     Options {
       signature = SHA1
       compression = GZIP
     }
      File = "D:/users"
   }
}

FileSet {
  Name = rov-impac-1-tshome-fileset
  Enable VSS = no
  Include {
     Options {
       signature = SHA1
       compression = GZIP
     }
     Options {
       WildDir = "F:/TSHome/*/temp"
       IgnoreCase = yes
       Exclude = yes
     }
      File = "F:/TSHome"
   }
   Exclude {
      File = "F:/TSHome/backup-20101014"
   }
}

FileSet {
  Name = zevon-home-fileset
  Enable VSS = no
  Include {
     Options {
       signature = SHA1
       compression = GZIP
     }
      File = "home"
   }
}

FileSet {
  Name = rov-citrix-cs-documents-fileset
  Enable VSS = no
  Include {
     Options {
       signature = SHA1
       compression = GZIP
     }
      File = "C:/Documents and Settings/"
   }
}





#
# When to do the backups
# The week starts on Monday, so to keep the full + all its incrementals on the 
same storage, the sat and weekday 
# jobs have to be specified in different weeks. It looks "wrong", but it is 
required

Schedule {
  Name = "WeeklyCycle-em-fap"
  Run = Storage=rm-nas-1-em-fap Level=Full on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 sat at 01:00
  Run = Storage=rm-nas-1-em-fap Level=Incremental on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 mon-fri at 22:00

  Run = Storage=rm-nas-2-em-fap Level=Full on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 sat at 01:00
  Run = Storage=rm-nas-2-em-fap Level=Incremental on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 mon-fri at 22:00
}

Schedule {
  Name = "WeeklyCycle-wd-server"
  Run = Storage=rm-nas-1-wd-server Level=Full on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 sat at 01:00
  Run = Storage=rm-nas-1-wd-server Level=Incremental on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 mon-fri at 22:00

  Run = Storage=rm-nas-2-wd-server Level=Full on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 sat at 01:00
  Run = Storage=rm-nas-2-wd-server Level=Incremental on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 mon-fri at 22:00
}

# This schedule does the catalog. It starts after the WeeklyCycle
Schedule {
  Name = "WeeklyCycleAfterBackup"
  #Run = Full sun-sat at 23:50
  Run = Storage=rm-nas-1-catalog Level=Full on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 sun at 19:00
  Run = Storage=rm-nas-2-catalog Level=Full on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 sun at 19:00
}

Schedule {
  Name = "WeeklyCycle-rg-server"
  Run = Storage=rm-nas-1-rg-server Level=Full on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 sat at 01:00
  Run = Storage=rm-nas-1-rg-server Level=Incremental on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 mon-fri at 22:00

  Run = Storage=rm-nas-2-rg-server Level=Full on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 sat at 01:00
  Run = Storage=rm-nas-2-rg-server Level=Incremental on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 mon-fri at 22:00
}

Schedule {
  Name = "WeeklyCycle-ep-server"
  Run = Storage=rm-nas-1-ep-server Level=Full on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 sat at 01:00
  Run = Storage=rm-nas-1-ep-server Level=Incremental on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 mon-fri at 22:00

  Run = Storage=rm-nas-2-ep-server Level=Full on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 sat at 01:00
  Run = Storage=rm-nas-2-ep-server Level=Incremental on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 mon-fri at 22:00
}

Schedule {
  Name = "WeeklyCycle-fr-server"
  Run = Storage=rm-nas-1-fr-server Level=Full on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 sat at 01:00
  Run = Storage=rm-nas-1-fr-server Level=Incremental on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 mon-fri at 22:00

  Run = Storage=rm-nas-2-fr-server Level=Full on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 sat at 01:00
  Run = Storage=rm-nas-2-fr-server Level=Incremental on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 mon-fri at 22:00
}

Schedule {
  Name = "WeeklyCycle-rov-impac-1"
  Run = Storage=rm-nas-1-rov-impac-1 Level=Full on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 sat at 01:00
  Run = Storage=rm-nas-1-rov-impac-1 Level=Incremental on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 mon-fri at 22:00

  Run = Storage=rm-nas-2-rov-impac-1 Level=Full on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 sat at 01:00
  Run = Storage=rm-nas-2-rov-impac-1 Level=Incremental on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 mon-fri at 22:00
}

Schedule {
  Name = "WeeklyCycle-zevon"
  Run = Storage=rm-nas-1-zevon Level=Full on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 sat at 01:00
  Run = Storage=rm-nas-1-zevon Level=Incremental on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 mon-fri at 22:00

  Run = Storage=rm-nas-2-zevon Level=Full on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 sat at 01:00
  Run = Storage=rm-nas-2-zevon Level=Incremental on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 mon-fri at 22:00
}

Schedule {
  Name = "WeeklyCycle-rov-citrix-cs"
  Run = Storage=rm-nas-1-rov-citrix-cs Level=Full on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 sat at 01:00
  Run = Storage=rm-nas-1-rov-citrix-cs Level=Incremental on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 mon-fri at 22:00

  Run = Storage=rm-nas-2-rov-citrix-cs Level=Full on 
w01,w03,w05,w07,w09,w11,w13,w15,w17,w19,w21,w23,w25,w27,w29,w31,w33,w35,w37,w39,w41,w43,w45,w47,w49,w51
 sat at 01:00
  Run = Storage=rm-nas-2-rov-citrix-cs Level=Incremental on 
w00,w02,w04,w06,w08,w10,w12,w14,w16,w18,w20,w22,w24,w26,w28,w30,w32,w34,w36,w38,w40,w42,w44,w46,w48,w50,w52
 mon-fri at 22:00
}



# This is the backup of the catalog
FileSet {
  Name = "Catalog"
  Include {
    Options {
      signature = MD5
    }
    File = "/var/lib/bacula/bacula.sql"
  }
}

# Client (File Services) to backup
Client {
  Name = rm-bac-1
  Address = localhost
  FDPort = 9102
  Catalog = MyCatalog
  Password = "removed"
  AutoPrune = yes
}

Client {
  Name = wd-server
  Address = wd-server.ROV
  FDPort = 9102
  Catalog = MyCatalog
  Password = "removed"
  AutoPrune = yes
}

Client {
  Name = em-fap
  Address = em-fap.ROV
  FDPort = 9102
  Catalog = MyCatalog
  Password = "removed"
  AutoPrune = yes
}

Client {
  Name = rg-server
  Address = rg-server.ROV
  FDPort = 9102
  Catalog = MyCatalog
  Password = "removed"
  AutoPrune = yes                     # Prune expired Jobs/Files

}

Client {
  Name = ep-server
  Address = ep-server.ROV
  FDPort = 9102
  Catalog = MyCatalog
  Password = "removed"
  AutoPrune = yes                     # Prune expired Jobs/Files
}

Client {
  Name = fr-server
  Address = fr-server.ROV
  FDPort = 9102
  Catalog = MyCatalog
  Password = "removed"
  AutoPrune = yes                     # Prune expired Jobs/Files
}

Client {
  Name = rov-impac-1
  Address = rov-impac-1.ROV
  FDPort = 9102
  Catalog = MyCatalog
  Password = "removed"
  AutoPrune = yes                     # Prune expired Jobs/Files
}

Client {
  Name = zevon
  Address = zevon.ROV
  FDPort = 9102
  Catalog = MyCatalog
  Password = "removed"
  AutoPrune = yes                     # Prune expired Jobs/Files
}

Client {
  Name = rov-citrix-cs
  Address = rov-citrix-cs.ROV
  FDPort = 9102
  Catalog = MyCatalog
  Password = "removed"
  AutoPrune = yes                     # Prune expired Jobs/Files
}



# Definition of file storage device
#Storage {
#  Name = File
#  Address = localhost                # N.B. Use a fully qualified name here
#  SDPort = 9103
#  Password = "removed"
#  Device = FileStorage
#  Media Type = File
#}

Storage {
  Name = rm-nas-1-wd-server
  Address = rm-nas-1.ROV
  SDPort = 9103
  Device = rm-nas-1-wd-server
  Media Type = File1
  Password = "removed"
}

Storage {
  Name = rm-nas-2-wd-server
  Address = rm-nas-2.ROV
  SDPort = 9103
  Device = rm-nas-2-wd-server
  Media Type = File2
  Password = "removed"
}

Storage {
  Name = rm-nas-1-em-fap
  Address = rm-nas-1.ROV
  SDPort = 9103
  Device = rm-nas-1-em-fap
  Media Type = File1
  Password = "removed"
}

Storage {
  Name = rm-nas-2-em-fap
  Address = rm-nas-2.ROV
  SDPort = 9103
  Device = rm-nas-2-em-fap
  Media Type = File2
  Password = "removed"
}

Storage {
  Name = rm-nas-1-catalog
  Address = rm-nas-1.ROV
  SDPort = 9103
  Device = rm-nas-1-catalog
  Media Type = File1
  Password = "removed"
}

Storage {
  Name = rm-nas-2-catalog
  Address = rm-nas-2.ROV
  SDPort = 9103
  Device = rm-nas-2-catalog
  Media Type = File2
  Password = "removed"
}

Storage {
  Name = rm-nas-1-rg-server
  Address = rm-nas-1.ROV
  SDPort = 9103
  Device = rm-nas-1-rg-server
  Media Type = File1
  Password = "removed"
}

Storage {
  Name = rm-nas-2-rg-server
  Address = rm-nas-2.ROV
  SDPort = 9103
  Device = rm-nas-2-rg-server
  Media Type = File2
  Password = "removed"
}

Storage {
  Name = rm-nas-1-ep-server
  Address = rm-nas-1.ROV
  SDPort = 9103
  Device = rm-nas-1-ep-server
  Media Type = File1
  Password = "removed"
}

Storage {
  Name = rm-nas-2-ep-server
  Address = rm-nas-2.ROV
  SDPort = 9103
  Device = rm-nas-2-ep-server
  Media Type = File2
  Password = "removed"
}

Storage {
  Name = rm-nas-1-fr-server
  Address = rm-nas-1.ROV
  SDPort = 9103
  Device = rm-nas-1-fr-server
  Media Type = File1
  Password = "removed"
}

Storage {
  Name = rm-nas-2-fr-server
  Address = rm-nas-2.ROV
  SDPort = 9103
  Device = rm-nas-2-fr-server
  Media Type = File2
  Password = "removed"
}

Storage {
  Name = rm-nas-1-rov-impac-1
  Address = rm-nas-1.ROV
  SDPort = 9103
  Device = rm-nas-1-rov-impac-1
  Media Type = File1
  Password = "removed"
}

Storage {
  Name = rm-nas-2-rov-impac-1
  Address = rm-nas-2.ROV
  SDPort = 9103
  Device = rm-nas-2-rov-impac-1
  Media Type = File2
  Password = "removed"
}

Storage {
  Name = rm-nas-1-zevon
  Address = rm-nas-1.ROV
  SDPort = 9103
  Device = rm-nas-1-zevon
  Media Type = File1
  Password = "removed"
}

Storage {
  Name = rm-nas-2-zevon
  Address = rm-nas-2.ROV
  SDPort = 9103
  Device = rm-nas-2-zevon
  Media Type = File2
  Password = "removed"
}

Storage {
  Name = rm-nas-1-rov-citrix-cs
  Address = rm-nas-1.ROV
  SDPort = 9103
  Device = rm-nas-1-rov-citrix-cs
  Media Type = File1
  Password = "removed"
}

Storage {
  Name = rm-nas-2-rov-citrix-cs
  Address = rm-nas-2.ROV
  SDPort = 9103
  Device = rm-nas-2-rov-citrix-cs
  Media Type = File2
  Password = "removed"
}



# Generic catalog service
Catalog {
  Name = MyCatalog
# Uncomment the following line if you want the dbi driver
# dbdriver = "dbi:sqlite3"; dbaddress = 127.0.0.1; dbport =  
  dbname = bacula; DB Address = ""; dbuser = "bacula"; dbpassword = "blacula"
}

# Reasonable message delivery -- send most everything to email address
#  and to the console
Messages {
  Name = Standard
#
# NOTE! If you send to two email or more email addresses, you will need
#  to replace the %r in the from field (-f part) with a single valid
#  email address in both the mailcommand and the operatorcommand.
#  What this does is, it sets the email address that emails would display
#  in the FROM field, which is by default the same email as they're being
#  sent to.  However, if you send email to more than one address, then
#  you'll have to set the FROM address manually, to a single address. 
#  for example, a 'no-re...@mydomain.com', is better since that tends to
#  tell (most) people that its coming from an automated source.

#
  mailcommand = "/usr/lib/bacula/bsmtp -h mail.ROV -f \"\(Bacula\) 
\<admin@ROV\>\" -s \"Bacula: %t %e of %c %l\" %r"
  operatorcommand = "/usr/lib/bacula/bsmtp -h mail.ROV -f \"\(Bacula\) 
\<admin@ROV\>\" -s \"Bacula: Intervention needed for %j\" %r"
  mail = admin@ROV = all, !skipped            
  operator =  admin@ROV = mount
  console = all, !skipped, !saved
#
# WARNING! the following will create a file that you must cycle from
#          time to time as it will grow indefinitely. However, it will
#          also keep all your messages if they scroll off the console.
#
  append = "/var/lib/bacula/log" = all, !skipped
  catalog = all
}


#
# Message delivery for daemon messages (no job).
Messages {
  Name = Daemon
  mailcommand = "/usr/lib/bacula/bsmtp -h mail.ROV -f \"\(Bacula\) 
\<admin@ROV\>\" -s \"Bacula daemon message\" %r"
  mail = admin@ROV = all, !skipped            
  console = all, !skipped, !saved
  append = "/var/lib/bacula/log" = all, !skipped
}

# Default pool definition
Pool {
  Name = Default
  Pool Type = Backup
  Recycle = yes                       # Bacula can automatically recycle Volumes
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 365 days         # one year
}

# File Pool definition
Pool {
  Name = Full
  Pool Type = Backup
  Recycle = no
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 365 days         # one year
  Use Volume Once = yes
  LabelFormat = "Full-"
}

Pool {
  Name = Incremental
  Pool Type = Backup
  Recycle = no
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 28 days
  Use Volume Once = yes
  LabelFormat = "Incr-"
}



# Scratch pool definition
Pool {
  Name = Scratch
  Pool Type = Backup
}

#
# Restricted console used by tray-monitor to get the status of the director
#
Console {
  Name = rm-bac-1-mon
  Password = "removed"
  CommandACL = status, .status
}
#
# Default Bacula Storage Daemon Configuration file
#
#  For Bacula release 3.0.3 (18 October 2009) -- debian 
#
# You may need to change the name of your tape drive
#   on the "Archive Device" directive in the Device
#   resource.  If you change the Name and/or the 
#   "Media Type" in the Device resource, please ensure
#   that dird.conf has corresponding changes.
#

Storage {                             # definition of myself
  Name = rm-nas-1.ROV
  SDPort = 9103                  # Director's port      
  WorkingDirectory = "/var/lib/bacula/working"
  Pid Directory = "/var/run"
  Maximum Concurrent Jobs = 20
}

#
# List Directors who are permitted to contact Storage daemon
#
Director {
  Name = rm-bac-1-dir
  Password = "gone"
}


#
# Devices supported by this Storage daemon
# To connect, the Director's bacula-dir.conf must have the
#  same Name and MediaType. 
#

Device {
  Name = rm-nas-1-wd-server
  Media Type = File1
  Archive Device = /c/bacula/wd-server
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
}

Device {                                                  
  Name = rm-nas-1-em-fap
  Media Type = File1                                      
  Archive Device = /c/bacula/em-fap
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;                                                   
  AutomaticMount = yes;               # when device opened, read it      
  RemovableMedia = no;                                                   
  AlwaysOpen = no;                                                       
} 

Device {                                                                 
  Name = rm-nas-1-catalog
  Media Type = File1                                                     
  Archive Device = /c/bacula/catalog
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;                                                   
  AutomaticMount = yes;               # when device opened, read it      
  RemovableMedia = no;                                                   
  AlwaysOpen = no;                                                       
}  

Device {                                                                 
  Name = rm-nas-1-rg-server
  Media Type = File1                                                     
  Archive Device = /c/bacula/rg-server
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;                                                   
  AutomaticMount = yes;               # when device opened, read it      
  RemovableMedia = no;                                                   
  AlwaysOpen = no;                                                       
}      

Device {                          
  Name = rm-nas-1-ep-server                       
  Media Type = File1                          
  Archive Device = /c/bacula/ep-server
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;                                          
}

Device {                                     
  Name = rm-nas-1-fr-server
  Media Type = File1
  Archive Device = /c/bacula/fr-server                      
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;                            
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;      
  AlwaysOpen = no;            
}

Device {                                              
  Name = rm-nas-1-rov-impac-1
  Media Type = File1
  Archive Device = /c/bacula/rov-impac-1
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;            
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;                        
  AlwaysOpen = no;          
}   

Device {                                              
  Name = rm-nas-1-zevon
  Media Type = File1
  Archive Device = /c/bacula/zevon
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;            
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;                        
  AlwaysOpen = no;          
}   

Device {
  Name = rm-nas-1-rov-citrix-cs
  Media Type = File1
  Archive Device = /c/bacula/rov-citrix-cs
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
}


# 
# Send all messages to the Director, 
# mount messages also are sent to the email address
#
Messages {
  Name = Standard
  director = rm-bac-1.ROV = all
}

Messages
{
   Name = Debug
   append = "/var/log/bacula-sd.log" = all
}
------------------------------------------------------------------------------
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network 
management toolset available today.  Delivers lowest initial 
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd
_______________________________________________
Bacula-users mailing list
Bacula-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-users

Reply via email to