Create volume pool#
Pool is a logical space for storing and grouping Bacula volumes. It isn’t any directly accessible place in the file system (such as directory) but is a virtual place defined in the Bacula database.
The main purpose of Pool
is to group volumes into sets for given purpose. For example,
you can create a pool with volumes to store incremental backups, a pool to store
differential backups or a pool to store full backups. Another approach could be
to create pools for data from a given Bacula client or clients.
A very important property of a pool is inheritance. Each new volume created in a
given pool inherits various directives defined in that Pool
. For example, they are
limit directives or volume recycling directives or others. If we defined a VolumeRetention
directive in a Pool
to 180 days
, then - thanks to inheritance - every
new volume created in that pool will have the VolumeRetention
property set
to 180 days
. So, in this meaning the volume Pool
directives are something similar
to a template for new pool volumes.
In backup jobs we don’t directly define what volume to use to write backup, but instead
we define it by configuring a Pool
in the Job
. This way the Bacula Storage knows
volumes from which Pool
it should use to store backup data.

What is required?#
Any version of the Bacularis web interface
How to do it?#
You can create Pool
on the Director
page in the Configure director
tab
or you can go directly to the Pools
page and use the Add pool
button. In this
chapter we use the second method.
Create Pool#
On the Pools
page please click the Add Pool
button. It will redirect you to a
new page with the Pool
directive form.
You must enter the Pool
name and optional description.
In the PoolType
directive the only allowed value is Backup
. This is required
to set this directive.
The use of rest Pool
directives depends on the user’s needs and plans for current
pool and volumes stored on it.
Prepare pool volumes#
There are at least three ways of creating volumes in Pool
:
Automatically created volumes - This method is mainly used for file volumes. If a new volume is needed, it is created automatically. Continuously creating new volumes instead of reusing existing ones will lead to exhaustion of available disk space. To avoid this and to reuse existing volumes, please read the Automatic Volume Recycling chapter in the Bacula documentation.
Predefined volumes in pool - This method can be useful for physical tape volumes and file volumes as well. Volumes can be labeled in advance (before backup starts) and used in autochanger device. It may be necessary to use the Automatic Volume Recycling.
Manually created volumes - if new volume is needed, it is manually created/labeled on demand.
Use Pool#
To use Pool
, in many cases it must be assigned to a Job
resource. It can
also be used in the JobDefs
resource, Schedule
resource or in another Pool
(by the NextPool
directive).
The Pool
can be used in a Job
resource in the following Job
directives
depending on the job type and job use case:
Pool
- main Pool directive to use in job
FullBackupPool
- set full backup job pool
IncrementalBackupPool
- set incremental backup job pool
DifferentialBackupPool
- set differential backup job pool
VirtualFullBackupPool
- virtual full backup job pool
NextPool
- set pol forCopy
,Migrate
job types or toVirtualFull
backup job level.
Important notes#
After changing Pool
configuration, to apply new changes you need to run the update pool
command. In Bacularis you can do it by clicking the Update pool
button on the selected
Pool details
page:
[Main menu] => [Page: Pools] => [Button: Details for selected Pool in table] => [Button: Update pool]
Volume inherits Pool
properties on the volume creation. If the Pool
configuration is edited,
it is important to know that all the changes are not applied to existing volumes in this Pool
,
but they will be used only for new volumes created in this Pool
. If you want to update
existing volumes to use new Pool
configuration, you need to update the volume properties in
the Pool
. It can be done both in Bacula bconsole and in Bacularis. In Bacularis it is done
in the selected Pool details
page by clicking the Update all vols. in pool
button:
[Main menu] => [Page: Pools] => [Button: Details for selected Pool in table] => [Button: Update all vols. in pool]
Video guide#
Here you can watch the video guide that shows creating the Bacula Pool in Bacularis.