From Wikipedia, the free encyclopedia
Jump to: navigation, search
Not to be confused with Bakula (disambiguation).
This article is about computer backup software. For the penile bone found in some mammals, see baculum. For the genus of sea snail, see Bacula (gastropod).
Developer(s) Kern Sibbald, and team
Initial release January 2000; 15 years ago (2000-01)
Stable release 7.2.0 / August 14, 2015; 3 months ago (2015-08-14)
Written in C++
Operating system Cross-platform
Type Backup
License Affero General Public License v3.0

Bacula is an open source, enterprise level computer backup system for heterogeneous networks. It is designed to automate backup tasks that had often required intervention from a systems administrator or computer operator.

Bacula supports Linux, UNIX, Windows, and Mac OS X backup clients, and a range of professional backup devices including tape libraries. Administrators and operators can configure the system via a command line console, GUI or web interface; its back-end is a catalog of information stored by MySQL, PostgreSQL, or SQLite.


Bacula is a set of computer programs for managing backup, recovery, and verification of computer data across a network—providing a backup solution for mixed operating system environments.

Bacula is open source and released under the AGPL version 3 license with exceptions to permit linking with OpenSSL and distributing Windows binaries.[1]

Bacula is available under a "dual license" (see: Multi-licensing) AGPLv3 or Proprietary license. Several entities offer commercial support for the AGPL "Bacula community version" while Bacula Systems [2] sells various levels of annual support contracts for "Bacula Enterprise Edition", which contains various non-GPL components developed in-house. In 2015, Bacula Systems was named 'Top 20 Most Promising Data Center Solution Providers' by CIO Review.[3]

In common with other dual license software, components developed for the Bacula Enterprise Edition are released into Bacula Community edition after some period of exclusivity to the proprietary version.

Since April 2002, Bacula has over 2 million downloads, which makes it the most downloaded open source backup program.[4]

Bacula® is a registered trademark of Kern Sibbald.


Bacula's features include:

Network options[edit]

  • TCP/IP - client–server communication uses standard ports and services instead of RPC for NFS, CIFS, etc.; this eases firewall administration and network security
  • CRAM-MD5 - configurable client–server authentication
  • GZIP/LZO - client-side compression to reduce network bandwidth consumption; this runs separate from hardware compression done by the backup device
  • TLS - network communication encryption
  • MD5/SHA - verify file integrity
  • CRC - verify data block integrity
  • PKI - backup data encryption
  • NDMP - enterprise version plugin[5]


  • POSIX ACL - for Linux and Unix machines
  • Windows ACLs - on local NTFS mounts are automatically saved/restored by using the BackupRead API
  • Windows ACLs - are not saved/restored via a network NFS/CIFS mount
  • Unicode/UTF-8 - cross-platform filenames
  • VSS - calls Microsoft's snapshot service
  • LVM - pre-script setup for Linux/UNIX snapshot
  • LFS - backup files larger than 2GiB
  • raw - backup devices without a filesystem

Backup devices[edit]

  • pooling - allocates backup volumes according to job needs and retention configuration
  • spooling - writes backup data to spool until target backup medium is allocated so jobs can continue uninterrupted
  • media-spanning - such as spanning tapes
  • multi-streaming - write multiple, simultaneous data streams to the same medium
  • ANSI & EBCDIC - IBM compatibility
  • Barcodes - reading tape barcodes in libraries
  • autoloaders - virtually every tape autoloader available (called autochangers in Bacula)
  • most tape drives, including DDS, DLT, SDLT, LTO-1-6
  • locations - tapes can be "out" of a library, allowing off-site storage

Client OS[edit]

The client software, executed by a "file daemon" running on a Bacula client, supports multiple operating systems.[6]


Bacula stores backup data in an open and documented yet unique volume format; there are Bacula standalone tools to read/write the backup data (bls, bcopy, bscan, bextract), these tools are not compatible with other Unix backup utilities such as tar or dump. Since the Bacula format is open and has a clear separation of data and metadata, even cross-OS restores from Windows to Unix and vice versa have been possible - as long as extended filesystem ACL data can be ignored on backup.

By default, Bacula's differential and incremental backups are based on system time stamps. Consequently, if you move files into an existing directory or move a whole directory into the backup FileSet after a full backup, those files may not be backed up by an incremental save because they may have old dates. You must explicitly update the date/time stamp on all moved files. Bacula versions starting with 3.0 or later support Accurate backup, which is an option that addresses this issue without requiring modification of the files timestamps. This feature should always be used if a accurate state of the filesystem is important. Which criteria should be applied is configurable, i.e. inode comparisons, modification times or md5/sha1 signatures.[7]

Compression in Bacula can be turned on at the client or within a tape drive (the latter is a hardware feature). Compression algorithms at the client can be selected, i.e. as gzip or lzo.

In order to allow multiple users to access a single Bacula server, Bacula implements console ACLs a to allow/disallow access to catalog data on a console by console basis -- for example for user restores. If multiple consoles are permitted without ACLs, users may be able to access data that does not belong to them.

It is also possible to start any Client (File daemon) in backup only mode so that the Bacula Client cannot modify the filesystem.


Date Event
January 2000 Project started
April 14, 2002 First release to (version 1.16)
June 29, 2006 Release 1.38.11 (Final version 1 release)
January 2007 Release 2.0.0
September 2007 Release 2.2.3
June 2008 Release 2.4.0
April 2009 Release 3.0.0 with new features[8]
January 2010 Release 5.0.0 with new features[9]
September 2010 Release 5.0.3
January 2012 Release 5.2.4 with new features[10]
February 2012 Release 5.2.6
June 2012 Release 5.2.9
February 2013 Release 5.2.13
July 2014 Release 7.0.5 with many new features[11]
August 2015 Release 7.2.0

Forks of Bacula[edit]

In 2011, Graham Keeling, a "former" Bacula community developer, released a friendly fork of Bacula.[12] This fork is interesting in that it takes quite a different approach to backup than Bacula does. Graham is on good terms with the developers and the Bacula project. In 2013, Graham authorized Bacula and Bacula Systems to use some of his code.

In February 2013 a former Bacula community developer (with several other Free Software users) released Bareos as a fork of Bacula.[13]

Further reading[edit]


External links[edit]