The Storage Daemon configuration file has relatively few resource definitions.
However, due to the great variation in backup media and system capabilities,
the storage daemon must be highly configurable. As a consequence, there are
quite a large number of directives in the Device Resource definition that
allow you to define all the characteristics of your Storage device (normally a
tape drive). Fortunately, with modern storage devices, the defaults are
sufficient, and very few directives are actually needed.
For a general discussion of configuration file and resources including the
data types recognized by Bacula, please see the
Configuration chapter of this manual. The
following Storage Resource definitions must be defined:
In general, the properties specified under the Storage resource define global
properties of the Storage daemon. Each Storage daemon configuration file must
have one and only one Storage resource definition.
The following is a typical Storage daemon Storage definition.
The Director resource specifies the Name of the Director which is permitted
to use the services of the Storage daemon. There may be multiple Director
resources. The Director Name and Password must match the corresponding
values in the Director's configuration file.
The Device Resource specifies the details of each device (normally a tape
drive) that can be used by the Storage daemon. There may be multiple
Device resources for a single Storage daemon. In general, the properties
specified within the Device resource are specific to the Device.
- Name = Device-Name
-
Specifies the Name that the Director will use when asking to backup or
restore to or from to this device. This is the logical Device name, and may
be any string up to 127 characters in length. It is generally a good idea to
make it correspond to the English name of the backup device. The physical
name of the device is specified on the Archive Device directive
described below. The name you specify here is also used in your Director's
conf file on the
Device directive in its Storage
resource.
- Archive Device = name-string
-
The specified name-string gives the system file name of the storage
device managed by this storage daemon. This will usually be the device file
name of a removable storage device (tape drive), for example " /dev/nst0" or "/dev/rmt/0mbn". For a DVD-writer, it will be for
example /dev/hdc. It may also be a directory name if you are archiving
to disk storage. In this case, you must supply the full absolute path to the
directory. When specifying a tape device, it is preferable that the
"non-rewind" variant of the device file name be given. In addition, on
systems such as Sun, which have multiple tape access methods, you must be
sure to specify to use Berkeley I/O conventions with the device. The b
in the Solaris (Sun) archive specification /dev/rmt/0mbn is what is
needed in this case. Bacula does not support SysV tape drive behavior.
As noted above, normally the Archive Device is the name of a tape drive, but
you may also specify an absolute path to an existing directory. If the Device
is a directory Bacula will write to file storage in the specified directory,
and the filename used will be the Volume name as specified in the Catalog.
If you want to write into more than one directory (i.e. to spread the load to
different disk drives), you will need to define two Device resources, each
containing an Archive Device with a different directory.
In addition to a tape device name or a directory name, Bacula will accept the
name of a FIFO. A FIFO is a special kind of file that connects two programs
via kernel memory. If a FIFO device is specified for a backup operation, you
must have a program that reads what Bacula writes into the FIFO. When the
Storage daemon starts the job, it will wait for MaximumOpenWait seconds
for the read program to start reading, and then time it out and terminate
the job. As a consequence, it is best to start the read program at the
beginning of the job perhaps with the RunBeforeJob directive. For this
kind of device, you never want to specify AlwaysOpen, because you want
the Storage daemon to open it only when a job starts, so you must explicitly
set it to No. Since a FIFO is a one way device, Bacula will not attempt
to read a label of a FIFO device, but will simply write on it. To create a
FIFO Volume in the catalog, use the add command rather than the label command to avoid attempting to write a label.
Device {
Name = FifoStorage
Media Type = Fifo
Device Type = Fifo
Archive Device = /tmp/fifo
LabelMedia = yes
Random Access = no
AutomaticMount = no
RemovableMedia = no
MaximumOpenWait = 60
AlwaysOpen = no
}
During a restore operation, if the Archive Device is a FIFO, Bacula will
attempt to read from the FIFO, so you must have an external program that
writes into the FIFO. Bacula will wait MaximumOpenWait seconds for the
program to begin writing and will then time it out and terminate the job. As
noted above, you may use the RunBeforeJob to start the writer program
at the beginning of the job.
The Archive Device directive is required.
- Device Type = type-specification
-
The Device Type specification allows you to explicitly tell Bacula
what kind of device you are defining. It the type-specification
may be one of the following:
- File
- Tells Bacula that the device is a file. It may either be a
file defined on fixed medium or a removable filesystem such as
USB. All files must be random access devices.
- Tape
- The device is a tape device and thus is sequential access. Tape devices
are controlled using ioctl() calls.
- Fifo
- The device is a first-in-first out sequential access read-only
or write-only device.
- DVD
- The device is a DVD. DVDs are sequential access for writing, but
random access for reading.
The Device Type directive is not required, and if not specified, Bacula
will attempt to guess what kind of device has been specified using the
Archive Device specification supplied. There are several advantages to
explicitly specifying the Device Type. First, on some systems, block and
character devices have the same type, which means that on those systems,
Bacula is unlikely to be able to correctly guess that a device is a DVD.
Secondly, if you explicitly specify the Device Type, the mount point
need not be defined until the device is opened. This is the case with
most removable devices such as USB that are mounted by the HAL daemon.
If the Device Type is not explicitly specified, then the mount point
must exist when the Storage daemon starts.
This directive was implemented in Bacula version 1.38.6.
- Media Type = name-string
-
The specified name-string names the type of media supported by this
device, for example, "DLT7000". Media type names are arbitrary in that you
set them to anything you want, but they must be known to the volume
database to keep track of which storage daemons can read which volumes. In
general, each different storage type should have a unique Media Type
associated with it. The same name-string must appear in the
appropriate Storage resource definition in the Director's configuration
file.
Even though the names you assign are arbitrary (i.e. you choose the name
you want), you should take care in specifying them because the Media Type
is used to determine which storage device Bacula will select during
restore. Thus you should probably use the same Media Type specification
for all drives where the Media can be freely interchanged. This is not
generally an issue if you have a single Storage daemon, but it is with
multiple Storage daemons, especially if they have incompatible media.
For example, if you specify a Media Type of "DDS-4" then during the
restore, Bacula will be able to choose any Storage Daemon that handles
"DDS-4". If you have an autochanger, you might want to name the Media Type
in a way that is unique to the autochanger, unless you wish to possibly use
the Volumes in other drives. You should also ensure to have unique Media
Type names if the Media is not compatible between drives. This
specification is required for all devices.
In addition, if you are using disk storage, each Device resource will
generally have a different mount point or directory. In order for
Bacula to select the correct Device resource, each one must have a
unique Media Type.
- Autochanger = Yes|No
-
If Yes, this device belongs to an automatic tape changer, and you
must specify an Autochanger resource that points to the Device resources. You must also specify a
Changer Device. If the Autochanger directive is set to No (default), the volume must be manually changed. You should also
have an identical directive to the
Storage resource in the Director's
configuration file so that when labeling tapes you are prompted for the slot.
- Changer Device = name-string
-
The specified name-string must be the generic SCSI device
name of the autochanger that corresponds to the normal read/write
Archive Device specified in the Device resource. This
generic SCSI device name should be specified if you have an autochanger
or if you have a standard tape drive and want to use the
Alert Command (see below). For example, on Linux systems, for
an Archive Device name of /dev/nst0, you would specify /dev/sg0 for the Changer Device name. Depending on your exact
configuration, and the number of autochangers or the type of
autochanger, what you specify here can vary. This directive is
optional. See the Using Autochangers chapter
of this manual for more details of using this and the following
autochanger directives.
- Changer Command = name-string
-
The name-string specifies an external program to be called that will
automatically change volumes as required by Bacula. Normally,
this directive will be specified only in the AutoChanger resource,
which is then used for all devices. However, you may also specify
the different Changer Command in each Device resource.
Most frequently,
you will specify the Bacula supplied mtx-changer script as follows:
Changer Command = "/path/mtx-changer %c %o %S %a %d"
and you will install the mtx on your system (found in the depkgs
release). An example of this command is in the default bacula-sd.conf file.
For more details on the substitution characters that may be specified to
configure your autochanger please see the
Autochangers chapter of this manual.
For FreeBSD users, you might want to see one of the several chio
scripts in examples/autochangers.
- Alert Command = name-string
-
The name-string specifies an external program to be called at the
completion of each Job after the device is released. The purpose of this
command is to check for Tape Alerts, which are present when something is
wrong with your tape drive (at least for most modern tape drives). The same
substitution characters that may be specified in the Changer Command may also
be used in this string. For more information, please see the
Autochangers chapter of this manual.
Note, it is not necessary to have an autochanger to use this command. The
example below uses the tapeinfo program that comes with the mtx
package, but it can be used on any tape drive. However, you will need to
specify a Changer Device directive in your Device resource (see above)
so that the generic SCSI device name can be edited into the command (with the
%c).
An example of the use of this command to print Tape Alerts in the Job report
is:
Alert Command = "sh -c 'tapeinfo -f %c | grep TapeAlert'"
and an example output when there is a problem could be:
bacula-sd Alert: TapeAlert[32]: Interface: Problem with SCSI interface
between tape drive and initiator.
- Drive Index = number
-
The Drive Index that you specify is passed to the mtx-changer script and is thus passed to the mtx program. By
default, the Drive Index is zero, so if you have only one drive in your
autochanger, everything will work normally. However, if you have
multiple drives, you must specify multiple Bacula Device resources (one
for each drive). The first Device should have the Drive Index set to 0,
and the second Device Resource should contain a Drive Index set to 1,
and so on. This will then permit you to use two or more drives in your
autochanger. As of Bacula version 1.38.0, using the Autochanger
resource, Bacula will automatically ensure that only one drive at a time
uses the autochanger script, so you no longer need locking scripts as in
the past -- the default mtx-changer script works for any number of
drives.
- Autoselect = Yes|No
-
If this directive is set to yes (default), and the Device
belongs to an autochanger, then when the Autochanger is referenced
by the Director, this device can automatically be selected. If this
directive is set to no, then the Device can only be referenced
by directly using the Device name in the Director. This is useful
for reserving a drive for something special such as a high priority
backup or restore operations.
- Maximum Changer Wait = time
-
This directive specifies the maximum time in seconds for Bacula to wait
for an autochanger to change the volume. If this time is exceeded,
Bacula will invalidate the Volume slot number stored in the catalog and
try again. If no additional changer volumes exist, Bacula will ask the
operator to intervene. The default is 5 minutes.
- Maximum Rewind Wait = time
-
This directive specifies the maximum time in seconds for Bacula to wait
for a rewind before timing out. If this time is exceeded,
Bacula will cancel the job. The default is 5 minutes.
- Maximum Open Wait = time
-
This directive specifies the maximum time in seconds for Bacula to wait
for a open before timing out. If this time is exceeded,
Bacula will cancel the job. The default is 5 minutes.
- Always Open = Yes|No
-
If Yes (default), Bacula will always keep the device open unless
specifically unmounted by the Console program. This permits
Bacula to ensure that the tape drive is always available, and properly
positioned. If you set
AlwaysOpen to no Bacula will only open the drive when
necessary, and at the end of the Job if no other Jobs are using the
drive, it will be freed. The next time Bacula wants to append to a tape
on a drive that was freed, Bacula will rewind the tape and position it to
the end. To avoid unnecessary tape positioning and to minimize
unnecessary operator intervention, it is highly recommended that Always Open = yes. This also ensures that the drive is available when
Bacula needs it.
If you have Always Open = yes (recommended) and you want to use the
drive for something else, simply use the unmount command in the Console
program to release the drive. However, don't forget to remount the drive with
mount when the drive is available or the next Bacula job will block.
For File storage, this directive is ignored. For a FIFO storage device, you
must set this to No.
Please note that if you set this directive to No Bacula will release
the tape drive between each job, and thus the next job will rewind the tape
and position it to the end of the data. This can be a very time consuming
operation. In addition, with this directive set to no, certain multiple
drive autochanger operations will fail. We strongly recommend to keep
Always Open set to Yes
- Volume Poll Interval = time
-
If the time specified on this directive is non-zero, after asking the
operator to mount a new volume Bacula will periodically poll (or read) the
drive at the specified interval to see if a new volume has been mounted. If
the time interval is zero (the default), no polling will occur. This
directive can be useful if you want to avoid operator intervention via the
console. Instead, the operator can simply remove the old volume and insert
the requested one, and Bacula on the next poll will recognize the new tape
and continue. Please be aware that if you set this interval too small, you
may excessively wear your tape drive if the old tape remains in the drive,
since Bacula will read it on each poll. This can be avoided by ejecting the
tape using the Offline On Unmount and the Close on Poll
directives.
However, if you are using a Linux 2.6 kernel or other OSes
such as FreeBSD or Solaris, the Offline On Unmount will leave the drive
with no tape, and Bacula will not be able to properly open the drive and
may fail the job. For more information on this problem, please see the
description of Offline On Unmount in the Tape
Testing chapter.
- Close on Poll= Yes|No
-
If Yes, Bacula close the device (equivalent to an unmount except no
mount is required) and reopen it at each poll. Normally this is not too
useful unless you have the Offline on Unmount directive set, in which
case the drive will be taken offline preventing wear on the tape during any
future polling. Once the operator inserts a new tape, Bacula will recognize
the drive on the next poll and automatically continue with the backup.
Please see above more more details.
- Maximum Open Wait = time
-
This directive specifies the maximum amount of time in seconds that
Bacula will wait for a device that is busy. The default is 5 minutes.
If the device cannot be obtained, the current Job will be terminated in
error. Bacula will re-attempt to open the drive the next time a Job
starts that needs the the drive.
- Removable media = Yes|No
-
If Yes, this device supports removable media (for example, tapes
or CDs). If No, media cannot be removed (for example, an
intermediate backup area on a hard disk). If Removable media is
enabled on a File device (as opposed to a tape) the Storage daemon will
assume that device may be something like a USB device that can be
removed or a simply a removable harddisk. When attempting to open
such a device, if the Volume is not found (for File devices, the Volume
name is the same as the Filename), then the Storage daemon will search
the entire device looking for likely Volume names, and for each one
found, it will ask the Director if the Volume can be used. If so,
the Storage daemon will use the first such Volume found. Thus it
acts somewhat like a tape drive -- if the correct Volume is not found,
it looks at what actually is found, and if it is an appendable Volume,
it will use it.
If the removable medium is not automatically mounted (e.g. udev), then
you might consider using additional Storage daemon device directives
such as Requires Mount, Mount Point, Mount Command,
and Unmount Command, all of which can be used in conjunction with
Removable Media.
- Random access = Yes|No
-
If Yes, the archive device is assumed to be a random access medium
which supports the lseek (or lseek64 if Largefile is enabled
during configuration) facility. This should be set to Yes for all
file systems such as DVD, USB, and fixed files. It should be set to
No for non-random access devices such as tapes and named pipes.
- Requires Mount = Yes|No
-
When this directive is enabled, the Storage daemon will submit
a Mount Command before attempting to open the device.
You must set this directive to yes for DVD-writers and removable
file systems such as USB devices that are not automatically mounted
by the operating system when plugged in or opened by Bacula.
It should be set to no for
all other devices such as tapes and fixed filesystems. It should also
be set to no for any removable device that is automatically
mounted by the operating system when opened (e.g. USB devices mounted
by udev or hotplug). This directive
indicates if the device requires to be mounted using the Mount
Command. To be able to write a DVD, the following directives must also
be defined: Mount Point, Mount Command, Unmount
Command and Write Part Command.
- Mount Point = directory
-
Directory where the device can be mounted.
This directive is used only
for devices that have Requires Mount enabled such as DVD or
USB file devices.
- Mount Command = name-string
-
This directive specifies the command that must be executed to mount
devices such as DVDs and many USB devices. For DVDs, the
device is written directly, but the mount command is necessary in
order to determine the free space left on the DVD. Before the command is
executed, %a is replaced with the Archive Device, and %m with the Mount
Point.
Most frequently, for a DVD, you will define it as follows:
Mount Command = "/bin/mount -t iso9660 -o ro %a %m"
However, if you have defined a mount point in /etc/fstab, you might be
able to use a mount command such as:
Mount Command = "/bin/mount /media/dvd"
See the Edit Codes section below for more details of
the editing codes that can be used in this directive.
- Unmount Command = name-string
-
This directive specifies the command that must be executed to unmount
devices such as DVDs and many USB devices. Before the command is
executed, %a is replaced with the Archive Device, and %m with the Mount
Point.
Most frequently, you will define it as follows:
Unmount Command = "/bin/umount %m"
See the Edit Codes section below for more details of
the editing codes that can be used in this directive.
- Minimum block size = size-in-bytes
-
On most modern tape drives, you will not need or want to specify this
directive, and if you do so, it will be to make Bacula use fixed block
sizes. This statement applies only to non-random access devices (e.g.
tape drives). Blocks written by the storage daemon to a non-random
archive device will never be smaller than the given size-in-bytes.
The Storage daemon will attempt to efficiently fill blocks with data
received from active sessions but will, if necessary, add padding to a
block to achieve the required minimum size.
To force the block size to be fixed, as is the case for some non-random
access devices (tape drives), set the Minimum block size and the
Maximum block size to the same value (zero included). The default
is that both the minimum and maximum block size are zero and the default
block size is 64,512 bytes.
For example, suppose you want a fixed block size of 100K bytes, then you
would specify:
Minimum block size = 100K
Maximum block size = 100K
Please note that if you specify a fixed block size as shown above, the tape
drive must either be in variable block size mode, or if it is in fixed block
size mode, the block size (generally defined by mt) must be
identical to the size specified in Bacula -- otherwise when you attempt to
re-read your Volumes, you will get an error.
If you want the block size to be variable but with a 64K minimum and 200K
maximum (and default as well), you would specify:
Minimum block size = 64K
Maximum blocksize = 200K
- Maximum block size = size-in-bytes
-
On most modern tape drives, you will not need to specify this directive.
If you do so, it will most likely be to use fixed block sizes (see
Minimum block size above). The Storage daemon will always attempt to
write blocks of the specified size-in-bytes to the archive device.
As a consequence, this statement specifies both the default block size
and the maximum block size. The size written never exceed the given
size-in-bytes. If adding data to a block would cause it to exceed
the given maximum size, the block will be written to the archive device,
and the new data will begin a new block.
If no value is specified or zero is specified, the Storage daemon will
use a default block size of 64,512 bytes (126 * 512).
- Hardware End of Medium = Yes|No
-
If No, the archive device is not required to support end of medium
ioctl request, and the storage daemon will use the forward space file
function to find the end of the recorded data. If Yes, the archive
device must support the ioctl MTEOM call, which will position the
tape to the end of the recorded data. In addition, your SCSI driver must keep
track of the file number on the tape and report it back correctly by the
MTIOCGET ioctl. Note, some SCSI drivers will correctly forward space to
the end of the recorded data, but they do not keep track of the file number.
On Linux machines, the SCSI driver has a fast-eod option, which if set
will cause the driver to lose track of the file number. You should ensure
that this option is always turned off using the mt program.
Default setting for Hardware End of Medium is Yes. This function is
used before appending to a tape to ensure that no previously written data is
lost. We recommend if you have a non-standard or unusual tape drive that you
use the btape program to test your drive to see whether or not it
supports this function. All modern (after 1998) tape drives support this
feature.
- Fast Forward Space File = Yes|No
-
If No, the archive device is not required to support keeping track of
the file number (MTIOCGET ioctl) during forward space file. If Yes, the archive device must support the ioctl MTFSF call, which
virtually all drivers support, but in addition, your SCSI driver must keep
track of the file number on the tape and report it back correctly by the
MTIOCGET ioctl. Note, some SCSI drivers will correctly forward space,
but they do not keep track of the file number or more seriously, they do not
report end of medium.
Default setting for Fast Forward Space File is Yes.
- Use MTIOCGET = Yes|No
-
If No, the operating system is not required to support keeping track of
the file number and reporting it in the (MTIOCGET ioctl). The default
is Yes. If you must set this to No, Bacula will do the proper file
position determination, but it is very unfortunate because it means that
tape movement is very inefficient.
Fortunately, this operation system deficiency seems to be the case only
on a few *BSD systems. Operating systems known to work correctly are
Solaris, Linux and FreeBSD.
- BSF at EOM = Yes|No
-
If No, the default, no special action is taken by Bacula with the End
of Medium (end of tape) is reached because the tape will be positioned after
the last EOF tape mark, and Bacula can append to the tape as desired.
However, on some systems, such as FreeBSD, when Bacula reads the End of
Medium (end of tape), the tape will be positioned after the second EOF tape
mark (two successive EOF marks indicated End of Medium). If Bacula appends
from that point, all the appended data will be lost. The solution for such
systems is to specify BSF at EOM which causes Bacula to backspace over
the second EOF mark. Determination of whether or not you need this directive
is done using the test command in the btape program.
- TWO EOF = Yes|No
-
If Yes, Bacula will write two end of file marks when terminating a tape
-- i.e. after the last job or at the end of the medium. If No, the
default, Bacula will only write one end of file to terminate the tape.
- Backward Space Record = Yes|No
-
If Yes, the archive device supports the MTBSR ioctl to backspace
records. If No, this call is not used and the device must be rewound
and advanced forward to the desired position. Default is Yes for non
random-access devices. This function if enabled is used at the end of a
Volume after writing the end of file and any ANSI/IBM labels to determine whether
or not the last block was written correctly. If you turn this function off,
the test will not be done. This causes no harm as the re-read process is
precautionary rather than required.
- Backward Space File = Yes|No
-
If Yes, the archive device supports the MTBSF and MTBSF
ioctls to backspace over an end of file mark and to the start of a file. If
No, these calls are not used and the device must be rewound and
advanced forward to the desired position. Default is Yes for non
random-access devices.
- Forward Space Record = Yes|No
-
If Yes, the archive device must support the MTFSR ioctl to
forward space over records. If No, data must be read in order to
advance the position on the device. Default is Yes for non
random-access devices.
- Forward Space File = Yes|No
-
If Yes, the archive device must support the MTFSF ioctl to
forward space by file marks. If No, data must be read to advance the
position on the device. Default is Yes for non random-access devices.
- Offline On Unmount = Yes|No
-
The default for this directive is No. If Yes the archive device
must support the MTOFFL ioctl to rewind and take the volume offline. In
this case, Bacula will issue the offline (eject) request before closing the
device during the unmount command. If No Bacula will not attempt
to offline the device before unmounting it. After an offline is issued, the
cassette will be ejected thus requiring operator intervention to
continue, and on some systems require an explicit load command to be issued
(mt -f /dev/xxx load) before the system will recognize the tape. If you
are using an autochanger, some devices require an offline to be issued prior
to changing the volume. However, most devices do not and may get very
confused.
If you are using a Linux 2.6 kernel or other OSes
such as FreeBSD or Solaris, the Offline On Unmount will leave the drive
with no tape, and Bacula will not be able to properly open the drive and
may fail the job. For more information on this problem, please see the
description of Offline On Unmount in the Tape
Testing chapter.
- Maximum Volume Size = size
-
No more than size bytes will be written onto a given volume on the
archive device. This directive is used mainly in testing Bacula to
simulate a small Volume. It can also be useful if you wish to limit the
size of a File Volume to say less than 2GB of data. In some rare cases
of really antiquated tape drives that do not properly indicate when the
end of a tape is reached during writing (though I have read about such
drives, I have never personally encountered one). Please note, this
directive is deprecated (being phased out) in favor of the Maximum
Volume Bytes defined in the Director's configuration file.
- Maximum File Size = size
-
No more than size bytes will be written into a given logical file
on the volume. Once this size is reached, an end of file mark is
written on the volume and subsequent data are written into the next
file. Breaking long sequences of data blocks with file marks permits
quicker positioning to the start of a given stream of data and can
improve recovery from read errors on the volume. The default is one
Gigabyte. This directive creates EOF marks only on tape media.
However, regardless of the medium type (tape, disk, DVD, ...) each time
a the Maximum File Size is exceeded, a record is put into the catalog
database that permits seeking to that position on the medium for
restore operations. If you set this to a small value (e.g. 1MB),
you will generate lots of database records (JobMedia) and may
significantly increase CPU/disk overhead.
Note, this directive does not limit the size of Volumes that Bacula
will create regardless of whether they are tape or disk volumes. It
changes only the number of EOF marks on a tape and the number of
block positioning records (see below) that are generated. If you
want to limit the size of all Volumes for a particular device, use
the Maximum Volume Size directive (above), or use the
Maximum Volume Bytes directive in the Director's Pool resource,
which does the same thing but on a Pool (Volume) basis.
- Block Positioning = yes|no
-
This directive tells Bacula not to use block positioning when doing restores.
Turning this directive off can cause Bacula to be extremely slow
when restoring files. You might use this directive if you wrote your
tapes with Bacula in variable block mode (the default), but your drive
was in fixed block mode. The default is yes.
- Maximum Network Buffer Size = bytes
-
where bytes specifies the initial network buffer size to use with the
File daemon. This size will be adjusted down if it is too large until
it is accepted by the OS. Please use care in setting this value since if
it is too large, it will be trimmed by 512 bytes until the OS is happy,
which may require a large number of system calls. The default value is
32,768 bytes.
The default size was chosen to be relatively large but not too big in
the case that you are transmitting data over Internet. It is clear that
on a high speed local network, you can increase this number and improve
performance. For example, some users have found that if you use a value
of 65,536 bytes they get five to ten times the throughput. Larger values for
most users don't seem to improve performance. If you are interested
in improving your backup speeds, this is definitely a place to
experiment. You will probably also want to make the corresponding change
in each of your File daemons conf files.
- Maximum Spool Size = bytes
-
where the bytes specify the maximum spool size for all jobs that are running.
The default is no limit.
- Maximum Job Spool Size = bytes
-
where the bytes specify the maximum spool size for any one job that is
running. The default is no limit.
This directive is implemented only in version 1.37 and later.
- Spool Directory = directory
-
specifies the name of the directory to be used to store the spool files for
this device. This directory is also used to store temporary part files when
writing to a device that requires mount (DVD). The default is to use the
working directory.
- Maximum Part Size = bytes
-
This is the maximum size of a volume part file. The default is no limit.
This directive is implemented only in version 1.37 and later.
If the device requires mount, it is transferred to the device when this size
is reached. In this case, you must take care to have enough disk space left
in the spool directory.
Otherwise, it is left on the hard disk.
It is ignored for tape and FIFO devices.
All the directives in this section are implemented only in
Bacula version 1.37 and later and hence are available in version 1.38.6.
As of version 1.39.5, the directives
"Requires Mount", "Mount Point", "Mount Command", and "Unmount Command"
apply to removable filesystems such as USB in addition to DVD.