- Release Notes for Bacula 1.28
- Bacula code: Total files = 228 Total lines = 62,042 (*.h *.c *.in)
+ Release Notes for Bacula 1.31
+
+ Bacula code: Total files = 251 Total lines = 74,714 (*.h *.c *.in)
Major Changes this Release:
-- Bare Metal Recovery mostly automated for Linux systems and
- partially automated for Solaris
-- Optimized restore, forward spaces to correct tape file and
- stops reading the archive when all files are restored.
-- Schedule permits specification of 1st, 2nd, ... week e.g.
- 1st Sun ...
+- The database format has changed. Please see below.
+- Support to save and restore all files on WinNT/2K/XP systems
+ including the permissions. Unfortunately files that are in use by another
+ program cannot be saved.
+- Support for Win95 systems (untested since I don't have Win95).
+- Heartbeat every 20 minutes between daemons to prevent network
+ timeouts. The heartbeat interval can be set.
+- Volume names may now only contain letters, numbers, colon, period, dash,
+ and underscore.
+- Added readline to depkgs (removed from depkgs1) and fixed configuration if
+ it is not installed in your system libraries.
+- Implemented generalized tape label formats including counter variables
+ for automatic naming of Volumes.
+- Multiple simultaneous jobs now work.
+- Implemented tape block rejection, which means that restores with
+ several incremental backups will run orders of magnitude faster.
+
Other Changes this Release:
-- Allow backup of raw partitions.
-- Fixed Restore options (never,ifnewer, ...). They now work.
-- Added a --enable-client-only option that will cause "make" to only
- build the File daemon and the libraries it needs.
-- Documented how to save the Catalog database (with included script).
-- Faster Storage daemon initialization (using pthreads)
-- Unlimited devices in Storage daemon (previously hard coded to 20).
-- Fixed bug that recognized only the last option specified on Include record.
-- Easier building of statically linked version of Bacula.
-- Fixed pruning bug.
-- Fixes for VolUseDuration (problems putting it in DB).
-- Fix for / specified as Where.
-- Enhanced WriteBootstrap (more precise parameters -- e.g. volfile, ...)
-- Improved handling of Differential jobs (now on par with Incremental)
-- User supplied script in examples directory for backing up AFS file system.
-- User supplied script for Sun-desktop autoloader (examples/devices).
-- Added configure options for building static versions of the
- daemons and the console program.
-- New bidirectional timed pipe mechanism for running child processes
- permits better error messages.
-- Removed last restrictions on filename length for catalog items. Previous
- maximum was 500 chars for path and 500 chars for filename. Now unlimited.
-- Improvements all over the code to prevent string overflows and to ensure
- that copied strings are properly terminated.
-- Improved handling of 64 bit integers especially concerning the DB.
-- Database now contains accurate tape file/block positions, and many other
- DB items are more correctly handled.
-- Improved bootstrap record generation (more detail).
-
-Items to note:
-- Nothing in particular.
+- Restore checks block numbers to ensure that no block is lost.
+- The new console var command allows testing variable expansion
+ used in automatic tape name generation.
+- The new console estimate command allows you to test FileSets
+ to see how many files and bytes will be saved and optionally
+ to have an "ls -l" style listing of the files.
+- During a normal restore (replace = yes), any existing file is deleted
+ and the restored file is then created. This corrects links and other
+ wierd files that changed between the backup and the restore.
+- Preliminary support for BSDi.
+- Use smtp instead of mail to send the traceback message.
+- Fixed a race condition in the "list" command while a backup is
+ in progress.
+- Beginning of support for SSL encryption.
+- Beggining of support for Base level backups.
+- Improvements to gnome-console.
+- Prune orphaned jobs (no files saved, no Volume used).
+- Added non-fatal errors to Job reports.
+- Eliminate need for SubsysDirectory in each daemon -- please remove
+ these records from your .conf files.
+- Add a lot more "command line" options to console commands.
+- More info in traceback (database type, ...).
+- Better handling of errors with autochangers during restore.
+- Better cancellation of jobs in Storage daemon (doesn't try
+ to cleanup twice).
+- Better cancellation of File daemon (except on Cygwin systems).
+- SD error messages such as autochanger errors are now properly
+ directed back to Console -- previously some were lost.
+- A Storage daemon crash on FreeBSD systems (due to a different FreeBSD
+ pthreads implementation) is fixed.
+- Better Job termination report particularly for Verify and Restore jobs.
+- Update Verify VolumeToCatalog to use new BSR records.
+- Fixed list last 20 jobs in restore command (previously reported any
+ 20 jobs).
+- Gnome command line history works better.
+- Better messages if a job is upgraded from Diff or Inc to Full.
+- Replaced FileSet MD5 with date created -- more aestetic and readable.
+- Fixed a FD crash on long directory names (Win32 specific).
+
+
+
+Items to note: !!!!!
+- The default time interval is now days instead of seconds. Please
+ check your .conf files!
+- For MySQL users, you must have the thread safe client libraries
+ available. If you build MySQL yourself, add the --enable-thread-safe-client
+ option on the ./configure. You will most likely need to do an ldconfig.
+ Please see the installation documentation for building MySQL.
+- Version 1.31 and 1.30 daemons/Director are not compatible. You must
+ upgrade all or nothing.
+- The format of the catalog database has changed, so you must either
+ re-initialize your database (losing all the old info) with:
+
+ ./drop_bacula_tables
+ ./make_bacula_tables
+
+ or you can use the appropriate script (you must choose the name according
+ to which database you have) in the <bacula-source>/src/cats directory.
+
+ BEFORE APPLYING THE ALTER SCRIPT PLEASE BACKUP YOUR DATABASE. Do one
+ of the following only if you wish to keep your old tables (not doing
+ the re-initialize documented above), and do this only after configuring
+ an building the new Bacula, but before trying to run it:
+
+ MySQL:
+ cd working-directory (or where you want to backup the catalog)
+ mysqladmin -f --opt bacula >bacula.sql
+ cd <bacula-source>/src/cats
+ ./alter_mysql_tables
+
+ SQLite:
+ cd working-directory
+ echo '.dump' sqlite bacula.db >bacula.sql
+ cd <bacula-source>/src/cats
+ ./alter_sqlite_tables
+
+ When you are sure that Bacula is running with your upgraded database,
+ please delete the bacula.sql copy you made.
+