\select@language {english}
\contentsline {chapter}{\numberline {1}What is Bacula?}{1}{chapter.1}
\contentsline {section}{\numberline {1.1}Who Needs Bacula?}{1}{section.1.1}
\contentsline {section}{\numberline {1.2}Bacula Components or Services}{1}{section.1.2}
\contentsline {section}{\numberline {1.3}Bacula Configuration}{3}{section.1.3}
\contentsline {section}{\numberline {1.4}Conventions Used in this Document}{4}{section.1.4}
\contentsline {section}{\numberline {1.5}Quick Start}{4}{section.1.5}
\contentsline {section}{\numberline {1.6}Terminology}{4}{section.1.6}
\contentsline {section}{\numberline {1.7}What Bacula is Not}{7}{section.1.7}
\contentsline {section}{\numberline {1.8}Interactions Between the Bacula Services}{7}{section.1.8}
\contentsline {chapter}{\numberline {2}New Features in 9.0.0}{9}{chapter.2}
\contentsline {subsection}{\numberline {2.0.1}Maximum Virtual Full Interval Option}{9}{subsection.2.0.1}
\contentsline {subsection}{\numberline {2.0.2}Progressive Virtual Full}{9}{subsection.2.0.2}
\contentsline {subsubsection}{Backups To Keep Directive}{9}{section*.8}
\contentsline {subsubsection}{Delete Consolidated Jobs}{10}{section*.9}
\contentsline {subsubsection}{Virtual Full Compatibility}{10}{section*.10}
\contentsline {subsection}{\numberline {2.0.3}TapeAlert Enhancements}{10}{subsection.2.0.3}
\contentsline {subsubsection}{What is New}{10}{section*.11}
\contentsline {subsubsection}{Handling of Alerts}{12}{section*.12}
\contentsline {subsection}{\numberline {2.0.4}New Console ACL Directives}{12}{subsection.2.0.4}
\contentsline {subsubsection}{DirectoryACL}{12}{section*.13}
\contentsline {subsection}{\numberline {2.0.5}New Bconsole ``list'' Command Behavior}{13}{subsection.2.0.5}
\contentsline {subsection}{\numberline {2.0.6}New Console ACL Directives}{13}{subsection.2.0.6}
\contentsline {subsection}{\numberline {2.0.7}Client Initiated Backup}{14}{subsection.2.0.7}
\contentsline {subsection}{\numberline {2.0.8}Configuring Client Initiated Backup}{15}{subsection.2.0.8}
\contentsline {subsection}{\numberline {2.0.9}New Tray Monitor}{16}{subsection.2.0.9}
\contentsline {subsection}{\numberline {2.0.10}Schedule Jobs via the Tray Monitor}{17}{subsection.2.0.10}
\contentsline {subsection}{\numberline {2.0.11}Accurate Option for Verify ``Volume Data'' Job}{20}{subsection.2.0.11}
\contentsline {subsection}{\numberline {2.0.12}FileDaemon Saved Messages Resource Destination}{20}{subsection.2.0.12}
\contentsline {subsection}{\numberline {2.0.13}Minor Enhancements}{20}{subsection.2.0.13}
\contentsline {subsubsection}{New Bconsole ".estimate" Command}{20}{section*.14}
\contentsline {subsubsection}{Traceback and Lockdump}{21}{section*.15}
\contentsline {subsection}{\numberline {2.0.14}Bconsole ``list jobs'' command options}{21}{subsection.2.0.14}
\contentsline {subsection}{\numberline {2.0.15}Minor Enhancements}{21}{subsection.2.0.15}
\contentsline {subsubsection}{New Bconsole "Tee All" Command}{21}{section*.16}
\contentsline {subsection}{\numberline {2.0.16}Bconsole ``list jobs'' command options}{21}{subsection.2.0.16}
\contentsline {subsection}{\numberline {2.0.17}New Bconsole "Tee All" Command}{21}{subsection.2.0.17}
\contentsline {subsection}{\numberline {2.0.18}New Job Edit Codes \%I}{22}{subsection.2.0.18}
\contentsline {subsection}{\numberline {2.0.19}Communication Line Compression}{23}{subsection.2.0.19}
\contentsline {subsection}{\numberline {2.0.20}Deduplication Optimized Volumes}{23}{subsection.2.0.20}
\contentsline {subsection}{\numberline {2.0.21}baculabackupreport}{23}{subsection.2.0.21}
\contentsline {subsection}{\numberline {2.0.22}New Message Identification Format}{24}{subsection.2.0.22}
\contentsline {chapter}{\numberline {3}New Features in 7.4.0}{25}{chapter.3}
\contentsline {section}{\numberline {3.1}New Features in 7.4.3}{25}{section.3.1}
\contentsline {subsection}{\numberline {3.1.1}RunScripts}{25}{subsection.3.1.1}
\contentsline {section}{\numberline {3.2}New Features in 7.4.0}{25}{section.3.2}
\contentsline {subsection}{\numberline {3.2.1}Verify Volume Data}{25}{subsection.3.2.1}
\contentsline {subsection}{\numberline {3.2.2}Bconsole ``list jobs'' command options}{26}{subsection.3.2.2}
\contentsline {subsection}{\numberline {3.2.3}Minor Enhancements}{27}{subsection.3.2.3}
\contentsline {subsubsection}{New Bconsole "Tee All" Command}{27}{section*.19}
\contentsline {subsection}{\numberline {3.2.4}Windows Encrypted File System (EFS) Support}{27}{subsection.3.2.4}
\contentsline {subsection}{\numberline {3.2.5}SSL Connections to MySQL}{27}{subsection.3.2.5}
\contentsline {subsection}{\numberline {3.2.6}Max Virtual Full Interval}{27}{subsection.3.2.6}
\contentsline {subsection}{\numberline {3.2.7}New List Volumes Output}{27}{subsection.3.2.7}
\contentsline {chapter}{\numberline {4}New Features in 7.2.0}{29}{chapter.4}
\contentsline {section}{\numberline {4.1}New Features in 7.2.0}{29}{section.4.1}
\contentsline {subsection}{\numberline {4.1.1}New Job Edit Codes \%E \%R}{29}{subsection.4.1.1}
\contentsline {subsection}{\numberline {4.1.2}Enable/Disable commands}{29}{subsection.4.1.2}
\contentsline {section}{\numberline {4.2}Bacula 7.2}{29}{section.4.2}
\contentsline {subsection}{\numberline {4.2.1}Snapshot Management}{29}{subsection.4.2.1}
\contentsline {subsubsection}{Snapshot Backends}{29}{section*.20}
\contentsline {subsubsection}{Application Quiescing}{30}{section*.21}
\contentsline {subsubsection}{New Director Directives}{30}{section*.22}
\contentsline {subsubsection}{Job Output Information}{31}{section*.23}
\contentsline {subsubsection}{New ``snapshot'' Bconsole Commands}{31}{section*.24}
\contentsline {subsubsection}{LVM Backend Restrictions}{32}{section*.25}
\contentsline {subsubsection}{Debug Options}{33}{section*.26}
\contentsline {subsection}{\numberline {4.2.2}Minor Enhancements}{33}{subsection.4.2.2}
\contentsline {subsubsection}{Storage Daemon Reports Disk Usage}{33}{section*.27}
\contentsline {subsection}{\numberline {4.2.3}Data Encryption Cipher Configuration}{33}{subsection.4.2.3}
\contentsline {subsection}{\numberline {4.2.4}Read Only Storage Devices}{34}{subsection.4.2.4}
\contentsline {subsection}{\numberline {4.2.5}New Resume Command}{34}{subsection.4.2.5}
\contentsline {subsection}{\numberline {4.2.6}New Prune ``Expired'' Volume Command}{35}{subsection.4.2.6}
\contentsline {subsection}{\numberline {4.2.7}New Job Edit Codes \%P \%C}{35}{subsection.4.2.7}
\contentsline {subsection}{\numberline {4.2.8}Enhanced Status and Error Messages}{35}{subsection.4.2.8}
\contentsline {subsection}{\numberline {4.2.9}Miscellaneous New Features}{35}{subsection.4.2.9}
\contentsline {subsection}{\numberline {4.2.10}FD Storage Address}{36}{subsection.4.2.10}
\contentsline {subsection}{\numberline {4.2.11}Maximum Concurrent Read Jobs}{36}{subsection.4.2.11}
\contentsline {subsection}{\numberline {4.2.12}Incomplete Jobs}{36}{subsection.4.2.12}
\contentsline {subsection}{\numberline {4.2.13}The Stop Command}{36}{subsection.4.2.13}
\contentsline {subsection}{\numberline {4.2.14}The Restart Command}{37}{subsection.4.2.14}
\contentsline {subsection}{\numberline {4.2.15}Job Bandwidth Limitation}{37}{subsection.4.2.15}
\contentsline {subsection}{\numberline {4.2.16}Always Backup a File}{38}{subsection.4.2.16}
\contentsline {subsection}{\numberline {4.2.17}Setting Accurate Mode at Runtime}{38}{subsection.4.2.17}
\contentsline {subsection}{\numberline {4.2.18}Additions to RunScript variables}{39}{subsection.4.2.18}
\contentsline {subsection}{\numberline {4.2.19}LZO Compression}{39}{subsection.4.2.19}
\contentsline {subsection}{\numberline {4.2.20}Purge Migration Job}{39}{subsection.4.2.20}
\contentsline {subsection}{\numberline {4.2.21}Changes in the Pruning Algorithm}{40}{subsection.4.2.21}
\contentsline {subsection}{\numberline {4.2.22}Ability to Verify any specified Job}{40}{subsection.4.2.22}
\contentsline {chapter}{\numberline {5}New Features in 7.0.0}{41}{chapter.5}
\contentsline {section}{\numberline {5.1}New Features in 7.0.0}{41}{section.5.1}
\contentsline {subsection}{\numberline {5.1.1}Storage daemon to Storage daemon}{41}{subsection.5.1.1}
\contentsline {subsection}{\numberline {5.1.2}SD Calls Client}{41}{subsection.5.1.2}
\contentsline {subsection}{\numberline {5.1.3}Next Pool}{42}{subsection.5.1.3}
\contentsline {subsection}{\numberline {5.1.4}status storage}{42}{subsection.5.1.4}
\contentsline {subsection}{\numberline {5.1.5}status schedule}{42}{subsection.5.1.5}
\contentsline {subsection}{\numberline {5.1.6}Data Encryption Cipher Configuration}{43}{subsection.5.1.6}
\contentsline {subsection}{\numberline {5.1.7}New Truncate Command}{43}{subsection.5.1.7}
\contentsline {subsection}{\numberline {5.1.8}Migration/Copy/VirtualFull Performance Enhancements}{43}{subsection.5.1.8}
\contentsline {subsection}{\numberline {5.1.9}VirtualFull Backup Consolidation Enhancements}{44}{subsection.5.1.9}
\contentsline {subsection}{\numberline {5.1.10}FD Storage Address}{44}{subsection.5.1.10}
\contentsline {subsection}{\numberline {5.1.11}Job Bandwidth Limitation}{45}{subsection.5.1.11}
\contentsline {subsection}{\numberline {5.1.12}Maximum Concurrent Read Jobs}{46}{subsection.5.1.12}
\contentsline {subsection}{\numberline {5.1.13}Director job Codes in Message Resource Commands}{46}{subsection.5.1.13}
\contentsline {subsection}{\numberline {5.1.14}Additions to RunScript variables}{46}{subsection.5.1.14}
\contentsline {subsection}{\numberline {5.1.15}Read Only Storage Devices}{47}{subsection.5.1.15}
\contentsline {subsection}{\numberline {5.1.16}New Prune ``Expired'' Volume Command}{47}{subsection.5.1.16}
\contentsline {subsection}{\numberline {5.1.17}Hardlink Performance Enhancements}{47}{subsection.5.1.17}
\contentsline {subsection}{\numberline {5.1.18}DisableCommand Directive}{47}{subsection.5.1.18}
\contentsline {subsection}{\numberline {5.1.19}Multiple Console Directors}{48}{subsection.5.1.19}
\contentsline {subsection}{\numberline {5.1.20}Restricted Consoles}{48}{subsection.5.1.20}
\contentsline {subsection}{\numberline {5.1.21}Configuration Files}{48}{subsection.5.1.21}
\contentsline {subsection}{\numberline {5.1.22}Maximum Spawned Jobs}{48}{subsection.5.1.22}
\contentsline {subsection}{\numberline {5.1.23}Progress Meter}{48}{subsection.5.1.23}
\contentsline {subsection}{\numberline {5.1.24}Scheduling a 6th Week}{48}{subsection.5.1.24}
\contentsline {subsection}{\numberline {5.1.25}Scheduling the Last Day of a Month}{48}{subsection.5.1.25}
\contentsline {subsection}{\numberline {5.1.26}Improvements to Cancel and Restart bconsole Commands}{48}{subsection.5.1.26}
\contentsline {subsection}{\numberline {5.1.27}bconsole Performance Improvements}{48}{subsection.5.1.27}
\contentsline {subsection}{\numberline {5.1.28}New .bvfs\_decode\_lstat Command}{49}{subsection.5.1.28}
\contentsline {chapter}{\numberline {6}New Features in 5.2.13}{51}{chapter.6}
\contentsline {subsection}{\numberline {6.0.1}Additions to RunScript variables}{51}{subsection.6.0.1}
\contentsline {section}{\numberline {6.1}New Features in 5.2.1}{51}{section.6.1}
\contentsline {subsection}{\numberline {6.1.1}LZO Compression}{51}{subsection.6.1.1}
\contentsline {subsection}{\numberline {6.1.2}New Tray Monitor}{51}{subsection.6.1.2}
\contentsline {subsection}{\numberline {6.1.3}Purge Migration Job}{53}{subsection.6.1.3}
\contentsline {subsection}{\numberline {6.1.4}Changes in Bvfs (Bacula Virtual FileSystem)}{53}{subsection.6.1.4}
\contentsline {subsection}{\numberline {6.1.5}Changes in the Pruning Algorithm}{56}{subsection.6.1.5}
\contentsline {subsection}{\numberline {6.1.6}Ability to Verify any specified Job}{56}{subsection.6.1.6}
\contentsline {subsection}{\numberline {6.1.7}Additions to RunScript variables}{57}{subsection.6.1.7}
\contentsline {subsection}{\numberline {6.1.8}Additions to the Plugin API}{57}{subsection.6.1.8}
\contentsline {subsubsection}{bfuncs}{57}{section*.39}
\contentsline {subsubsection}{Bacula events}{59}{section*.40}
\contentsline {subsection}{\numberline {6.1.9}ACL enhancements}{59}{subsection.6.1.9}
\contentsline {subsection}{\numberline {6.1.10}XATTR enhancements}{59}{subsection.6.1.10}
\contentsline {subsection}{\numberline {6.1.11}Class Based Database Backend Drivers}{60}{subsection.6.1.11}
\contentsline {subsection}{\numberline {6.1.12}Hash List Enhancements}{61}{subsection.6.1.12}
\contentsline {section}{\numberline {6.2}Release Version 5.0.3}{61}{section.6.2}
\contentsline {section}{\numberline {6.3}Release Version 5.0.2}{61}{section.6.3}
\contentsline {section}{\numberline {6.4}New Features in 5.0.1}{61}{section.6.4}
\contentsline {subsection}{\numberline {6.4.1}Truncate Volume after Purge}{61}{subsection.6.4.1}
\contentsline {subsection}{\numberline {6.4.2}Allow Higher Duplicates}{62}{subsection.6.4.2}
\contentsline {subsection}{\numberline {6.4.3}Cancel Lower Level Duplicates}{62}{subsection.6.4.3}
\contentsline {section}{\numberline {6.5}New Features in 5.0.0}{62}{section.6.5}
\contentsline {subsection}{\numberline {6.5.1}Maximum Concurrent Jobs for Devices}{62}{subsection.6.5.1}
\contentsline {subsection}{\numberline {6.5.2}Restore from Multiple Storage Daemons}{62}{subsection.6.5.2}
\contentsline {subsection}{\numberline {6.5.3}File Deduplication using Base Jobs}{62}{subsection.6.5.3}
\contentsline {subsection}{\numberline {6.5.4}AllowCompression = $<${}yes$|${}no$>${}}{63}{subsection.6.5.4}
\contentsline {subsection}{\numberline {6.5.5}Accurate Fileset Options}{63}{subsection.6.5.5}
\contentsline {subsection}{\numberline {6.5.6}Tab-completion for Bconsole}{64}{subsection.6.5.6}
\contentsline {subsection}{\numberline {6.5.7}Pool File and Job Retention}{64}{subsection.6.5.7}
\contentsline {subsection}{\numberline {6.5.8}Read-only File Daemon using capabilities}{64}{subsection.6.5.8}
\contentsline {subsection}{\numberline {6.5.9}Bvfs API}{64}{subsection.6.5.9}
\contentsline {subsection}{\numberline {6.5.10}Testing your Tape Drive}{65}{subsection.6.5.10}
\contentsline {subsection}{\numberline {6.5.11}New {\bf Block Checksum} Device Directive}{65}{subsection.6.5.11}
\contentsline {subsection}{\numberline {6.5.12}New Bat Features}{65}{subsection.6.5.12}
\contentsline {subsubsection}{Media List View}{65}{section*.41}
\contentsline {subsubsection}{Media Information View}{66}{section*.42}
\contentsline {subsubsection}{Job Information View}{66}{section*.43}
\contentsline {subsubsection}{Autochanger Content View}{66}{section*.44}
\contentsline {subsection}{\numberline {6.5.13}Bat on Windows}{66}{subsection.6.5.13}
\contentsline {subsection}{\numberline {6.5.14}New Win32 Installer}{66}{subsection.6.5.14}
\contentsline {subsection}{\numberline {6.5.15}Win64 Installer}{68}{subsection.6.5.15}
\contentsline {subsection}{\numberline {6.5.16}Linux Bare Metal Recovery USB Key}{68}{subsection.6.5.16}
\contentsline {subsection}{\numberline {6.5.17}bconsole Timeout Option}{68}{subsection.6.5.17}
\contentsline {subsection}{\numberline {6.5.18}Important Changes}{68}{subsection.6.5.18}
\contentsline {subsubsection}{Custom Catalog queries}{69}{section*.46}
\contentsline {subsubsection}{Deprecated parts}{69}{section*.47}
\contentsline {subsection}{\numberline {6.5.19}Misc Changes}{69}{subsection.6.5.19}
\contentsline {chapter}{\numberline {7}Released Version 3.0.3 and 3.0.3a}{71}{chapter.7}
\contentsline {section}{\numberline {7.1}New Features in Released Version 3.0.2}{71}{section.7.1}
\contentsline {subsection}{\numberline {7.1.1}Full Restore from a Given JobId}{71}{subsection.7.1.1}
\contentsline {subsection}{\numberline {7.1.2}Source Address}{71}{subsection.7.1.2}
\contentsline {subsection}{\numberline {7.1.3}Show volume availability when doing restore}{72}{subsection.7.1.3}
\contentsline {subsection}{\numberline {7.1.4}Accurate estimate command}{72}{subsection.7.1.4}
\contentsline {section}{\numberline {7.2}New Features in 3.0.0}{72}{section.7.2}
\contentsline {subsection}{\numberline {7.2.1}Accurate Backup}{73}{subsection.7.2.1}
\contentsline {subsubsection}{Accurate = $<${}yes$|${}no$>${}}{73}{section*.48}
\contentsline {subsection}{\numberline {7.2.2}Copy Jobs}{73}{subsection.7.2.2}
\contentsline {subsection}{\numberline {7.2.3}ACL Updates}{75}{subsection.7.2.3}
\contentsline {subsection}{\numberline {7.2.4}Extended Attributes}{76}{subsection.7.2.4}
\contentsline {subsection}{\numberline {7.2.5}Shared objects}{77}{subsection.7.2.5}
\contentsline {subsection}{\numberline {7.2.6}Building Static versions of Bacula}{77}{subsection.7.2.6}
\contentsline {subsection}{\numberline {7.2.7}Virtual Backup (Vbackup)}{77}{subsection.7.2.7}
\contentsline {subsection}{\numberline {7.2.8}Catalog Format}{79}{subsection.7.2.8}
\contentsline {subsection}{\numberline {7.2.9}64 bit Windows Client}{79}{subsection.7.2.9}
\contentsline {subsection}{\numberline {7.2.10}Duplicate Job Control}{80}{subsection.7.2.10}
\contentsline {subsubsection}{Allow Duplicate Jobs = $<${}yes$|${}no$>${}}{80}{section*.49}
\contentsline {subsubsection}{Allow Higher Duplicates = $<${}yes$|${}no$>${}}{80}{section*.50}
\contentsline {subsubsection}{Cancel Running Duplicates = $<${}yes$|${}no$>${}}{80}{section*.51}
\contentsline {subsubsection}{Cancel Queued Duplicates = $<${}yes$|${}no$>${}}{80}{section*.52}
\contentsline {subsection}{\numberline {7.2.11}TLS Authentication}{80}{subsection.7.2.11}
\contentsline {subsubsection}{TLS Authenticate = yes}{80}{section*.53}
\contentsline {subsection}{\numberline {7.2.12}bextract non-portable Win32 data}{81}{subsection.7.2.12}
\contentsline {subsection}{\numberline {7.2.13}State File updated at Job Termination}{81}{subsection.7.2.13}
\contentsline {subsection}{\numberline {7.2.14}MaxFullInterval = $<${}time-interval$>${}}{81}{subsection.7.2.14}
\contentsline {subsection}{\numberline {7.2.15}MaxDiffInterval = $<${}time-interval$>${}}{81}{subsection.7.2.15}
\contentsline {subsection}{\numberline {7.2.16}Honor No Dump Flag = $<${}yes$|${}no$>${}}{81}{subsection.7.2.16}
\contentsline {subsection}{\numberline {7.2.17}Exclude Dir Containing = $<${}filename-string$>${}}{81}{subsection.7.2.17}
\contentsline {subsection}{\numberline {7.2.18}Bacula Plugins}{82}{subsection.7.2.18}
\contentsline {subsubsection}{Plugin Directory}{82}{section*.54}
\contentsline {subsubsection}{Plugin Options}{82}{section*.55}
\contentsline {subsubsection}{Plugin Options ACL}{82}{section*.56}
\contentsline {subsubsection}{Plugin = $<${}plugin-command-string$>${}}{82}{section*.57}
\contentsline {subsection}{\numberline {7.2.19}The bpipe Plugin}{83}{subsection.7.2.19}
\contentsline {subsection}{\numberline {7.2.20}Microsoft Exchange Server 2003/2007 Plugin}{83}{subsection.7.2.20}
\contentsline {subsubsection}{Background}{83}{section*.58}
\contentsline {subsubsection}{Concepts}{84}{section*.59}
\contentsline {subsubsection}{Installing}{84}{section*.60}
\contentsline {subsubsection}{Backing Up}{84}{section*.61}
\contentsline {subsubsection}{Restoring}{85}{section*.62}
\contentsline {subsubsection}{Restoring to the Recovery Storage Group}{85}{section*.63}
\contentsline {subsubsection}{Restoring on Microsoft Server 2007}{85}{section*.64}
\contentsline {subsubsection}{Caveats}{85}{section*.65}
\contentsline {subsection}{\numberline {7.2.21}libdbi Framework}{86}{subsection.7.2.21}
\contentsline {subsection}{\numberline {7.2.22}Console Command Additions and Enhancements}{87}{subsection.7.2.22}
\contentsline {subsubsection}{Display Autochanger Content}{87}{section*.66}
\contentsline {subsubsection}{list joblog job=xxx or jobid=nnn}{87}{section*.67}
\contentsline {subsubsection}{Use separator for multiple commands}{87}{section*.68}
\contentsline {subsubsection}{Deleting Volumes}{87}{section*.69}
\contentsline {subsection}{\numberline {7.2.23}Bare Metal Recovery}{87}{subsection.7.2.23}
\contentsline {subsection}{\numberline {7.2.24}Miscellaneous}{88}{subsection.7.2.24}
\contentsline {subsubsection}{Allow Mixed Priority = $<${}yes$|${}no$>${}}{88}{section*.70}
\contentsline {subsubsection}{Bootstrap File Directive -- FileRegex}{88}{section*.71}
\contentsline {subsubsection}{Bootstrap File Optimization Changes}{88}{section*.72}
\contentsline {subsubsection}{Solaris ZFS/NFSv4 ACLs}{88}{section*.73}
\contentsline {subsubsection}{Virtual Tape Emulation}{89}{section*.74}
\contentsline {subsubsection}{Bat Enhancements}{89}{section*.75}
\contentsline {subsubsection}{RunScript Enhancements}{89}{section*.76}
\contentsline {subsubsection}{Status Enhancements}{89}{section*.77}
\contentsline {subsubsection}{Connect Timeout}{89}{section*.78}
\contentsline {subsubsection}{ftruncate for NFS Volumes}{89}{section*.79}
\contentsline {subsubsection}{Support for Ubuntu}{89}{section*.80}
\contentsline {subsubsection}{Recycle Pool = $<${}pool-name$>${}}{90}{section*.81}
\contentsline {subsubsection}{FD Version}{90}{section*.82}
\contentsline {subsubsection}{Max Run Sched Time = $<${}time-period-in-seconds$>${}}{90}{section*.83}
\contentsline {subsubsection}{Max Wait Time = $<${}time-period-in-seconds$>${}}{90}{section*.84}
\contentsline {subsubsection}{Incremental|Differential Max Wait Time = $<${}time-period-in-seconds$>${}}{90}{section*.85}
\contentsline {subsubsection}{Max Run Time directives}{90}{section*.86}
\contentsline {subsubsection}{Statistics Enhancements}{90}{section*.87}
\contentsline {subsubsection}{ScratchPool = $<${}pool-resource-name$>${}}{91}{section*.88}
\contentsline {subsubsection}{Enhanced Attribute Despooling}{91}{section*.89}
\contentsline {subsubsection}{SpoolSize = $<${}size-specification-in-bytes$>${}}{91}{section*.90}
\contentsline {subsubsection}{MaximumConsoleConnections = $<${}number$>${}}{91}{section*.91}
\contentsline {subsubsection}{VerId = $<${}string$>${}}{91}{section*.92}
\contentsline {subsubsection}{dbcheck enhancements}{92}{section*.93}
\contentsline {subsubsection}{{-}{-}docdir configure option}{92}{section*.94}
\contentsline {subsubsection}{{-}{-}htmldir configure option}{92}{section*.95}
\contentsline {subsubsection}{{-}{-}with-plugindir configure option}{92}{section*.96}
\contentsline {chapter}{\numberline {8}The Current State of Bacula}{93}{chapter.8}
\contentsline {section}{\numberline {8.1}What is Implemented}{93}{section.8.1}
\contentsline {section}{\numberline {8.2}Advantages Over Other Backup Programs}{95}{section.8.2}
\contentsline {section}{\numberline {8.3}Current Implementation Restrictions}{95}{section.8.3}
\contentsline {section}{\numberline {8.4}Design Limitations or Restrictions}{96}{section.8.4}
\contentsline {section}{\numberline {8.5}Items to Note}{96}{section.8.5}
\contentsline {chapter}{\numberline {9}System Requirements}{97}{chapter.9}
\contentsline {chapter}{\numberline {10}Supported Operating Systems}{99}{chapter.10}
\contentsline {chapter}{\numberline {11}Supported Tape Drives}{101}{chapter.11}
\contentsline {section}{\numberline {11.1}Unsupported Tape Drives}{102}{section.11.1}
\contentsline {section}{\numberline {11.2}FreeBSD Users Be Aware!!!}{102}{section.11.2}
\contentsline {section}{\numberline {11.3}Supported Autochangers}{102}{section.11.3}
\contentsline {section}{\numberline {11.4}Tape Specifications}{102}{section.11.4}
\contentsline {chapter}{\numberline {12}Getting Started with Bacula}{105}{chapter.12}
\contentsline {section}{\numberline {12.1}Understanding Jobs and Schedules}{105}{section.12.1}
\contentsline {section}{\numberline {12.2}Understanding Pools, Volumes and Labels}{105}{section.12.2}
\contentsline {section}{\numberline {12.3}Setting Up Bacula Configuration Files}{106}{section.12.3}
\contentsline {subsection}{\numberline {12.3.1}Configuring the Console Program}{106}{subsection.12.3.1}
\contentsline {subsection}{\numberline {12.3.2}Configuring the Monitor Program}{106}{subsection.12.3.2}
\contentsline {subsection}{\numberline {12.3.3}Configuring the File daemon}{107}{subsection.12.3.3}
\contentsline {subsection}{\numberline {12.3.4}Configuring the Director}{107}{subsection.12.3.4}
\contentsline {subsection}{\numberline {12.3.5}Configuring the Storage daemon}{108}{subsection.12.3.5}
\contentsline {section}{\numberline {12.4}Testing your Configuration Files}{108}{section.12.4}
\contentsline {section}{\numberline {12.5}Testing Compatibility with Your Tape Drive}{108}{section.12.5}
\contentsline {section}{\numberline {12.6}Get Rid of the /lib/tls Directory}{108}{section.12.6}
\contentsline {section}{\numberline {12.7}Running Bacula}{109}{section.12.7}
\contentsline {section}{\numberline {12.8}Log Rotation}{109}{section.12.8}
\contentsline {section}{\numberline {12.9}Log Watch}{109}{section.12.9}
\contentsline {section}{\numberline {12.10}Disaster Recovery}{109}{section.12.10}
\contentsline {chapter}{\numberline {13}Installing Bacula}{111}{chapter.13}
\contentsline {section}{\numberline {13.1}Source Release Files}{111}{section.13.1}
\contentsline {section}{\numberline {13.2}Upgrading Bacula}{111}{section.13.2}
\contentsline {section}{\numberline {13.3}Releases Numbering}{112}{section.13.3}
\contentsline {section}{\numberline {13.4}Dependency Packages}{113}{section.13.4}
\contentsline {section}{\numberline {13.5}Supported Operating Systems}{114}{section.13.5}
\contentsline {section}{\numberline {13.6}Building Bacula from Source}{114}{section.13.6}
\contentsline {section}{\numberline {13.7}What Database to Use?}{117}{section.13.7}
\contentsline {section}{\numberline {13.8}Quick Start}{117}{section.13.8}
\contentsline {section}{\numberline {13.9}Configure Options}{117}{section.13.9}
\contentsline {section}{\numberline {13.10}Recommended Options for Most Systems}{123}{section.13.10}
\contentsline {section}{\numberline {13.11}Red Hat}{123}{section.13.11}
\contentsline {section}{\numberline {13.12}Solaris}{124}{section.13.12}
\contentsline {section}{\numberline {13.13}FreeBSD}{125}{section.13.13}
\contentsline {section}{\numberline {13.14}Win32}{125}{section.13.14}
\contentsline {section}{\numberline {13.15}One File Configure Script}{125}{section.13.15}
\contentsline {section}{\numberline {13.16}Installing Bacula}{125}{section.13.16}
\contentsline {section}{\numberline {13.17}Building a File Daemon or Client}{125}{section.13.17}
\contentsline {section}{\numberline {13.18}Auto Starting the Daemons}{126}{section.13.18}
\contentsline {section}{\numberline {13.19}Other Make Notes}{126}{section.13.19}
\contentsline {section}{\numberline {13.20}Modifying the Bacula Configuration Files}{127}{section.13.20}
\contentsline {chapter}{\numberline {14}Critical Items to Implement Before Production}{129}{chapter.14}
\contentsline {section}{\numberline {14.1}Critical Items}{129}{section.14.1}
\contentsline {section}{\numberline {14.2}Recommended Items}{130}{section.14.2}
\contentsline {chapter}{\numberline {15}A Brief Tutorial}{131}{chapter.15}
\contentsline {section}{\numberline {15.1}Before Running Bacula}{131}{section.15.1}
\contentsline {section}{\numberline {15.2}Starting the Database}{131}{section.15.2}
\contentsline {section}{\numberline {15.3}Starting the Daemons}{132}{section.15.3}
\contentsline {section}{\numberline {15.4}Using the Director to Query and Start Jobs}{132}{section.15.4}
\contentsline {section}{\numberline {15.5}Running a Job}{133}{section.15.5}
\contentsline {section}{\numberline {15.6}Restoring Your Files}{137}{section.15.6}
\contentsline {section}{\numberline {15.7}Quitting the Console Program}{138}{section.15.7}
\contentsline {section}{\numberline {15.8}Adding a Second Client}{138}{section.15.8}
\contentsline {section}{\numberline {15.9}When The Tape Fills}{140}{section.15.9}
\contentsline {section}{\numberline {15.10}Other Useful Console Commands}{141}{section.15.10}
\contentsline {section}{\numberline {15.11}Debug Daemon Output}{141}{section.15.11}
\contentsline {section}{\numberline {15.12}Patience When Starting Daemons or Mounting Blank Tapes}{142}{section.15.12}
\contentsline {section}{\numberline {15.13}Difficulties Connecting from the FD to the SD}{142}{section.15.13}
\contentsline {section}{\numberline {15.14}Daemon Command Line Options}{142}{section.15.14}
\contentsline {section}{\numberline {15.15}Creating a Pool}{143}{section.15.15}
\contentsline {section}{\numberline {15.16}Labeling Your Volumes}{143}{section.15.16}
\contentsline {section}{\numberline {15.17}Labeling Volumes with the Console Program}{143}{section.15.17}
\contentsline {chapter}{\numberline {16}Customizing the Configuration Files}{145}{chapter.16}
\contentsline {section}{\numberline {16.1}Character Sets}{146}{section.16.1}
\contentsline {section}{\numberline {16.2}Resource Directive Format}{146}{section.16.2}
\contentsline {subsection}{\numberline {16.2.1}Comments}{146}{subsection.16.2.1}
\contentsline {subsection}{\numberline {16.2.2}Upper and Lower Case and Spaces}{146}{subsection.16.2.2}
\contentsline {subsection}{\numberline {16.2.3}Including other Configuration Files}{147}{subsection.16.2.3}
\contentsline {subsection}{\numberline {16.2.4}Recognized Primitive Data Types}{147}{subsection.16.2.4}
\contentsline {section}{\numberline {16.3}Resource Types}{148}{section.16.3}
\contentsline {section}{\numberline {16.4}Names, Passwords and Authorization}{148}{section.16.4}
\contentsline {section}{\numberline {16.5}Detailed Information for each Daemon}{149}{section.16.5}
\contentsline {chapter}{\numberline {17}Configuring the Director}{151}{chapter.17}
\contentsline {section}{\numberline {17.1}Director Resource Types}{151}{section.17.1}
\contentsline {section}{\numberline {17.2}The Director Resource}{152}{section.17.2}
\contentsline {section}{\numberline {17.3}The Job Resource}{154}{section.17.3}
\contentsline {section}{\numberline {17.4}The JobDefs Resource}{170}{section.17.4}
\contentsline {section}{\numberline {17.5}The Schedule Resource}{170}{section.17.5}
\contentsline {section}{\numberline {17.6}Technical Notes on Schedules}{172}{section.17.6}
\contentsline {section}{\numberline {17.7}The FileSet Resource}{172}{section.17.7}
\contentsline {section}{\numberline {17.8}FileSet Examples}{184}{section.17.8}
\contentsline {section}{\numberline {17.9}Backing up Raw Partitions}{188}{section.17.9}
\contentsline {section}{\numberline {17.10}Excluding Files and Directories}{188}{section.17.10}
\contentsline {section}{\numberline {17.11}Windows FileSets}{188}{section.17.11}
\contentsline {section}{\numberline {17.12}Testing Your FileSet}{190}{section.17.12}
\contentsline {section}{\numberline {17.13}The Client Resource}{191}{section.17.13}
\contentsline {section}{\numberline {17.14}The Storage Resource}{192}{section.17.14}
\contentsline {section}{\numberline {17.15}The Pool Resource}{194}{section.17.15}
\contentsline {subsection}{\numberline {17.15.1}The Scratch Pool}{200}{subsection.17.15.1}
\contentsline {section}{\numberline {17.16}The Catalog Resource}{200}{section.17.16}
\contentsline {section}{\numberline {17.17}The Messages Resource}{201}{section.17.17}
\contentsline {section}{\numberline {17.18}The Console Resource}{201}{section.17.18}
\contentsline {section}{\numberline {17.19}The Counter Resource}{202}{section.17.19}
\contentsline {section}{\numberline {17.20}Example Director Configuration File}{203}{section.17.20}
\contentsline {chapter}{\numberline {18}Client/File daemon Configuration}{207}{chapter.18}
\contentsline {section}{\numberline {18.1}The Client Resource}{207}{section.18.1}
\contentsline {section}{\numberline {18.2}The Director Resource}{209}{section.18.2}
\contentsline {section}{\numberline {18.3}The Message Resource}{210}{section.18.3}
\contentsline {section}{\numberline {18.4}Example Client Configuration File}{210}{section.18.4}
\contentsline {chapter}{\numberline {19}Storage Daemon Configuration}{211}{chapter.19}
\contentsline {section}{\numberline {19.1}Storage Resource}{211}{section.19.1}
\contentsline {section}{\numberline {19.2}Director Resource}{213}{section.19.2}
\contentsline {section}{\numberline {19.3}Device Resource}{213}{section.19.3}
\contentsline {section}{\numberline {19.4}Edit Codes for Mount and Unmount Directives}{220}{section.19.4}
\contentsline {section}{\numberline {19.5}Devices that require a mount (USB)}{220}{section.19.5}
\contentsline {section}{\numberline {19.6}Capabilities}{221}{section.19.6}
\contentsline {section}{\numberline {19.7}Messages Resource}{221}{section.19.7}
\contentsline {section}{\numberline {19.8}Sample Storage Daemon Configuration File}{222}{section.19.8}
\contentsline {chapter}{\numberline {20}Messages Resource}{225}{chapter.20}
\contentsline {chapter}{\numberline {21}Console Configuration}{229}{chapter.21}
\contentsline {section}{\numberline {21.1}General}{229}{section.21.1}
\contentsline {section}{\numberline {21.2}The Director Resource}{229}{section.21.2}
\contentsline {section}{\numberline {21.3}The ConsoleFont Resource}{229}{section.21.3}
\contentsline {section}{\numberline {21.4}The Console Resource}{230}{section.21.4}
\contentsline {section}{\numberline {21.5}Console Commands}{232}{section.21.5}
\contentsline {section}{\numberline {21.6}Sample Console Configuration File}{232}{section.21.6}
\contentsline {chapter}{\numberline {22}Monitor Configuration}{233}{chapter.22}
\contentsline {section}{\numberline {22.1}The Monitor Resource}{233}{section.22.1}
\contentsline {section}{\numberline {22.2}The Director Resource}{233}{section.22.2}
\contentsline {section}{\numberline {22.3}The Client Resource}{234}{section.22.3}
\contentsline {section}{\numberline {22.4}The Storage Resource}{234}{section.22.4}
\contentsline {section}{\numberline {22.5}Tray Monitor Security}{234}{section.22.5}
\contentsline {section}{\numberline {22.6}Sample Tray Monitor configuration}{235}{section.22.6}
\contentsline {subsection}{\numberline {22.6.1}Sample File daemon's Director record.}{235}{subsection.22.6.1}
\contentsline {subsection}{\numberline {22.6.2}Sample Storage daemon's Director record.}{235}{subsection.22.6.2}
\contentsline {subsection}{\numberline {22.6.3}Sample Director's Console record.}{236}{subsection.22.6.3}
\contentsline {chapter}{\numberline {23}The Restore Command}{237}{chapter.23}
\contentsline {section}{\numberline {23.1}General}{237}{section.23.1}
\contentsline {section}{\numberline {23.2}The Restore Command}{237}{section.23.2}
\contentsline {subsection}{\numberline {23.2.1}Restore a pruned job using a pattern}{241}{subsection.23.2.1}
\contentsline {section}{\numberline {23.3}Selecting Files by Filename}{242}{section.23.3}
\contentsline {section}{\numberline {23.4}Replace Options}{243}{section.23.4}
\contentsline {section}{\numberline {23.5}Command Line Arguments}{243}{section.23.5}
\contentsline {section}{\numberline {23.6}Using File Relocation}{244}{section.23.6}
\contentsline {subsection}{\numberline {23.6.1}Introduction}{244}{subsection.23.6.1}
\contentsline {subsection}{\numberline {23.6.2}RegexWhere Format}{244}{subsection.23.6.2}
\contentsline {section}{\numberline {23.7}Restoring Directory Attributes}{245}{section.23.7}
\contentsline {section}{\numberline {23.8}Restoring on Windows}{245}{section.23.8}
\contentsline {section}{\numberline {23.9}Restoring Files Can Be Slow}{245}{section.23.9}
\contentsline {section}{\numberline {23.10}Problems Restoring Files}{246}{section.23.10}
\contentsline {section}{\numberline {23.11}Restore Errors}{246}{section.23.11}
\contentsline {section}{\numberline {23.12}Example Restore Job Resource}{247}{section.23.12}
\contentsline {section}{\numberline {23.13}File Selection Commands}{247}{section.23.13}
\contentsline {section}{\numberline {23.14}Restoring When Things Go Wrong}{248}{section.23.14}
\contentsline {chapter}{\numberline {24}Automatic Volume Recycling}{253}{chapter.24}
\contentsline {section}{\numberline {24.1}Automatic Pruning}{254}{section.24.1}
\contentsline {section}{\numberline {24.2}Pruning Directives}{254}{section.24.2}
\contentsline {section}{\numberline {24.3}Recycling Algorithm}{255}{section.24.3}
\contentsline {section}{\numberline {24.4}Recycle Status}{257}{section.24.4}
\contentsline {section}{\numberline {24.5}Making Bacula Use a Single Tape}{258}{section.24.5}
\contentsline {section}{\numberline {24.6}Daily, Weekly, Monthly Tape Usage Example}{258}{section.24.6}
\contentsline {section}{\numberline {24.7} Automatic Pruning and Recycling Example}{259}{section.24.7}
\contentsline {section}{\numberline {24.8}Manually Recycling Volumes}{260}{section.24.8}
\contentsline {chapter}{\numberline {25}Basic Volume Management}{263}{chapter.25}
\contentsline {section}{\numberline {25.1}Key Concepts and Resource Records}{263}{section.25.1}
\contentsline {subsection}{\numberline {25.1.1}Pool Options to Limit the Volume Usage}{264}{subsection.25.1.1}
\contentsline {subsection}{\numberline {25.1.2}Automatic Volume Labeling}{264}{subsection.25.1.2}
\contentsline {subsection}{\numberline {25.1.3}Restricting the Number of Volumes and Recycling}{265}{subsection.25.1.3}
\contentsline {section}{\numberline {25.2}Concurrent Disk Jobs}{266}{section.25.2}
\contentsline {section}{\numberline {25.3}An Example}{266}{section.25.3}
\contentsline {section}{\numberline {25.4}Backing up to Multiple Disks}{269}{section.25.4}
\contentsline {section}{\numberline {25.5}Considerations for Multiple Clients}{270}{section.25.5}
\contentsline {chapter}{\numberline {26}Automated Disk Backup}{273}{chapter.26}
\contentsline {section}{\numberline {26.1}The Problem}{273}{section.26.1}
\contentsline {section}{\numberline {26.2}The Solution}{273}{section.26.2}
\contentsline {section}{\numberline {26.3}Overall Design}{273}{section.26.3}
\contentsline {subsection}{\numberline {26.3.1}Full Pool}{274}{subsection.26.3.1}
\contentsline {subsection}{\numberline {26.3.2}Differential Pool}{274}{subsection.26.3.2}
\contentsline {subsection}{\numberline {26.3.3}Incremental Pool}{275}{subsection.26.3.3}
\contentsline {section}{\numberline {26.4}The Actual Conf Files}{275}{section.26.4}
\contentsline {chapter}{\numberline {27}Migration and Copy}{279}{chapter.27}
\contentsline {section}{\numberline {27.1}Migration and Copy Job Resource Directives}{280}{section.27.1}
\contentsline {section}{\numberline {27.2}Migration Pool Resource Directives}{281}{section.27.2}
\contentsline {section}{\numberline {27.3}Important Migration Considerations}{282}{section.27.3}
\contentsline {section}{\numberline {27.4}Example Migration Jobs}{283}{section.27.4}
\contentsline {chapter}{\numberline {28}File Deduplication using Base Jobs}{285}{chapter.28}
\contentsline {chapter}{\numberline {29}Backup Strategies}{287}{chapter.29}
\contentsline {section}{\numberline {29.1}Simple One Tape Backup}{287}{section.29.1}
\contentsline {subsection}{\numberline {29.1.1}Advantages}{287}{subsection.29.1.1}
\contentsline {subsection}{\numberline {29.1.2}Disadvantages}{287}{subsection.29.1.2}
\contentsline {subsection}{\numberline {29.1.3}Practical Details}{287}{subsection.29.1.3}
\contentsline {section}{\numberline {29.2}Manually Changing Tapes}{287}{section.29.2}
\contentsline {section}{\numberline {29.3}Daily Tape Rotation}{288}{section.29.3}
\contentsline {subsection}{\numberline {29.3.1}Advantages}{288}{subsection.29.3.1}
\contentsline {subsection}{\numberline {29.3.2}Disadvantages}{288}{subsection.29.3.2}
\contentsline {subsection}{\numberline {29.3.3}Practical Details}{289}{subsection.29.3.3}
\contentsline {chapter}{\numberline {30}Autochanger Support}{293}{chapter.30}
\contentsline {section}{\numberline {30.1}Knowing What SCSI Devices You Have}{294}{section.30.1}
\contentsline {section}{\numberline {30.2}Example Scripts}{294}{section.30.2}
\contentsline {section}{\numberline {30.3}Slots}{295}{section.30.3}
\contentsline {section}{\numberline {30.4}Multiple Devices}{295}{section.30.4}
\contentsline {section}{\numberline {30.5}Device Configuration Records}{295}{section.30.5}
\contentsline {chapter}{\numberline {31}Autochanger Resource}{297}{chapter.31}
\contentsline {section}{\numberline {31.1}An Example Configuration File}{298}{section.31.1}
\contentsline {section}{\numberline {31.2}A Multi-drive Example Configuration File}{299}{section.31.2}
\contentsline {section}{\numberline {31.3}Specifying Slots When Labeling}{299}{section.31.3}
\contentsline {section}{\numberline {31.4}Changing Cartridges}{300}{section.31.4}
\contentsline {section}{\numberline {31.5}Dealing with Multiple Magazines}{300}{section.31.5}
\contentsline {section}{\numberline {31.6}Simulating Barcodes in your Autochanger}{300}{section.31.6}
\contentsline {section}{\numberline {31.7}The Full Form of the Update Slots Command}{301}{section.31.7}
\contentsline {section}{\numberline {31.8}FreeBSD Issues}{301}{section.31.8}
\contentsline {section}{\numberline {31.9}Testing Autochanger and Adapting mtx-changer script}{301}{section.31.9}
\contentsline {section}{\numberline {31.10}Using the Autochanger}{303}{section.31.10}
\contentsline {section}{\numberline {31.11}Barcode Support}{304}{section.31.11}
\contentsline {section}{\numberline {31.12}Use bconsole to display Autochanger content}{304}{section.31.12}
\contentsline {section}{\numberline {31.13}Bacula Autochanger Interface}{304}{section.31.13}
\contentsline {chapter}{\numberline {32}Supported Autochangers}{307}{chapter.32}
\contentsline {chapter}{\numberline {33}Data Spooling}{309}{chapter.33}
\contentsline {section}{\numberline {33.1}Data Spooling Directives}{309}{section.33.1}
\contentsline {section}{\numberline {33.2}!!! MAJOR WARNING !!!}{310}{section.33.2}
\contentsline {section}{\numberline {33.3}Other Points}{310}{section.33.3}
\contentsline {chapter}{\numberline {34}Using Bacula catalog to grab information}{311}{chapter.34}
\contentsline {section}{\numberline {34.1}Job statistics}{311}{section.34.1}
\contentsline {chapter}{\numberline {35}ANSI and IBM Tape Labels}{313}{chapter.35}
\contentsline {section}{\numberline {35.1}Director Pool Directive}{313}{section.35.1}
\contentsline {section}{\numberline {35.2}Storage Daemon Device Directives}{313}{section.35.2}
\contentsline {chapter}{\numberline {36}The Windows Version of Bacula}{315}{chapter.36}
\contentsline {section}{\numberline {36.1}Windows Installation}{315}{section.36.1}
\contentsline {section}{\numberline {36.2}Post Windows Installation}{319}{section.36.2}
\contentsline {section}{\numberline {36.3}Uninstalling Bacula on Windows}{319}{section.36.3}
\contentsline {section}{\numberline {36.4}Dealing with Windows Problems}{319}{section.36.4}
\contentsline {section}{\numberline {36.5}Windows Compatibility Considerations}{321}{section.36.5}
\contentsline {section}{\numberline {36.6}Volume Shadow Copy Service}{322}{section.36.6}
\contentsline {section}{\numberline {36.7}VSS Problems}{323}{section.36.7}
\contentsline {section}{\numberline {36.8}Windows Firewalls}{323}{section.36.8}
\contentsline {section}{\numberline {36.9}Windows Port Usage}{323}{section.36.9}
\contentsline {section}{\numberline {36.10}Windows Disaster Recovery}{323}{section.36.10}
\contentsline {section}{\numberline {36.11}Windows Restore Problems}{324}{section.36.11}
\contentsline {section}{\numberline {36.12}Windows Ownership and Permissions Problems}{324}{section.36.12}
\contentsline {section}{\numberline {36.13}Manually resetting the Permissions}{324}{section.36.13}
\contentsline {section}{\numberline {36.14}Backing Up the Windows System State}{326}{section.36.14}
\contentsline {section}{\numberline {36.15}Fixing the Windows Boot Record}{327}{section.36.15}
\contentsline {section}{\numberline {36.16}Considerations for Filename Specifications}{327}{section.36.16}
\contentsline {section}{\numberline {36.17}Windows Specific File daemon Command Line}{327}{section.36.17}
\contentsline {section}{\numberline {36.18}Shutting down Windows Systems}{328}{section.36.18}
\contentsline {chapter}{\numberline {37}Disaster Recovery Using Bacula}{329}{chapter.37}
\contentsline {section}{\numberline {37.1}General}{329}{section.37.1}
\contentsline {section}{\numberline {37.2}Important Considerations}{329}{section.37.2}
\contentsline {section}{\numberline {37.3}Steps to Take Before Disaster Strikes}{329}{section.37.3}
\contentsline {section}{\numberline {37.4}Bare Metal Recovery on Linux with a Rescue CD}{330}{section.37.4}
\contentsline {section}{\numberline {37.5}Requirements}{330}{section.37.5}
\contentsline {section}{\numberline {37.6}Restoring a Client System}{330}{section.37.6}
\contentsline {section}{\numberline {37.7}Boot with your Rescue CDROM}{331}{section.37.7}
\contentsline {section}{\numberline {37.8}Restoring a Server}{332}{section.37.8}
\contentsline {section}{\numberline {37.9}Linux Problems or Bugs}{333}{section.37.9}
\contentsline {section}{\numberline {37.10}Bare Metal Recovery using a LiveCD}{333}{section.37.10}
\contentsline {section}{\numberline {37.11}FreeBSD Bare Metal Recovery}{334}{section.37.11}
\contentsline {section}{\numberline {37.12}Solaris Bare Metal Recovery}{335}{section.37.12}
\contentsline {section}{\numberline {37.13}Preparing Solaris Before a Disaster}{335}{section.37.13}
\contentsline {section}{\numberline {37.14}Bugs and Other Considerations}{335}{section.37.14}
\contentsline {section}{\numberline {37.15}Disaster Recovery of Win32 Systems}{336}{section.37.15}
\contentsline {section}{\numberline {37.16}Ownership and Permissions on Win32 Systems}{336}{section.37.16}
\contentsline {section}{\numberline {37.17}Alternate Disaster Recovery Suggestion for Win32 Systems}{336}{section.37.17}
\contentsline {section}{\numberline {37.18}Restoring to a Running System}{337}{section.37.18}
\contentsline {section}{\numberline {37.19}Additional Resources}{337}{section.37.19}
\contentsline {chapter}{\numberline {38}Bacula TLS -- Communications Encryption}{339}{chapter.38}
\contentsline {section}{\numberline {38.1}TLS Configuration Directives}{339}{section.38.1}
\contentsline {section}{\numberline {38.2}Creating a Self-signed Certificate}{340}{section.38.2}
\contentsline {section}{\numberline {38.3}Getting a CA Signed Certificate}{340}{section.38.3}
\contentsline {section}{\numberline {38.4}Example TLS Configuration Files}{341}{section.38.4}
\contentsline {chapter}{\numberline {39}Data Encryption}{343}{chapter.39}
\contentsline {section}{\numberline {39.1}Building Bacula with Encryption Support}{343}{section.39.1}
\contentsline {section}{\numberline {39.2}Encryption Technical Details}{344}{section.39.2}
\contentsline {section}{\numberline {39.3}Decrypting with a Master Key}{344}{section.39.3}
\contentsline {section}{\numberline {39.4}Generating Private/Public Encryption Keys}{344}{section.39.4}
\contentsline {section}{\numberline {39.5}Example Data Encryption Configuration}{345}{section.39.5}
\contentsline {chapter}{\numberline {40}Using Bacula to Improve Computer Security}{347}{chapter.40}
\contentsline {section}{\numberline {40.1}The Details}{347}{section.40.1}
\contentsline {section}{\numberline {40.2}Running the Verify}{348}{section.40.2}
\contentsline {section}{\numberline {40.3}What To Do When Differences Are Found}{349}{section.40.3}
\contentsline {section}{\numberline {40.4}A Verify Configuration Example}{350}{section.40.4}
\contentsline {chapter}{\numberline {41}Installing and Configuring MySQL}{353}{chapter.41}
\contentsline {section}{\numberline {41.1}Installing and Configuring MySQL -- Phase I}{353}{section.41.1}
\contentsline {section}{\numberline {41.2}Installing and Configuring MySQL -- Phase II}{354}{section.41.2}
\contentsline {section}{\numberline {41.3}Re-initializing the Catalog Database}{355}{section.41.3}
\contentsline {section}{\numberline {41.4}Linking Bacula with MySQL}{355}{section.41.4}
\contentsline {section}{\numberline {41.5}Installing MySQL from RPMs}{356}{section.41.5}
\contentsline {section}{\numberline {41.6}Upgrading MySQL}{356}{section.41.6}
\contentsline {section}{\numberline {41.7}MySQL Configuration Caution}{356}{section.41.7}
\contentsline {chapter}{\numberline {42}Installing and Configuring PostgreSQL}{357}{chapter.42}
\contentsline {section}{\numberline {42.1}Installing PostgreSQL}{357}{section.42.1}
\contentsline {section}{\numberline {42.2}Configuring PostgreSQL}{357}{section.42.2}
\contentsline {section}{\numberline {42.3}Re-initializing the Catalog Database}{360}{section.42.3}
\contentsline {section}{\numberline {42.4}Installing PostgreSQL from RPMs}{360}{section.42.4}
\contentsline {section}{\numberline {42.5}Converting from MySQL to PostgreSQL}{360}{section.42.5}
\contentsline {section}{\numberline {42.6}Upgrading PostgreSQL}{362}{section.42.6}
\contentsline {section}{\numberline {42.7}Tuning PostgreSQL}{362}{section.42.7}
\contentsline {section}{\numberline {42.8}Credits}{362}{section.42.8}
\contentsline {chapter}{\numberline {43}Installing and Configuring SQLite}{363}{chapter.43}
\contentsline {section}{\numberline {43.1}Installing and Configuring SQLite -- Phase I}{363}{section.43.1}
\contentsline {section}{\numberline {43.2}Installing and Configuring SQLite -- Phase II}{364}{section.43.2}
\contentsline {section}{\numberline {43.3}Linking Bacula with SQLite}{364}{section.43.3}
\contentsline {section}{\numberline {43.4}Testing SQLite}{364}{section.43.4}
\contentsline {section}{\numberline {43.5}Re-initializing the Catalog Database}{364}{section.43.5}
\contentsline {chapter}{\numberline {44}Catalog Maintenance}{365}{chapter.44}
\contentsline {section}{\numberline {44.1}Setting Retention Periods}{365}{section.44.1}
\contentsline {section}{\numberline {44.2}Compacting Your MySQL Database}{366}{section.44.2}
\contentsline {section}{\numberline {44.3}Repairing Your MySQL Database}{366}{section.44.3}
\contentsline {section}{\numberline {44.4}MySQL Table is Full}{367}{section.44.4}
\contentsline {section}{\numberline {44.5}MySQL Server Has Gone Away}{367}{section.44.5}
\contentsline {section}{\numberline {44.6}MySQL Temporary Tables}{368}{section.44.6}
\contentsline {section}{\numberline {44.7}Repairing Your PostgreSQL Database}{368}{section.44.7}
\contentsline {section}{\numberline {44.8}Database Performance Issues}{368}{section.44.8}
\contentsline {section}{\numberline {44.9}Performance Issues Indexes}{368}{section.44.9}
\contentsline {subsection}{\numberline {44.9.1}PostgreSQL Indexes}{369}{subsection.44.9.1}
\contentsline {subsection}{\numberline {44.9.2}MySQL Indexes}{369}{subsection.44.9.2}
\contentsline {subsection}{\numberline {44.9.3}SQLite Indexes}{369}{subsection.44.9.3}
\contentsline {section}{\numberline {44.10}Compacting Your PostgreSQL Database}{370}{section.44.10}
\contentsline {section}{\numberline {44.11}Compacting Your SQLite Database}{370}{section.44.11}
\contentsline {section}{\numberline {44.12}Migrating from SQLite to MySQL or PostgreSQL}{370}{section.44.12}
\contentsline {section}{\numberline {44.13}Backing Up Your Bacula Database}{370}{section.44.13}
\contentsline {section}{\numberline {44.14}Security considerations}{371}{section.44.14}
\contentsline {section}{\numberline {44.15}Backing Up Third Party Databases}{372}{section.44.15}
\contentsline {section}{\numberline {44.16}Database Size}{372}{section.44.16}
\contentsline {chapter}{\numberline {45}Bacula Security Issues}{375}{chapter.45}
\contentsline {section}{\numberline {45.1}Backward Compatibility}{376}{section.45.1}
\contentsline {section}{\numberline {45.2}Configuring and Testing TCP Wrappers}{376}{section.45.2}
\contentsline {section}{\numberline {45.3}Running as non-root}{377}{section.45.3}
\contentsline {chapter}{\numberline {46}The Bootstrap File}{379}{chapter.46}
\contentsline {section}{\numberline {46.1}Bootstrap File Format}{379}{section.46.1}
\contentsline {section}{\numberline {46.2}Automatic Generation of Bootstrap Files}{382}{section.46.2}
\contentsline {section}{\numberline {46.3}Bootstrap for bscan}{382}{section.46.3}
\contentsline {section}{\numberline {46.4}A Final Bootstrap Example}{382}{section.46.4}
\contentsline {chapter}{\numberline {47}Bacula Copyright, Trademark, and Licenses}{385}{chapter.47}
\contentsline {section}{\numberline {47.1}CC-BY-SA}{385}{section.47.1}
\contentsline {section}{\numberline {47.2}GPL}{385}{section.47.2}
\contentsline {section}{\numberline {47.3}LGPL}{385}{section.47.3}
\contentsline {section}{\numberline {47.4}Public Domain}{385}{section.47.4}
\contentsline {section}{\numberline {47.5}Trademark}{385}{section.47.5}
\contentsline {section}{\numberline {47.6}Fiduciary License Agreement}{386}{section.47.6}
\contentsline {section}{\numberline {47.7}Disclaimer}{386}{section.47.7}
\contentsline {section}{\numberline {47.8}Authors}{386}{section.47.8}
\contentsline {section}{\numberline {47.9}Table of Contents}{399}{section.47.9}
\contentsline {section}{\numberline {47.10}GNU LESSER GENERAL PUBLIC LICENSE}{399}{section.47.10}
\contentsline {section}{\numberline {47.11}Preamble}{399}{section.47.11}
\contentsline {section}{\numberline {47.12}TERMS AND CONDITIONS}{400}{section.47.12}
\contentsline {section}{\numberline {47.13}How to Apply These Terms to Your New Libraries}{404}{section.47.13}
\contentsline {chapter}{\numberline {48}Thanks}{407}{chapter.48}
\contentsline {section}{\numberline {48.1}Bacula Bugs}{409}{section.48.1}
