Next:
What is Bacula?
Up:
Main Reference
Previous:
Main Reference
Index
Contents
What is Bacula?
Who Needs Bacula?
Bacula Components or Services
Bacula Director
Bacula Console
Bacula File
Bacula Storage
Catalog
Bacula Monitor
Bacula Configuration
Conventions Used in this Document
Quick Start
Terminology
What Bacula is Not
Interactions Between the Bacula Services
New Features in 9.6.0
Building 9.6.4 and later
Docker Plugin
Real-Time Statistics Monitoring
New Features in 9.4.0
New Commands, Resource, and Directives for Cloud
WORM Tape Support
New Features in 9.2.0
Enhanced Autochanger Support
New Prune Command Option
BConsole Features
Tray Monitor Restore Screen
New Features in 9.0.0
Enhanced Autochanger Support
Source Code for Windows
Maximum Virtual Full Interval Option
Progressive Virtual Full
TapeAlert Enhancements
New Console ACL Directives
New Bconsole “list” Command Behavior
New Console ACL Directives
Client Initiated Backup
Configuring Client Initiated Backup
New Tray Monitor
Schedule Jobs via the Tray Monitor
Accurate Option for Verify “Volume Data” Job
FileDaemon Saved Messages Resource Destination
Minor Enhancements
Bconsole “list jobs” command options
Minor Enhancements
Bconsole “list jobs” command options
New Bconsole "Tee All" Command
New Job Edit Codes %I
.api version 2
New Debug Options
Communication Line Compression
Deduplication Optimized Volumes
baculabackupreport
New Message Identification Format
New Features in 7.4.0
New Features in 7.4.3
RunScripts
New Features in 7.4.0
Verify Volume Data
Bconsole “list jobs” command options
Minor Enhancements
Windows Encrypted File System (EFS) Support
SSL Connections to MySQL
Max Virtual Full Interval
New List Volumes Output
New Features in 7.2.0
New Features in 7.2.0
New Job Edit Codes %E %R
Enable/Disable commands
Bacula 7.2
Snapshot Management
Minor Enhancements
Data Encryption Cipher Configuration
Read Only Storage Devices
New Resume Command
New Prune “Expired” Volume Command
New Job Edit Codes %P %C
Enhanced Status and Error Messages
Miscellaneous New Features
FD Storage Address
Maximum Concurrent Read Jobs
Incomplete Jobs
The Stop Command
The Restart Command
Job Bandwidth Limitation
Always Backup a File
Setting Accurate Mode at Runtime
Additions to RunScript variables
LZO Compression
Purge Migration Job
Changes in the Pruning Algorithm
Ability to Verify any specified Job
New Features in 7.0.0
New Features in 7.0.0
Storage daemon to Storage daemon
SD Calls Client
Next Pool
status storage
status schedule
Data Encryption Cipher Configuration
New Truncate Command
Migration/Copy/VirtualFull Performance Enhancements
VirtualFull Backup Consolidation Enhancements
FD Storage Address
Job Bandwidth Limitation
Maximum Concurrent Read Jobs
Director job Codes in Message Resource Commands
Additions to RunScript variables
Read Only Storage Devices
New Prune “Expired” Volume Command
Hardlink Performance Enhancements
DisableCommand Directive
Multiple Console Directors
Restricted Consoles
Configuration Files
Maximum Spawned Jobs
Progress Meter
Scheduling a 6th Week
Scheduling the Last Day of a Month
Improvements to Cancel and Restart bconsole Commands
bconsole Performance Improvements
New .bvfs_decode_lstat Command
New Debug Options
New Features in 5.2.13
Additions to RunScript variables
New Features in 5.2.1
LZO Compression
New Tray Monitor
Purge Migration Job
Changes in Bvfs (Bacula Virtual FileSystem)
Changes in the Pruning Algorithm
Ability to Verify any specified Job
Additions to RunScript variables
Additions to the Plugin API
ACL enhancements
XATTR enhancements
Class Based Database Backend Drivers
Hash List Enhancements
Release Version 5.0.3
Release Version 5.0.2
New Features in 5.0.1
Truncate Volume after Purge
Allow Higher Duplicates
Cancel Lower Level Duplicates
New Features in 5.0.0
Maximum Concurrent Jobs for Devices
Restore from Multiple Storage Daemons
File Deduplication using Base Jobs
AllowCompression = yes|no
Accurate Fileset Options
Tab-completion for Bconsole
Pool File and Job Retention
Read-only File Daemon using capabilities
Bvfs API
Testing your Tape Drive
New
Block Checksum
Device Directive
New Bat Features
Bat on Windows
New Win32 Installer
Win64 Installer
Linux Bare Metal Recovery USB Key
bconsole Timeout Option
Important Changes
Misc Changes
Released Version 3.0.3 and 3.0.3a
New Features in Released Version 3.0.2
Full Restore from a Given JobId
Source Address
Show volume availability when doing restore
Accurate estimate command
New Features in 3.0.0
Accurate Backup
Copy Jobs
ACL Updates
Extended Attributes
Shared objects
Building Static versions of Bacula
Virtual Backup (Vbackup)
Catalog Format
64 bit Windows Client
Duplicate Job Control
TLS Authentication
bextract non-portable Win32 data
State File updated at Job Termination
MaxFullInterval = time-interval
MaxDiffInterval = time-interval
Honor No Dump Flag = yes|no
Exclude Dir Containing = filename-string
Bacula Plugins
The bpipe Plugin
Microsoft Exchange Server 2003/2007 Plugin
libdbi Framework
Console Command Additions and Enhancements
Bare Metal Recovery
Miscellaneous
The Current State of Bacula
What is Implemented
Advantages Over Other Backup Programs
Current Implementation Restrictions
Design Limitations or Restrictions
Items to Note
System Requirements
Supported Operating Systems
Important notes
Supported Tape Drives
Unsupported Tape Drives
FreeBSD Users Be Aware!!!
Supported Autochangers
Tape Specifications
Getting Started with Bacula
Understanding Jobs and Schedules
Understanding Pools, Volumes and Labels
Setting Up Bacula Configuration Files
Configuring the Console Program
Configuring the Monitor Program
Configuring the File daemon
Configuring the Director
Configuring the Storage daemon
Testing your Configuration Files
Testing Compatibility with Your Tape Drive
Get Rid of the /lib/tls Directory
Running Bacula
Log Rotation
Log Watch
Disaster Recovery
Installing Bacula
Binary Release Packages
Building Bacula from Source
Source Release Files
Upgrading Bacula
Releases Numbering
Beta Releases
Dependency Packages
Supported Operating Systems
Building Bacula from Source
What Database to Use?
Quick Start
Configure Options
Recommended Options for Most Systems
Red Hat
Solaris
FreeBSD
Win32
One File Configure Script
Installing Bacula
Building a File Daemon or Client
Auto Starting the Daemons
Other Make Notes
Modifying the Bacula Configuration Files
Critical Items to Implement Before Production
Critical Items
Recommended Items
A Brief Tutorial
Before Running Bacula
Starting the Database
Starting the Daemons
Using the Director to Query and Start Jobs
Running a Job
Restoring Your Files
Quitting the Console Program
Adding a Second Client
When The Tape Fills
Other Useful Console Commands
Debug Daemon Output
Patience When Starting Daemons or Mounting Blank Tapes
Difficulties Connecting from the FD to the SD
Daemon Command Line Options
Creating a Pool
Labeling Your Volumes
Labeling Volumes with the Console Program
Customizing the Configuration Files
Character Sets
Resource Directive Format
Comments
Upper and Lower Case and Spaces
Including other Configuration Files
Recognized Primitive Data Types
Resource Types
Names, Passwords and Authorization
Detailed Information for each Daemon
Configuring the Director
Director Resource Types
The Director Resource
The Job Resource
The JobDefs Resource
The Schedule Resource
Technical Notes on Schedules
The FileSet Resource
FileSet Examples
Backing up Raw Partitions
Excluding Files and Directories
Windows FileSets
Testing Your FileSet
The Client Resource
The Storage Resource
The Autochanger Resources
The Pool Resource
The Scratch Pool
The Catalog Resource
The Messages Resource
The Console Resource
The Counter Resource
Example Director Configuration File
Client/File daemon Configuration
The Client Resource
The Director Resource
The Message Resource
Example Client Configuration File
Storage Daemon Configuration
Storage Resource
Director Resource
Device Resource
Edit Codes for Mount and Unmount Directives
Devices that require a mount (USB)
Capabilities
Messages Resource
Sample Storage Daemon Configuration File
Messages Resource
Console Configuration
General
The Director Resource
The ConsoleFont Resource
The Console Resource
Console Commands
Sample Console Configuration File
Monitor Configuration
The Monitor Resource
The Director Resource
The Client Resource
The Storage Resource
Tray Monitor Security
Sample Tray Monitor configuration
Sample File daemon's Director record.
Sample Storage daemon's Director record.
Sample Director's Console record.
The Restore Command
General
The Restore Command
Restore a pruned job using a pattern
Selecting Files by Filename
Replace Options
Command Line Arguments
Using File Relocation
Introduction
RegexWhere Format
Examples
Restoring Directory Attributes
Restoring on Windows
Restoring Files Can Be Slow
Problems Restoring Files
Restore Errors
Example Restore Job Resource
File Selection Commands
Restoring When Things Go Wrong
Automatic Volume Recycling
Automatic Pruning
Pruning Directives
Recycling Algorithm
Recycle Status
Making Bacula Use a Single Tape
Daily, Weekly, Monthly Tape Usage Example
Automatic Pruning and Recycling Example
Manually Recycling Volumes
Basic Volume Management
Key Concepts and Resource Records
Pool Options to Limit the Volume Usage
Automatic Volume Labeling
Restricting the Number of Volumes and Recycling
Concurrent Disk Jobs
An Example
Backing up to Multiple Disks
Considerations for Multiple Clients
Automated Disk Backup
The Problem
The Solution
Overall Design
Full Pool
Differential Pool
Incremental Pool
The Actual Conf Files
Migration and Copy
Storage daemon to Storage daemon
Migration and Copy Job Resource Directives
Migration Pool Resource Directives
Important Migration Considerations
Example Migration Jobs
Virtual Backup Consolidation
Manually Specify Jobs to Consolidate
File Deduplication using Base Jobs
Backup Strategies
Simple One Tape Backup
Advantages
Disadvantages
Practical Details
Manually Changing Tapes
Daily Tape Rotation
Advantages
Disadvantages
Practical Details
Autochanger Support
Knowing What SCSI Devices You Have
Example Scripts
Slots
Multiple Devices
Device Configuration Records
Autochanger Resource
An Example Configuration File
A Multi-drive Example Configuration File
Specifying Slots When Labeling
Changing Cartridges
Dealing with Multiple Magazines
Simulating Barcodes in your Autochanger
The Full Form of the Update Slots Command
FreeBSD Issues
Testing Autochanger and Adapting mtx-changer script
Using the Autochanger
Barcode Support
Use bconsole to display Autochanger content
Bacula Autochanger Interface
Supported Autochangers
Data Spooling
Data Spooling Directives
!!! MAJOR WARNING !!!
Other Points
ANSI and IBM Tape Labels
Director Pool Directive
Storage Daemon Device Directives
The Windows Version of Bacula
Windows Installation
Post Windows Installation
Uninstalling Bacula on Windows
Dealing with Windows Problems
Windows Compatibility Considerations
Volume Shadow Copy Service
VSS Problems
Windows Firewalls
Windows Port Usage
Windows Disaster Recovery
Windows Restore Problems
Windows Ownership and Permissions Problems
Manually resetting the Permissions
Backing Up the Windows System State
Fixing the Windows Boot Record
Considerations for Filename Specifications
Windows Specific File daemon Command Line
Shutting down Windows Systems
Disaster Recovery Using Bacula
General
Important Considerations
Steps to Take Before Disaster Strikes
Bare Metal Recovery on Linux with a Rescue CD
Requirements
Restoring a Client System
Boot with your Rescue CDROM
Restoring a Server
Linux Problems or Bugs
Bare Metal Recovery using a LiveCD
FreeBSD Bare Metal Recovery
Solaris Bare Metal Recovery
Preparing Solaris Before a Disaster
Bugs and Other Considerations
Disaster Recovery of Win32 Systems
Ownership and Permissions on Win32 Systems
Alternate Disaster Recovery Suggestion for Win32 Systems
Restoring to a Running System
Additional Resources
Bacula TLS – Communications Encryption
TLS Configuration Directives
Creating a Self-signed Certificate
Getting a CA Signed Certificate
Example TLS Configuration Files
Data Encryption
Building Bacula with Encryption Support
Encryption Technical Details
Decrypting with a Master Key
Generating Private/Public Encryption Keys
Example Data Encryption Configuration
Using Bacula to Improve Computer Security
The Details
Running the Verify
What To Do When Differences Are Found
A Verify Configuration Example
Installing and Configuring MySQL
Installing and Configuring MySQL – Phase I
Installing and Configuring MySQL – Phase II
Re-initializing the Catalog Database
Linking Bacula with MySQL
Installing MySQL from RPMs
Upgrading MySQL
MySQL Configuration Caution
Installing and Configuring PostgreSQL
Installing PostgreSQL
Configuring PostgreSQL
Re-initializing the Catalog Database
Installing PostgreSQL from RPMs
Converting from MySQL to PostgreSQL
Upgrading PostgreSQL
Tuning PostgreSQL
Credits
Catalog Maintenance
Setting Retention Periods
Compacting Your MySQL Database
Repairing Your MySQL Database
MySQL Table is Full
MySQL Server Has Gone Away
MySQL Temporary Tables
Repairing Your PostgreSQL Database
Database Performance Issues
Performance Issues Indexes
PostgreSQL Indexes
MySQL Indexes
Compacting Your PostgreSQL Database
Migrating from SQLite to MySQL or PostgreSQL
Backing Up Your Bacula Database
Security considerations
Backing Up Third Party Databases
Database Size
Bacula Security Issues
Backward Compatibility
Configuring and Testing TCP Wrappers
Running as non-root
The Bootstrap File
Bootstrap File Format
Automatic Generation of Bootstrap Files
Bootstrap for bscan
A Final Bootstrap Example
Bacula Copyright, Trademark, and Licenses
CC-BY-SA
GPL
LGPL
Public Domain
Trademark
Fiduciary License Agreement
Disclaimer
Authors
Creative Commons Attribution-ShareAlike 4.0 International
Affero GNU General Public License
GNU Lesser General Public License
Table of Contents
GNU LESSER GENERAL PUBLIC LICENSE
Preamble
TERMS AND CONDITIONS
How to Apply These Terms to Your New Libraries
Thanks
Copyrights and Trademarks
Bacula Bugs
Index
About this document ...