]> git.sur5r.net Git - bacula/bacula/blob - bacula/ReleaseNotes
Add missing bwild & bregex man8 pages
[bacula/bacula] / bacula / ReleaseNotes
1
2                Release Notes for Bacula 5.2.1
3
4   Bacula code: Total files = 1,110 Total lines = 231,439 (Using SLOCCount)
5
6 General:
7 --------
8
9 This 5.2.1 version is a major release since the last version 5.0.3.
10 It includes well over 299,387 lines of changes made by 20 contributors,
11 lots of bug fixes (see below), 1,851 software commits,and a 
12 number of important new features:
13
14 Version 5.2.0
15 -------------
16 Version 5.2.0 was short lived, because Marco (thanks) found
17 a number of last minute bugs. So the first official release of 5.2
18 is 5.2.1.
19
20 Compatibility:
21 --------------
22  As always, both the Director and Storage daemon must be upgraded at
23  the same time.
24
25  Older 5.0.x and 3.0.x File Daemons are compatible with the 5.2.1
26  Director and Storage daemons. There should be no need to upgrade older File
27  Daemons.
28
29 Main New Features:
30 ------------------
31 - LZO Compression
32 - New Tray Monitor
33 - Purge Migration Job
34 - Changes in Bvfs (Bacula Virtual FileSystem)
35 - Changes in the Pruning Algorithm
36 - Ability to Verify any specified Job
37 - Additions to RunScript variables
38 - Additions to the Plugin API
39 - ACL enhancements
40 - XATTR enhancements
41 - Class Based Database Backend Drivers
42 - Hash List Enhancements
43
44 Some of the above are described below; all the above are
45 described in more detail in the New Features chapter of the
46 manual.
47
48 Closed Bugs since 5.0.3:
49 ---------------------
50 1389 1444 1448 1466 1467 1468 1476 1481 1486 1488 1493 1494 1497 1499 1501
51 1502 1504 1509 1511 1513 1516 1524 1526 1527 1532 1536 1538 1541 1542 1549
52 1551 1553 1554 1558 1559 1560 1564 1567 1568 1569 1571 1574 1577 1581 1582
53 1584 1587 1594 1595 1600 1601 1602 1603 1604 1606 1608 1610 1612 1623 1624
54 1633 1643 1648 1655 1661 1664 1666 1669 1672 1675 1684 1685 1695 1696 1699
55 1700 1703 1735 1741 1749 1751 1761 1762 1764 1768 1770 1771 2710
56
57
58 ================== Warning !!!!!! ==========================
59
60  The new pruning algorithm will not allow pruning of jobs that are essential to
61  restore since the last Full backup. This is, of course, correct and desirable,
62  but it is different from older Bacula versions that could inappropriately
63  prune jobs. Pruning of volumes is not affected.
64
65 Building Bat:
66 -------------
67 To build Bat, you need Qt4 version 4.6.2.  If you build with any other
68 version it is likely not to work.  If you do not have version 4.6.2, on
69 your system, you can download the Bacula depkgs_qt version 16Dec10.
70
71 Packaging the SQL backend:
72 --------------------------
73 The main Bacula Director code is independent of the SQL backend
74 in this version. This means that the Bacula Director can be packaged
75 by itself, then each of the different SQL backends supported can
76 be packaged separately.  It is possible to build all the DB backends
77 at the same time.
78
79 - configure can be run with multiple database configure options.
80    --with-sqlite3
81    --with-mysql
82    --with-postgresql
83
84 Order of testing for database is
85 - postgresql
86 - mysql
87 - sqlite3
88
89 Each configured backend generates a libbaccats-<backend_name>-<version>.so
90 A dummy catalog library is created named libbaccats-version.so
91
92 At configure time the first detected backend is used as the so called default
93 backend and at install time the dummy libbaccats-<version>.so is replaced with
94 the default backend type.
95
96 If you configure all 3 backends you get 3 backend libraries and the postgresql
97 gets installed as the default.  When you want to switch the default you can
98 copy one of the 3 backend libraries over the libbaccats-<version>.so e.g.
99
100 cp libbaccats-postgresql-<version>.so libbaccats-<version>.so
101
102 And update the default backend in the following files:
103
104 create_bacula_database
105 drop_bacula_database
106 drop_bacula_tables
107 grant_bacula_privileges
108 make_bacula_tables
109 make_catalog_backup
110 update_bacula_tables 
111
112 New Catalog format in version 5.2.0 and greater
113 -----------------------------------------------
114 This release of Bacula uses a new catalog format. We provide a set of
115 scripts that permit to convert a 5.0.x (version 12) catalog to 5.2.1 (version
116 14).  The Bacula project rpm spec files have been modified to
117 detect the database change and do the upgrade for you.  We strongly
118 recommend that you save a copy of your existing database before upgrading
119 using rpms.
120
121 The simplest way to upgrade the database assuming you are building from
122 source (i.e. manually):
123 1. Stop any current version of Bacula from running.
124 2. Save a copy of your existing database.
125 3. Configure, build, and install the 5.2.1 version of Bacula
126    Note the new ./configure options in the manuals see the link
127    at the bottom of this file.
128 4. cd <your-scripts-installation-directory>
129 5. ./update_bacula_tables
130 6. If you have multiple catalogs, edit the update_bacula_tables
131    script and put the name of another database, and then
132    execute the script again. Repeat this until all Bacula
133    catalogs have been updated.
134 7. Start the new Bacula.  If everything worked, it should
135    not print any error messages.
136
137 If you start from scratch, you don't need to run the update_bacula_tables
138 script because the create_bacula_tables script automatically creates the new
139 table format.  However, if you are using a version of Bacula older than 5.0.0
140 (e.g.  3.0.3) then you need to run the update_bacula_tables script that will
141 be found in the <bacula>/src/cats directory after you run the ./configure
142 command.  As mentioned above, before running this script, please backup your
143 catalog database, and when you do running it, be sure shutdown Bacula and be
144 aware that running the script can take some time depending on your database
145 size.
146
147 ================================================================
148
149 Changes:
150
151 Speed and Memory Usage Enhancements:
152 - Implement LZO compression algorithm (need lzo2 headers to activate this option)
153 - New Pruning algoritm -- safer and faster
154 - Use of PostgreSQL cursor when doing large queries, should reduce the
155   memory usage during restore and accurate backups.
156 - limit command in some list commands
157 - Bacula Virtual File System for fast catalog access
158 - Faster crc32 algorithm
159
160 Security Enhancements:
161 - Additional security against injection of illegal characters
162 - Fix possible fnmatch problem
163
164 Features Enhancements:
165 - Improvements in ACL and xattr handling on additional platforms:
166   AIX, Darwind, FreeBSD, HPUX, IRIX, Solaris, Tru64
167 - Tray monitor for Windows
168 - New SQL backend and ./configure that permits building multiple catalog
169   backends in one build, and has the main Bacula core code totally independent
170   of the SQL backend, which should simplify packaging (only the
171   libbacsql.so/dll needs to be changed to switch from one database backend
172   to another (e.g. MySQL to PostgreSQL).
173 - Indent lsmark during restore
174 - Disable batch insert config item
175 - Director selection option in bconsole
176 - restorejob command in bconsole
177 - Many additional features for bat such as "brestore" panel
178 - The old bat version browser has been turned off since it does not
179   work correctly and the brestore panel provides the same functionality
180 - Improved hash table for hard links
181 - Additional script variable editing such as %b (JobBytes), %F (JobFiles) 
182   and %h (Client Address)
183
184 Other Enhancements:
185 - Includes better handling for Windows repares points, mount points, and 
186   junction points.
187 - New database format
188 - Many new plugin API features
189 - Improved memory handling for restores
190 - Significant stability enhancements to bat
191 - xattr/ACL restore failure are now printed as Warning
192 - A few path name length limits in Windows have been removed.
193
194
195 ===========================================================================
196
197 The 5.0.3 version is significant bug fix update to version 5.0.2.
198 It includes new code and some new features.
199 There is no database change since prior versions of 5.0.
200
201 Note, if you are running 5.0.0, read the 5.0.1 and 5.0.2 release notes below in
202   the 5.0.1 release section.
203   Important!!!
204
205 Compatibility:
206 --------------
207  As always, both the Director and Storage daemon must be upgraded at
208  the same time.
209
210  Older 5.0.x and 3.0.x File Daemons are compatible with the 5.0.3
211  Director and Storage daemons. There should be no need to upgrade older File
212  Daemons.
213
214 Changes and New Features:
215 - If a VSS (Windows) snapshot fails, the whole Job is failed, previously
216   it printed a warning message and continued.
217 - New editing codes %b = Job Bytes and %f = Job Files for runscripts
218 - Any non-Bacula project plugins (i.e. third party plugins) 
219   must be upgraded to specify AGPLv3 in place of the GPLv2 used previously 
220   for the PLUGIN_LICENSE.
221 - The bat Media page text columns can be sorted by clicking on the column.
222 - If possible, the SD will automatically update the catalog Volume size if 
223   it does not match the Volume size. The mismatch between the Volume sizes
224   typically occurs when the FD has a comm line drop or the FD crashes.
225
226
227 Bug fixes
228 1538 1554 1564 1567 1568 1569 1571 1577 1581 1582 1587 1594 1595 1606 1610
229
230 - Change license from GPLv2 to AGPLv3
231 - Make Win32 no filesystem change more explicit
232 - Backport Branch-4.0 release to Branch-5.0
233 - Massive backport from Branch-5.1 to Branch-5.0
234 - Fix postgresql catalog creation when version is not on the first line
235 - Fix bug #1610 handle empty xattr values on Linux and xBSD.
236 - Garbage collect memory pool at end of job and before sm_dump
237 - Add xattr seg fault protection suggested by Marco for bug #1610
238 - Add archlinux to os.m4
239 - More fixes for 32/64 bit problems in smartall
240 - Fix 32/64 bit problem in smartalloc dump routine
241 - Fix bad copy/paste in commit c88dccb88 prably a seg fault
242 - Add .dump and .exit commands for daemons
243 - Make SD automatically fix the Volume size in the Catalog when out of sync
244 - Use Pmsg in smartall.c rather than printf for tracing Windows
245 - Up maximum block size to 20M
246 - Fix for TLS bugs #1568 and #1599
247 - Improve comm line error handling for TLS, may fix bug #1568 and #1599
248 - Fix problem when sending Cancel event to plugin
249 - Convert all Jmsg on the watchdog thread to Qmsg
250 - Fix SD crash due to mismatched lock/unlock in error condition
251 - Fix bug #1587 if you have clients with different catalogs configured, both 
252   catalogs contains all clients after a reload or restart of the dir
253 - Fix bug #1577 During migration: ERROR in block.c:950 Failed ASSERT: dev->is_open() 
254   by moving and commenting out the ASSERT()
255 - Skip HB kill in FD if HB thread terminated
256 - Fix crash from unequal volume_lock/unlock calls
257 - New prunning algorithm -- should be more accurate
258 - Save any dumps during regression to dumps directory
259 - Fix crash from rw_lock/unlock miss match
260 - Attempt to fix duplicate job kill seg fault
261 - Replace pthread_kill by my_thread_send_signal() in jcr.c
262 - fix #1595 about batch mode detection problem for postgresql with non standard 
263   install dir
264 - Fix #1594 about prune copy jobs
265 - Apply literal string fix in printf submitted by Luca Berra
266 - Fix bug #1582 Restore from multiple storage daemons breaks subsequent backups
267 - Fix segfault on "cancel jobid=" command
268 - Fix bug #1554 Windows installer doesn't honor /S flag
269 - Remove pool zap code that breaks 2drive-concurrent-test
270 - Fix #1571 and install libraries with 755 perms
271 - Fix bug #1581 ASSERTs in src/dird/jobq.c can never trigger
272 - Fix problem with BaseJob and Accurate FileSet options on client side
273 - Fix for bug #1569 deadlock/crash in Dir
274 - Fix segfault when loading Plugins
275 - Fix #1567 about display of long volume names truncated during restore
276 - Added new bacula-libs package.
277 - Fix bug #1538 Start Scripts return incorrect value
278 - Fix bug #1564 init scripts not LSB compliant
279
280 See ChangeLog for more details.
281
282 =============================================================================
283
284
285 ============= Release 5.0.2 ========================
286
287 Changes since 5.0.1
288 -------------------
289
290 Bug fixes
291 1502 1511 1517 1524 1527 1532 1536 1541 1549 1551 1553 1559 1560
292
293 - Probable fix for SD crash bug #1553
294 - Fix #1559 problem when restoring pruned jobs with a regexp
295 - Fix for bug #1560 bcopy cannot find Volume
296 - Fix cancel crash bug #1551
297 - Check if sql backend is thread-safe
298 - Correct Pool display in SD status. Fixes bug #1541
299 - Fix cancel crash reported by Stephen Thompson
300 - Rewind on close to fix #1549
301 - Remove closelog() in bpipe fixes bug #1536
302 - Fix #1517 about missing Base level in .level command
303 - Replace ASSERT in block.c with fail Job
304 - Fix database locking calling db_lock and returning from function without
305   calling db_unlock.
306 - Add missing db_unlock to bvfs_update_cache.
307 - Fix #1532 about permission on binaries
308 - Fix #1527 about deadlock during migration
309 - Another fix for OpenSSLv1
310 - Add -lrt to Solaris links
311 - Fix tls.c for OpenSSLv1
312 - Fix #1511 when trying to insert more than 50.000 directories in bvfs
313 - Fix plugin load not to stop if one plugin bad -- pointed out by James
314 - Remove --without-qwt from configure statement.
315 - Second correct fix to bug #1524 verify fails after adding or removing files
316 - Fix bug #1524 verify fails after adding or removing files
317 - Apply fix suggested by Andreas in bug #1502 for mediaview column sort problem
318 - Fix OpenSSL 1.x problem in crypto.c on Fedora 12
319 - Display AllowCompress warning message only if compression used in FileSet
320
321 =============================================================================
322
323
324 ============= Release 5.0.1 ========================
325
326 !!!!!!!!!!!!!!! NOTE FOR 5.0.0 USERS !!!!!!!!!!!!!!!!!!!!
327 The Allow Duplicate Jobs directive has been significantly 
328 reworked, and the default value has changed. See below.
329
330 Truncate On Purge has been totally rewritten. See the new
331 features section of the manual.
332
333 When Volume Poll Interval is set in the SD DEVICE configuration,
334 (default 5 mins), after a certain number of polling tries (approx
335 10) polling will stop and the operator will be asked to
336 resolve the problem.  Previously there was no limit, and an
337 error message could be produced at each poll attempt.
338 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
339
340 Changes since 5.0.0
341 -------------------
342 - We believe that we have resolved most of the problems
343   concerning canceled or failed jobs being "stuck" in the
344   Director.  There is one outstanding problem in the SD when
345   canceling jobs that we will fix in the next major release.
346   If you see jobs that seem to be stuck, in general issuing
347   a cancel command in bconsole should now make them go away.
348
349 Directives:
350 - The default for "Allow Duplicate Jobs" has been changed from 
351   no to yes.  If you use this directive, please check your
352   conf file, and note the next two items !!!!!!!!!!!!!!!!!!!
353 - AllowHigherDuplicates disabled. It did not work as documented   
354     and was confusing.
355 - New directive "CancelLowerLevelDuplicates" See New Features
356   section in the manual.
357 - Truncate on Purge rewritten.  See New Features section in the manual.
358
359 Bug fixes:
360 1448 1466 1467 1468 1476 1481 1486 1488 1494 1497 
361 1499 1501 1505 1509 1513
362
363 - Ensure SD asks for help when looping even if poll set. Fixes bug #1513.
364 - Fix three-pool regress bug
365 - Modify bacula.spec fixes bug #1505
366 - This version fixes an issue where the console window would start out
367   docked. It is fixed by initiating the variables in the Pages class wi
368   constructor.
369 - Fix make_catalog_backup.pl fails when catalog db is on other host
370 - Apply MacOSX installer patch from bug #1509
371 - Apply fix to previous fix of Copy problem. Fix proposed by reporter o
372   #1476
373 - Fix bug #1501 -t does not print errors
374 - Apply SQLite3 update fix from bug #1497
375 - Apply bashism fix for diskchanger.in script from bug #1499
376 - Apply rpm fix for Sci Linux from bug #1494
377 - Take most recent Ukranian po from bug #1448
378 - Probable fix for Copy/Migration bug #1476
379 - Fix bug #1488 -- avoid recursion and race conditions in messages.c
380 - Upgrade cats library also to 5.0.0
381 - Fix missing console page in bat
382 - Add bat help files to Window install
383 - Improve Windows upgrade to ensure old FD is shutdown
384 - Fix bug #1481 -- bat consumes all console file descriptors
385 - Backport truncate on purge from 5.1.x
386 - Fix bug #1486 -- bat doesn't show any errors on command-line
387 - Update the bsock error URL
388 - Correct .my.cnf umask in make_catalog_backup.pl
389 - Apply fix for dbcheck use by make_catalog_backup.pl
390 - Fix seg fault in bscan from new comment field
391 - Allow multiple CNs when using TLS
392 - Fix seg fault in SQlite driver
393 - Make shared libs version the same as the Bacula release version
394 - Remove file_index sequential check
395 - Fix #1466 about Bogus pruning message
396
397 For Packagers:
398 1.  The default query.sql file is now, except for some comments, empty.
399 The old file, which we no longer support (it is impossible or difficult to
400 make it work on every backend, and the queries are mostly contributed) can
401 be found in <bacula-source>/examples/sample-query.sql.  The sample file is
402 not installed by the Makefiles
403
404 2.  When you install the mtx-changer script, you must also install
405 mtx-changer.conf if it does not exist.  This new file (mtx-changer.conf) is
406 required for mtx-changer to work, but it is a user configurable file, so on
407 any update, any existing file should not be overwritten.
408
409 3.  Bat should be built on every platform that is capabable of running Qt.
410 However, the Qt code is changing rather quickly and is not always
411 compatible from version to version.  We have built and verified bat on Qt
412 4.3.4.  We strongly recommend that you do not build and distribute bat with
413 any other version of Qt unless you personally test it.  To build against Qt
414 4.3.4, download the depkgs-qt package from the Bacula Source Forge download
415 location, read the README file and follow the instructions.
416
417 If you are building for Bacula version 5.0.0, please ensure that you do not
418 have qmake-qt4 loaded on your system.  If you do, either remove it or
419 rename it before trying to build bat.  If you do not, bat will probably be
420 built using the shared objects on your system.  For Bacula 5.0.1 and later,
421 this problem (bug) does not exist.
422
423 depkgs-qt does not install Qt on your system, nor does it interfere with
424 you having any other version of Qt installed on your system.  Once you
425 build bat with depkgs-qt, it should *not* use the Qt shared objects, but
426 rather they will be linked into the program.  After fully installing bat
427 (make install), you can run "ldd bat" to see what shared objects it will
428 use.  If any Qt shared objects are referenced, something has gone wrong.
429
430 4.  Unless absolutely necessary, we recommend that you do not define any
431 special library environment variables that apply to the ./configure -- for
432 example: LIBDIR=/...  ./configure <your-options> is strongly discouraged.
433 Doing so, could potentially cause Bacula to be linked against the wrong
434 shared objects.
435
436 5.  The Bacula project strongly recommends that you install Bacula into a
437 single directory, with a few minor exceptions such as the MySQL or
438 PostgreSQL databases.  Preferrably this should be /opt/bacula.  The full
439 recommendation is:
440
441 #!/bin/sh
442 # Recommended configure script for Bacula
443 prefix=/opt/bacula
444 email=xxx@yyy.zz
445 CFLAGS="-g -O2 -Wall" \
446   ./configure \
447     --sbindir=${prefix}/bin \
448     --sysconfdir=${prefix}/etc \
449     --docdir=${prefix}/html \
450     --htmldir=${prefix}/html \
451     --with-working-dir=${prefix}/working \
452     --with-pid-dir=${prefix}/working \
453     --with-subsys-dir=${prefix}/working \
454     --with-scriptdir=${prefix}/scripts \
455     --with-plugindir=${prefix}/plugins \
456     --libdir=${prefix}/lib \
457     --enable-smartalloc \
458     --enable-tray-monitor \
459     --enable-bat \
460     --with-mysql \
461     --with-dump-email=${email} \
462     --with-job-email=${email} \
463     --with-smtp-host=localhost \
464     --with-baseport=9101
465
466 Obviously, the email, and some of the minor options (mysql, postgresql,
467 ...) can be changed to suit your distribution, but the directory names
468 defined above are strongly recommended, and over time the default values in
469 the bacula-dir.conf and bacula-sd.conf will reflect these choices.
470
471 If you have any questions about this or would like a detailed document
472 describing our recommendations including packaging requirements, please
473 send an email to the bacula-devel list.
474
475 6.  Starting with Bacula version 3.0.0 up to Bacula 5.0.0, the shared
476 libraries that Bacula uses by default are named xxx-1.0.0.  Starting with
477 Bacula 5.0.1, we are going to name the libraries using the Bacula version.
478 So in Bacula 5.0.1, the libraries will be named xxx-5.0.1.  With future
479 versions, the last digit may or may not change when we distribute patch
480 updates (i.e.  the last digit of the version changes).  This will depend on
481 whether or not we have changed something in the library.  Hopefully this
482 new procedure will resolve some of the incompatibility problems between
483 different versions of the shared objects.
484
485 7.  The default build option for bconsole is conio (my own little console
486 routines).  I did this because some years ago, readline was very difficult
487 to maintain -- it and where it was found seemed to change on every release.
488 This generated at the time a number of support problems.  It seems to me
489 that since then there have been very few problems with readline.  As a
490 consequence, I have no problem if you want to make bconsole with readline
491 enabled.  It will actually give some very nice new bconsole command
492 completion functionality that Eric has written.  Bottom line: feel free to
493 use readline or not as you please.
494
495 ==========================================================
496
497
498
499 Release Notes for Bacula 5.0.0
500
501 Release Numbering:
502 -----------------------------------------------------------
503 You might be wondering why this release jumps from 3.0.x to 
504 5.0.0 thus skipping version 4.0.0.  We have done this for 
505 several reasons: first, we wanted a way of distinguishing
506 the numbering system for the Bacula System Enterprise version
507 and the Bacula Project version.  So, to do so, we have decided
508 that the first number of the Bacula Project version will always
509 be odd, and the first number of the Enterprise version will always
510 be even. Thus the Bacula Project now moves from 3.0.x to 5.0.x.
511 In addition, we want to keep the Bacula Project version larger
512 than the Enterprise version to indicate that the Bacula Project
513 version is more advanced or has more features than the 
514 Enterprise version. For memory, the current Enterprise version
515 is 2.6.1, and the next release (in a few months -- before June 2010)
516 will be version 4.0.0.
517
518 Warning:
519 --------------------------------------------------------------
520 Please note the three Warnings below before doing any install or
521 upgrade.
522        
523
524 Changes since 3.0.3a (the last Bacula Project release):
525 -------------------------------------------------------
526
527 Bug fixes:
528 1337 1351 1352 1354 1357 1361 1367 1369 1370 1373 
529 1376 1391 1403 1409 1420 1422 1427 1428 1431 1450 
530 1454 1455 1458 1456
531
532 Fixed:
533  - Problem that locks the Director when the SMTP server wasn't 
534    responding to the bsmtp program 
535  - Restore's dir command shows incorrect file sizes 
536  - Fix various problems with the reload command   
537  - Fix problems with conio
538  - Eliminate several deadlocks or potential race conditions from SD
539
540 Enhancements:
541  - Project 5: Truncate volume after purge
542  - Project 6: File Deduplication using Base Jobs 
543  - Project 10: Restore from Multiple Storage Daemons
544  - Project 11: AllowCompression per Device
545  - Project 23: Add Maximum Concurent Jobs for Devices to balance load 
546    between drives
547  - Add Accurate Fileset Options to configure accurate detection. Can use 
548    checksum verification for example.
549  - Allow FD to keep root read but drop write permission (CAP)
550  - Secure handling of passwords for catalog backup
551  - Add Tab-completion for Bconsole when using Readline
552  - Add Bvfs API to query the catalog without building a memory tree
553  - Add new speed test to btape program
554  - Add new Bat screens (Autochanger content, Job view, Media view, ...)
555  - Windows version of Bat
556  - Added Spanish Bacula translation   
557  - New bconsole -u nnn option to have timeout on commands
558  - Allow Migrate, Copy, and Virtual Full to read and write
559    to the same Pool
560  - show disabled   -- shows disabled Jobs
561  - Add Pool File and Job retention periods (take precedence over Client)
562  - Many ACL improvements
563  - Level added to FD status Job entry
564  - Allow turning on/off Block Checksum per device
565  - Set Device Poll interval to 5 minutes -- previously did not poll
566  - Implement lock manager with bad order protection
567
568 Compatibility:
569 As always, both the Director and Storage daemon must be upgraded at
570 the same time, and on any given machine, you must run only one version
571 of Bacula. This means that on the Director and Storage daemon machines,
572 you *must* upgrade your File daemon as well.
573
574 Older 3.0.x and possibly 2.4.x File Daemons are compatible with the 5.0.0
575 Director and Storage daemons. There should be no need to upgrade older File
576 Daemons immediately. However, we recommend that you do so as soon
577 as is reasonable for your situation.
578
579 ================== Warning !!!!!! ==========================
580
581 New Catalog format in version 5.0.0 (3.1.9 or later)
582 -----------------------------------------------------
583
584 This release of Bacula uses a new catalog format. We provide a set of
585 scripts that permit to convert a 3.0.x (version 11) catalog to 5.0.0 (version
586 12).  The Bacula project rpms distributed on Source Forge will automatically
587 detect the database change and do the upgrade for you.  We strongly
588 recommend that you save a copy of your existing database before upgrading
589 using rpms.
590
591 The simplest way to upgrade the database assuming you are building from
592 source:
593 1. Stop any current version of Bacula from running.
594 2. Save a copy of your existing database.
595 3. Configure, build, and install the 5.0.0 version of Bacula
596    Note the new ./configure options in the manuals see the link
597    at the bottom of this file.
598 4. cd <your-scripts-installation-directory>
599 5. ./update_bacula_tables
600 6. If you have multiple catalogs, edit the update_bacula_tables
601    script and put the name of another database, and then
602    execute the script again. Repeat this until all Bacula
603    catalogs have been updated.
604 7. Start the new Bacula.  If everything worked, it should
605    not print any error messages.
606
607 If you start from scratch, you don't need to run the update_bacula_tables
608 script because the create_bacula_tables script automatically creates the new
609 table format.  However, if you are using a version of Bacula older than 3.1.9
610 (e.g.  3.0.3) then you need to run the update_bacula_tables script that will
611 be found in the <bacula>/src/cats directory after you run the ./configure
612 command.  As mentioned above, before running this script, please backup your
613 catalog database, and when you do running it, be sure shutdown Bacula and be
614 aware that running the script can take some time depending on your database
615 size.
616 ================================================================
617
618
619 ================== Warning !!!!!! ==========================
620 If you upgrade a previous Win32 client installation, you must
621 first stop the File daemon, then uninstall it before attempting
622 the upgrade. If you do not do so, the upgrade will probably
623 fail and you will need to manually find and run the 
624 Uninstall.exe file, before you can upgrade to the new version.
625 This is because the file locations are different.  If you want
626 to save your previous bacula-fd.conf file, please do so before
627 uninstalling it.
628 ================================================================
629
630 ================== Warning !!!!!! ==========================
631 Due to permissions problems on Windows Vista and later systems,
632 we no longer require SYSTEM or Administrator permissions to 
633 access the binaries and configuation files.  If you wish
634 to restrict access to these files, please see the New Features
635 section of the manual for how to set access control lists.
636 ================================================================
637
638 Note, the Win32 Installer no longer installs the Bacula Servers
639 (Director and Storage daemon). See the New Features section of
640 the manual for more details.
641
642 ============ Documentation improvements needed ==================
643
644 Note!!!!! The 5.0.0+ documentation has a number of known problems:
645
646 1. We have reduced the number of manuals, which has fixed many
647    of the broken links found in the old 3.0.x version, but there
648    are still some that need fixing.
649
650 2. Integration of the 3.0.x features into the main manuals has
651    not yet been done.
652
653 The documentation will not be completed in the near future due to lack
654 manpower.  If you are unhappy with this situation as we are, we suggest
655 you help by submitting patches to the documentation.  Thanks.
656 =====
657
658
659 This release includes large number of new features and changes.
660 It should be more or less compatible with previous xx.conf files
661 and File daemons providing that you are not using any of the new
662 features.
663
664 Please see the New Features chapter of the new manual, which documents
665 some but not all the new features (we are still working on it):
666
667 http://www.bacula.org/5.0.x-manuals/en/main/main/New_Features_in_5_0_1.html
668   
669 The ChangeLog has more details.