On Thu, Nov 29, 2007 at 11:19:43AM -0500, Michael Galloway wrote:
> On Thu, Nov 29, 2007 at 11:06:05AM -0500, Flak Magnet wrote:
> > Don't configure your jobs to USE the scratch pool. That's the root of the
> > issue.
> >
> > Instead, set your job's pool to be something else OTHER than "Scratch",
> > let's
> > say it's "Client1_Pool" just for example. Of course, you'll have to define
> > the pool to the director and reload the config before you run the job.
> > It's
> > a good idea to test the config before you actually issue the "reload"
> > command. Speak up if you need help with that.
> >
> > When your job "Client1" runs, if there are valid volumes in "Client1_Pool"
> > then bacula will use a volume in the "Client1_Pool".
> >
> > If there is NOT a valid volume in the "Client1_Pool" THEN bacula will
> > re-assign an appropriate volume from the "Scratch" pool into "Client1_Pool"
> > and use that one.
> >
> > So your jobs should never be explicitly told to use the Scratch pool.
> > Bacula
> > does it automagically.
> >
> > I hope that helps it make sense.
> >
> > --Tim
> >
>
> like this:
>
> *list pools
> +--------+---------+---------+---------+----------+-------------+
> | poolid | name | numvols | maxvols | pooltype | labelformat |
> +--------+---------+---------+---------+----------+-------------+
> | 1 | Default | 0 | 0 | Backup | * |
> | 2 | Scratch | 10 | 0 | Backup | * |
> | 3 | Full | 0 | 0 | Backup | * |
> +--------+---------+---------+---------+----------+-------------+
>
> and the job:
>
> Run Backup job
> JobName: Client1
> Level: Full
> Client: molbio-fd
> FileSet: Full Set
> Pool: Full (From Job resource)
> Storage: LTO4 (From Job resource)
> When: 2007-11-29 11:17:32
> Priority: 10
>
> and again:
>
> 29-Nov 11:18 molbio-dir JobId 9: Start Backup JobId 9,
> Job=Client1.2007-11-29_11.18.03
> 29-Nov 11:18 molbio-dir JobId 9: Using Device "LTO4"
> 29-Nov 11:18 molbio-sd JobId 9: Job Client1.2007-11-29_11.18.03 waiting.
> Cannot find any appendable volumes.
> Please use the "label" command to create a new Volume for:
> Storage: "LTO4" (/dev/nst0)
> Pool: Full
> Media type: Ultrium-4
>
>
sorry, should have included this, bacula-dir.conf, bacula-sd.conf, this is
bacula version 2.2.5:
#
# 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 2.2.5 (09 October 2007) -- redhat
#
# 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 = molbio-dir
DIRport = 9101 # where we listen for UA connections
QueryFile = "/opt/bacula/bin/query.sql"
WorkingDirectory = "/opt/bacula/bin/working"
PidDirectory = "/opt/bacula/bin/working"
Maximum Concurrent Jobs = 1
Password = "KEI+uWMRWamvrL7luIICAgj8UnNg0XFfNvGyz5/LgT3d" # Console
password
Messages = Daemon
}
JobDefs {
Name = "DefaultJob"
Type = Backup
Level = Incremental
Client = molbio-fd
FileSet = "Full Set"
Schedule = "WeeklyCycle"
Storage = LTO4
Messages = Standard
Pool = Full
Priority = 10
}
#
# Define the main nightly save backup job
# By default, this job will back up to disk in /tmp
Job {
Name = "Client1"
JobDefs = "DefaultJob"
Write Bootstrap = "/opt/bacula/bin/working/Client1.bsr"
}
#Job {
# Name = "Client2"
# Client = molbio2-fd
# JobDefs = "DefaultJob"
# Write Bootstrap = "/opt/bacula/bin/working/Client2.bsr"
#}
# 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
RunBeforeJob = "/opt/bacula/bin/make_catalog_backup bacula bacula"
# This deletes the copy of the catalog
RunAfterJob = "/opt/bacula/bin/delete_catalog_backup"
Write Bootstrap = "/opt/bacula/bin/working/BackupCatalog.bsr"
Priority = 11 # run after main backup
}
#
# 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=molbio-fd
FileSet="Full Set"
Storage = File
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 partitons such as /usr or /home
# you will probably want to add them too.
#
# By default this is defined to point to the Bacula build
# directory to give a reasonable FileSet to backup to
# disk storage during initial testing.
#
File = /usr/local/bacula-2.2.5.patched
File = /data7
File = /data9
File = /home
}
#
# If you backup the root directory, the following two excluded
# files can be useful
#
Exclude {
File = /proc
File = /tmp
File = /.journal
File = /.fsck
}
}
#
# When to do the backups, full backup on first sunday of the month,
# differential (i.e. incremental since full) every other sunday,
# and incremental backups other days
Schedule {
Name = "WeeklyCycle"
Run = Full 1st sun at 23:05
Run = Differential 2nd-5th sun at 23:05
Run = Incremental mon-sat at 23:05
}
# This schedule does the catalog. It starts after the WeeklyCycle
Schedule {
Name = "WeeklyCycleAfterBackup"
Run = Full sun-sat at 23:10
}
# This is the backup of the catalog
FileSet {
Name = "Catalog"
Include {
Options {
signature = MD5
}
File = /opt/bacula/bin/working/bacula.sql
}
}
# Client (File Services) to backup
Client {
Name = molbio-fd
Address = molbio
FDPort = 9102
Catalog = MyCatalog
Password = "SGubme82FVv/4EMOTFyEGTwKTB/W/zvpxhQ3cqbw1eAa" # password
for FileDaemon
File Retention = 30 days # 30 days
Job Retention = 6 months # six months
AutoPrune = yes # Prune expired Jobs/Files
}
#
# Second Client (File Services) to backup
# You should change Name, Address, and Password before using
#
#Client {
# Name = molbio2-fd
# Address = molbio2
# FDPort = 9102
# Catalog = MyCatalog
# Password = "SGubme82FVv/4EMOTFyEGTwKTB/W/zvpxhQ3cqbw1eAa2" #
password for FileDaemon 2
# File Retention = 30 days # 30 days
# Job Retention = 6 months # six months
# AutoPrune = yes # Prune expired Jobs/Files
#}
# Definition of file storage device
Storage {
Name = File
# Do not use "localhost" here
Address = molbio # N.B. Use a fully qualified name here
SDPort = 9103
Password = "UuAUYYC7rEfS20LW2DDVXIAom4i9NiYp7WKEcQki5LdN"
Device = FileStorage
Media Type = File
}
# Definition of DDS tape storage device
#Storage {
# Name = DDS-4
# Do not use "localhost" here
# Address = molbio # N.B. Use a fully qualified name here
# SDPort = 9103
# Password = "UuAUYYC7rEfS20LW2DDVXIAom4i9NiYp7WKEcQki5LdN" #
password for Storage daemon
# Device = DDS-4 # must be same as Device in Storage
daemon
# Media Type = DDS-4 # must be same as MediaType in Storage
daemon
# Autochanger = yes # enable for autochanger device
#}
# Definition of 8mm tape storage device
Storage {
Name = "LTO4"
## Do not use "localhost" here
Address = molbio # N.B. Use a fully qualified name here
SDPort = 9103
Password = "UuAUYYC7rEfS20LW2DDVXIAom4i9NiYp7WKEcQki5LdN"
Device = "LTO4"
MediaType = Ultrium-4
}
# Definition of DVD storage device
#Storage {
# Name = "DVD"
# Do not use "localhost" here
# Address = molbio # N.B. Use a fully qualified name here
# SDPort = 9103
# Password = "UuAUYYC7rEfS20LW2DDVXIAom4i9NiYp7WKEcQki5LdN"
# Device = "DVD Writer"
# MediaType = "DVD"
#}
# Generic catalog service
Catalog {
Name = MyCatalog
dbname = bacula; user = bacula; password = ""
}
# 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 '[EMAIL PROTECTED]', is better since that tends to
# tell (most) people that its coming from an automated source.
#
mailcommand = "/opt/bacula/bin/bsmtp -h smtp.ornl.gov -f \"\(Bacula\)
\<%r\>\" -s \"Bacula: %t %e of %c %l\" %r"
operatorcommand = "/opt/bacula/bin/bsmtp -h smtp.ornl.gov -f \"\(Bacula\)
\<%r\>\" -s \"Bacula: Intervention needed for %j\" %r"
mail = [EMAIL PROTECTED] = all, !skipped
operator = [EMAIL PROTECTED] = 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 = "/opt/bacula/bin/working/log" = all, !skipped
}
#
# Message delivery for daemon messages (no job).
Messages {
Name = Daemon
mailcommand = "/opt/bacula/bin/bsmtp -h smtp.ornl.gov -f \"\(Bacula\)
\<%r\>\" -s \"Bacula daemon message\" %r"
mail = [EMAIL PROTECTED] = all, !skipped
console = all, !skipped, !saved
append = "/opt/bacula/bin/working/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
}
Pool {
Name = Full
Pool Type = Backup
Recycle = yes
AutoPrune = yes
Volume Retention = 5 days
}
# Scratch pool definition
Pool {
Name = Scratch
Pool Type = Backup
}
#
# Restricted console used by tray-monitor to get the status of the director
#
Console {
Name = molbio-mon
Password = "1CksxZhq0Sm6ac9EU5ASeS3Q99ezk1DEMcpKm2f28Jzu"
CommandACL = status, .status
}
#
# Default Bacula Storage Daemon Configuration file
#
# For Bacula release 2.2.5 (09 October 2007) -- redhat
#
# 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 = molbio-sd
SDPort = 9103 # Director's port
WorkingDirectory = "/opt/bacula/bin/working"
Pid Directory = "/opt/bacula/bin/working"
Maximum Concurrent Jobs = 20
}
#
# List Directors who are permitted to contact Storage daemon
#
Director {
Name = molbio-dir
Password = "UuAUYYC7rEfS20LW2DDVXIAom4i9NiYp7WKEcQki5LdN"
}
#
# Restricted Director, used by tray-monitor to get the
# status of the storage daemon
#
Director {
Name = molbio-mon
Password = "L5Su3oBmUlFGUTqN28TxSwPCXj08Cn+B6CtSqWmzeYxD"
Monitor = yes
}
#
# Devices supported by this Storage daemon
# To connect, the Director's bacula-dir.conf must have the
# same Name and MediaType.
#
Device {
Name = FileStorage
Media Type = File
Archive Device = /tmp
LabelMedia = yes; # lets Bacula label unlabeled media
Random Access = Yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
}
#
# An autochanger device with two drives
#
Autochanger {
Name = Autochanger
Device = LTO4
# Device = Drive-2
Changer Command = "/opt/bacula/bin/mtx-changer %c %o %S %a %d"
Changer Device = /dev/sg4
}
Device {
Name = LTO4 #
Drive Index = 0
Media Type = Ultrium-4
Archive Device = /dev/nst0
AutomaticMount = yes; # when device opened, read it
AlwaysOpen = yes;
RemovableMedia = yes;
RandomAccess = no;
Hardware End of Medium = No
Fast Forward Space File = No
AutoChanger = yes
# # Enable the Alert command only if you have the mtx package loaded
# # Note, apparently on some systems, tapeinfo resets the SCSI controller
# # thus if you turn this on, make sure it does not reset your SCSI
# # controller. I have never had any problems, and smartctl does
# # not seem to cause such problems.
# #
# Alert Command = "sh -c 'tapeinfo -f %c |grep TapeAlert|cat'"
# If you have smartctl, enable this, it has more info than tapeinfo
# Alert Command = "sh -c 'smartctl -H -l error %c'"
}
#Device {
# Name = Drive-2 #
# Drive Index = 1
# Media Type = DLT-8000
# Archive Device = /dev/nst1
# AutomaticMount = yes; # when device opened, read it
# AlwaysOpen = yes;
# RemovableMedia = yes;
# RandomAccess = no;
# AutoChanger = yes
# # Enable the Alert command only if you have the mtx package loaded
# Alert Command = "sh -c 'tapeinfo -f %c |grep TapeAlert|cat'"
# If you have smartctl, enable this, it has more info than tapeinfo
# Alert Command = "sh -c 'smartctl -H -l error %c'"
#}
#
# A Linux or Solaris tape drive
#
#Device {
# Name = DDS-4 #
# Media Type = DDS-4
# Archive Device = /dev/nst0
# AutomaticMount = yes; # when device opened, read it
# AlwaysOpen = yes;
# RemovableMedia = yes;
# RandomAccess = no;
## Changer Command = "/opt/bacula/bin/mtx-changer %c %o %S %a %d"
## Changer Device = /dev/sg0
## AutoChanger = yes
# # Enable the Alert command only if you have the mtx package loaded
## Alert Command = "sh -c 'tapeinfo -f %c |grep TapeAlert|cat'"
## If you have smartctl, enable this, it has more info than tapeinfo
## Alert Command = "sh -c 'smartctl -H -l error %c'"
#}
#
# A FreeBSD tape drive
#
#Device {
# Name = DDS-4
# Description = "DDS-4 for FreeBSD"
# Media Type = DDS-4
# Archive Device = /dev/nsa1
# AutomaticMount = yes; # when device opened, read it
# AlwaysOpen = yes
# Offline On Unmount = no
# Hardware End of Medium = no
# BSF at EOM = yes
# Backward Space Record = no
# Fast Forward Space File = no
# TWO EOF = yes
# If you have smartctl, enable this, it has more info than tapeinfo
# Alert Command = "sh -c 'smartctl -H -l error %c'"
#}
#
# A OnStream tape drive.
# You need the kernel osst driver 0.9.14 or later, and
# do "mt -f /dev/nosst0 defblksize 32768" once as root.
#
#Device {
# Name = OnStream
# Description = "OnStream drive on Linux"
# Media Type = OnStream
# Archive Device = /dev/nst0
# AutomaticMount = yes; # when device opened, read it
# AlwaysOpen = yes
# Offline On Unmount = no
## The min/max blocksizes of 32768 are *required*
# Minimum Block Size = 32768
# Maximum Block Size = 32768
# If you have smartctl, enable this, it has more info than tapeinfo
# Alert Command = "sh -c 'smartctl -H -l error %c'"
#}
#
# A DVD device
#
#Device {
# Name = "DVD Writer"
# Media Type = DVD
# Device Type = DVD
# Archive Device = /dev/hdc
# LabelMedia = yes; # lets Bacula label unlabeled media
# Random Access = Yes;
# AutomaticMount = yes; # when device opened, read it
# RemovableMedia = yes;
# AlwaysOpen = no;
# MaximumPartSize = 800M;
# RequiresMount = yes;
# MountPoint = /mnt/cdrom;
# MountCommand = "/bin/mount -t iso9660 -o ro %a %m";
# UnmountCommand = "/bin/umount %m";
# SpoolDirectory = /tmp/backup;
# WritePartCommand = "/etc/bacula/dvd-handler %a write %e %v"
# FreeSpaceCommand = "/etc/bacula/dvd-handler %a free"
#}
#
# For OpenBSD OS >= 3.6
#
#Device {
# Name = DDS-3
# Media Type = DDS-3
# Archive Device = /dev/nrst0
# Use MTIOCGET= no
# BSF at EOM = yes
# TWO EOF = no
# AutomaticMount = yes;
# AlwaysOpen = yes;
# RemovableMedia = yes;
# RandomAccess = no;
# If you have smartctl, enable this, it has more info than tapeinfo
# Alert Command = "sh -c 'smartctl -H -l error %c'"
#}
#
# A very old Exabyte with no end of media detection
#
#Device {
# Name = "Exabyte 8mm"
# Media Type = "8mm"
# Archive Device = /dev/nst0
# Hardware end of medium = No;
# AutomaticMount = yes; # when device opened, read it
# AlwaysOpen = Yes;
# RemovableMedia = yes;
# RandomAccess = no;
# If you have smartctl, enable this, it has more info than tapeinfo
# Alert Command = "sh -c 'smartctl -H -l error %c'"
#}
#
# Send all messages to the Director,
# mount messages also are sent to the email address
#
Messages {
Name = Standard
director = molbio-dir = all
}
-------------------------------------------------------------------------
SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell. From the desktop to the data center, Linux is going
mainstream. Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
_______________________________________________
Bacula-users mailing list
Bacula-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-users