]> git.sur5r.net Git - bacula/docs/commitdiff
Update
authorKern Sibbald <kern@sibbald.com>
Sat, 4 Mar 2006 15:12:40 +0000 (15:12 +0000)
committerKern Sibbald <kern@sibbald.com>
Sat, 4 Mar 2006 15:12:40 +0000 (15:12 +0000)
12 files changed:
docs/developers/porting.tex
docs/developers/version.tex
docs/home-page/donations.txt
docs/home-page/news.txt
docs/home-page/pages/makedonation.php
docs/manual-de/version.tex
docs/manual/console.tex
docs/manual/dirdconf.tex
docs/manual/postgresql.tex
docs/manual/storedconf.tex
docs/manual/version.tex
docs/manual/win32.tex

index 7411d4c5f87ba82d3b82561a803374079c864030..60561eb0f80fe916b8d3166e7f200ec0cc85f69a 100644 (file)
@@ -25,7 +25,7 @@ In General, the following holds true:
 \begin{itemize}
 \item {\bf Bacula} has been compiled and run on Linux RedHat, FreeBSD,  and
    Solaris systems. 
-\item In addition, clients exist on Win32 (Cygwin), and Irix 
+\item In addition, clients exist on Win32, and Irix 
 \item It requires GNU C++ to compile. You can try with other compilers, but 
    you are on your own. The Irix client is built with the Irix complier,  but, in
    general, you will need GNU. 
@@ -37,11 +37,16 @@ In General, the following holds true:
 distribution. 
 \item There are certain third party packages that Bacula needs. Except  for
    MySQL, they can all be found in the {\bf depkgs} and  {\bf depkgs1} releases. 
-\item If you want to build the Win32 binaries, you will need the  full Cygwin
-   1.5.5 release. Although all components build (console  has some warnings),
-   only the File daemon has been tested.  Please note that if you attempt to
-build Bacula on any other  version of Cygwin, particularly previous versions,
-you will  be on your own. 
+\item To build the Win32 binaries, we use Microsoft VC++ standard
+   2003. Please see the instructions in
+   bacula-source/src/win32/README.win32 for more details. If you
+   want to use VC++ Express, please see README.vc8. Our build is
+   done under the most recent version of Cygwin, but Cygwin is
+   not used in the Bacula binaries that are produced.
+   Unfortunately, we do not have the resources to help you build
+   your own version of the Win32 FD, so you are pretty much on
+   your own. You can ask the bacula-devel list for help, but
+   please don't expect much.
 \item {\bf Bacula} requires a good implementation of pthreads to work. 
 \item The source code has been written with portability in mind and is  mostly
    POSIX compatible. Thus porting to any POSIX compatible operating  system
index c09bb4e4dd0231d22798b3669c35c02322c592b6..eb54cda081ca139698752ff23ba7967be79a5d45 100644 (file)
@@ -1 +1 @@
-1.39.5 (20 February 2006)
+1.38.6-beta3 (04 March 2006)
index 3f07f1650007f59dec57e84205ee00e2c2fc3e21..1621f3c946d59f01834ef59dc47eeffc80f0c061 100644 (file)
@@ -1,6 +1,6 @@
 Kern;;;2006/01/06;;;12:30 
 Bacula is now able to accept direct donations, and as of
-15 January 2006, we have received the following:
+26 February 2006, we have received the following:
 
 Amounts received:
   Date      Amount:    Donor: 
@@ -15,10 +15,11 @@ Amounts received:
 Payments made:
             Amount:    To/for:
  06 Jan 06   $100       OSDN (Source Forge) for hosting Bacula
+ 15 Feb 06   $171.95    VC++ for Scott
 ===
 
 Balance:
-Total  $646.84  After payments and PayPal fees are deducted
+Total  $474.89  After payments and PayPal fees are deducted
 
 Many thanks to the above Bacula supporters.
 
index aca4a619e7a56fb74c9ecb6414ea0e39d1c26366..ff14978c60dc7117dbc81702ff08da9c25c74ab8 100644 (file)
-Kern;;;2006/01/16;;;14:30
-The Bacula Version 1.38.3 tar file is released to Source Forge.
+Kern;;;2006/02/266;;;14:30
+The Bacula Version 1.38.6-beta2 patch file has been released to the
+bacula-patches area of Source Forge.
 
 
-          Release Notes for Bacula 1.38.3
+          Release Notes for Bacula 1.38.6-beta2
 
-  Bacula code: Total files = 424 Total lines = 140,955 (*.h *.c *.in)
+  Bacula code: Total files = 418 Total lines = 136,328 (*.h *.c *.in)
       20,440 additional lines of code since version 1.36.3
 
-Changes to 1.38.3:
+New features:
+- For autochanger get Scratch tape if in autochanger if
+  no appendable Volumes are available.
+- New virtual disk autochanger.  See scripts/disk-changer for
+  documentation.
+- New optional Device resource directive in SD.  'Device Type =',
+  which may have types: File, DVD, Tape, or FIFO.  This can
+  be useful for writing DVDs on FreeBSD where Bacula cannot
+  correctly detect the DVD.
+Major bug fixes:
+- Fix race condition in multiple-drive autochangers where
+  both drives want the same Volume.
+- Do not allow opening default catalog for restricted console
+  if it is not in ACL.
+
+Minor bug fixes:
+- See below:
+
+Release 1.38.6-beta2 25Feb06
+25Feb06
+- Add sql_use_result() define.
+
+Changes to 1.38.6-beta1
+- Don't open default catalog if not in ACL.
+- Add virtual disk autochanger code.
+- Add user supplied bug fix to make two autochangers work
+  correctly using StorageId with InChanger checks.
+- Correct new/old_jcr confusion in copy_storage().
+- Remove & from Job during scan in msgchan.c -- probably
+  trashed the stack.
+- When getting the next Volume if no Volume in Append mode   
+  exists and we are dealing with an Autochanger, search
+  for a Scratch Volume.  
+- Check for missing value in dot commands -- bug fix.
+- Fix bug in update barcodes command line scanning.
+- Make sure Pool Max Vols is respected.
+- Check that user supplied a value before referencing
+  it in restore -- pointed out by Karl Hakimian. 
+- Add Karl Hakimian's table insert code.
+- Don't ask user to select a specific Volume when
+  updating all volumes in a Pool.
+- Remove reservation if set for read when removing dcr.
+- Lock code that requests next appendable volume so that
+  two jobs to get the same Volume at the same time.
+- Add new Device Type = xxx code. Values are file, tape,
+  dvd, and fifo.
+- Preserve certain modes (ST_LABEL|ST_APPEND|ST_READ) across
+  a re-open to change read/write permission on a device.
+- Correct a misplaced double quote in certain autochanger  
+  scripts.
+- Make make_catalog_backup.in a bit more portable.
+- Implement Karl Hakimian's sql_use_result(), which speeds
+  up restore tree building and reduces the memory load.
+- Correct a number of minor bugs in getting a Volume from  
+  the Scratch Pool.
+- Implement additional command line options for update Volume.
+- Don't require user to enter a Volume name when updating
+  all Volumes in a pool.
+
+Release 1.38.5 released 19Jan06:
+- Apply label barcodes fix supplied by Rudolf Cejka.
+- Modify standard rpm installation to set SD group to disk
+  so that SD will by default have access to tape drives.
+- Allow users to specify user/group and start options
+  for each daemon in /etc/sysconf/bacula file.
+
+Changes to 1.38.4 released 17Jan06:
+- The main changes are to the Director and the Storage daemon,
+  thus there is no need to update your File daemons. Just the
+  same, I do recommend running with the release 1.38.3 Win32
+  FD or later.
+- Add two new queries to query.sql provided by Arno. One
+  list volumes known to the Storage device, and the other
+  lists volumes possibly needing replacement (error, ...).
+- Add periodic (every 24 hours) garbage collection of memory 
+  pool by releasing free buffers.
+- Correct bug counting sized (for display only) in smartall.c
+- Print FD mempool stats if debug > 0 rather than 5.
+- Correct bug in alist.c that re-allocated the list if the
+  number of items goes to zero.
+- Move the reservation system thread locking to the top level
+  so that one job at a time tries all possible drives before
+  waiting.
+- Implement a reservation 'fail' message queue that is built         
+  and destroyed on each pass through the reservation system.
+  These messages are displayed in a 'Jobs waiting to reserve
+  a drive' list during a 'status storage='.  Note, multiple
+  messages will generally print for each JobId because they
+  represent the different problems with either the same drive
+  or different drives.  If this output proves too confusing
+  of voluminous, I will display it only when debug level 1
+  or greater is enabled in the SD.
+- Add enable/disable job=<job-name>.  This command prevents
+  the specified job from being scheduled. Even when disabled,
+  the job can be manually started from the console.
+- During 'update slots' clear all InChanger flags where the
+  StorageId is zero (old Media records).
+- Fix autochanger code to strip leading spaces from returned
+  slots number. Remove bc from chio-changer.
+- Back port a bit of 1.39 crypto code to reduce diffs.
+- Fix first call to autochanger that missed close()ing the
+  drive. Put close() just before each run_program().  Fixes
+  Arno's changer bug.
+- Add PoolId to Job record when updating it at job start time.
+- Pull in more code from 1.39 so that there are fewer file
+  differences (the new ua_dotcmds.c, base64.h, crypto.h
+  hmac.c jcr.c (dird and lib) lib.h md5.h parse_conf.c
+  util.c. Aside from ua_dotcmds.c these are mostly crypto
+  upgrades.
+- Implement new method of walking the jcr chain. The
+  incr/dec of the use_count is done within the walking
+  routines.  This should prevent a jcr from being freed
+  from under the walk routines.
+
+
+Changes to 1.38.3 released 05Jan06:
 - This is mainly a bug release fix. In addition, the multiple drive
   reservation algorithm has been rewritten.
 - In addition, the method of handling waiting for tapes to be
@@ -16,7 +133,7 @@ Changes to 1.38.3:
 - Simplify code in askdir.c that waits for creating an appendable
   volume so that it can handle multiple returns from the wait code.
 - Modify the wait code to permit multiple returns.
-- Return a zero when "autochanger drives" is called and
+- Return a zero when 'autochanger drives' is called and
   it is not an autochanger.
 - Make rewind_dev() a method taking a DCR as an argument.
   This permits closing and reopening the drive if the
@@ -91,9 +208,9 @@ Changes to 1.38.3:
   at the same time.
 - Apply days keyword patch from Alexander.Bergolth at wu-wien.ac.at 
   If this patch is applied, the number of days can be specified with
-  "list nextvol days=xx"
+  'list nextvol days=xx'
   or
-  "status dir days=xx"
+  'status dir days=xx'
   My use case is to be able to preview the next scheduled job (and the 
   next tape to be used) on fridays if there are no scheduled jobs during 
   the weekend.
@@ -186,7 +303,7 @@ Major Changes in 1.38:
 - Volume Shadow Copy support for Win32 thus the capability to
   backup exclusively opened files (thanks to Thorsten Engel).
   A VSS enabled Win32 FD is available.  You must explicitly
-  turn on VSS with "Enable VSS = yes" in your FileSet resource.
+  turn on VSS with 'Enable VSS = yes' in your FileSet resource.
 - New manual format with an index (thanks to Karl Cunningham).
 - New Web site format (thanks to Michael Scherer).
 - SQLite3 support.
@@ -197,13 +314,13 @@ Major Changes in 1.38:
   in native languages.  Thanks to Nicolas Boichat.
 
 New Directives:
-- New Job directive "Prefer Mounted Volumes = yes|no" causes the
+- New Job directive 'Prefer Mounted Volumes = yes|no' causes the
   SD to select either an Autochanger or a drive with a valid 
   Volume already mounted in preference. If none is available,
   it will select the first available drive.
 - New Run directive in Job resource of DIR. It permits
   cloning of jobs.  To clone a copy of the current job, use
-     Run = "job-name level=%l since=\"%s\""
+     Run = 'job-name level=%l since=\'%s\''
   Note, job-name is normally the same name as the job that
   is running but there is no restriction on what you put. If you
   want to start the job by hand and use job overrides such as       
@@ -291,7 +408,7 @@ New Directives:
   of the manual.
 
 New Commands:
-- "python restart" restarts the Python interpreter. Rather brutal, make
+- 'python restart' restarts the Python interpreter. Rather brutal, make
    sure no Python scripts are running. This permits you to change
    a Python script and get Bacula to use the new script.
 
@@ -305,11 +422,11 @@ Items to note!!!
 - The Storage daemon now keeps track of what tapes it is using
   (was not the case in 1.36.x). This means that you must be much
   more careful when removing tapes and putting up a new one. In
-  general, you should always do a "unmount" prior to removing a
-  tape, and a "mount" after putting a new one into the drive.
+  general, you should always do a 'unmount' prior to removing a
+  tape, and a 'mount' after putting a new one into the drive.
 - If you use an Autochanger, you MUST update your SD conf file
   to use the new Autochanger resource.  Otherwise, certain commands
-  such as "update slots" may not work.
+  such as 'update slots' may not work.
 - You must add --with-python=[DIR] to the configure command line
   if you want Python support.  Python 2.2, 2.3 and 2.4 should be 
   automatically detected if in the standard place.
@@ -343,7 +460,7 @@ Items to note!!!
   compiling.
 
 
-Other Items:
+Other Items Fixed:
 - Security fixes for temp files created in mtx-changer, during
   ./configure, and during making of Rescue disk.
 - A new script, dvd-handler, in the scripts directory,
@@ -354,7 +471,7 @@ Other Items:
   <bacula-source>/patches/dvd+rw-tools-5.21.4.10.8.bacula.patch
   You must have Python installed to run the scripts.
 - Part files support: File volumes can now be split into multiple
-  files, called "parts".
+  files, called 'parts'.
 - For the details of the Python scripting support, please see the new
   Python Scripting chapter in the manual.
 - The default user/group for the Director and Storage daemon installed
@@ -363,6 +480,7 @@ Other Items:
   all else fails, change to using user=root.  However, it is more secure
   to use user=bacula.
 
+
 Michael;;;2005/02/25;;;19:59
 News-Page for the Bacula-Website finished
 When you read this, you read the first news posted by me *hehe*
index ee56df0a37a032eac928c38bfe3a22ce2d861589..a4b8be9c9a628216681bcc91255f6b93ae1dd445 100644 (file)
@@ -17,7 +17,7 @@
 </tr>
 <tr>
     <td class="content">
-    Although one talks about Free Software, in fact, software such
+    Although one talks about Free Software, in fact, Open Software such
     as Bacula was not developed without some cost. The software
     may be free for the user, but it wasn't free for the developer
     or developers, either in terms of time or in terms of financial
     desire to have them reimbursed.
 
     Bacula is now a fairly mature product, and to ensure its long
-    term survival, I believe it should start to pay its own way.
+    term survival, I believe it is time that Bacula begins to
+    stand on its own, both financially and for the development.
     <p>
-    There are multiple ways of contributing to the Bacula
+    There are ways you can contribute to the Bacula
     project, some of which are: ideas, user support,
     documentation review, translation, programming and
     contributing code, testing the new releases, hosting
     services, testing machines, donating needed equipment, and
     financial support.
 
-    Previously all but the last one were possible.
+    Previously all but the last one (financial support) were possible.
     It is now possible for you to contribute financial aid
     the Bacula project.  All funds collected will be used to help
     further the Bacula project by covering out of pocket expenses
@@ -51,7 +52,7 @@
 
     <p>
     The project actually has the following needs (approximate costs): <br>
-    Three Microsoft Visual C++ licenses:  $3000<br>
+    Three Microsoft Visual C++ licenses:  $1500<br>
     Autochanger for FreeBSD testing:      $3200<br>
     Autochanger for Solaris testing:      $3200<br>
 
@@ -67,8 +68,8 @@
     If you are a government or for-profit corporation and cannot
     make &quot;donations&quot;, please consider paying a (non-obligatory)
     binary license fee for any Bacula built binaries that you download. 
-    By providing you with these pre-built, pre-tested binaries, we are
-    really providing you with an extra service, which merits you
+    By making these pre-built, pre-tested binaries available, we are
+    providing users who download them with an extra service, which merits
     careful consideration for making a contribution or paying a 
     &quot;license fee&quot;.
 
index c09bb4e4dd0231d22798b3669c35c02322c592b6..eb54cda081ca139698752ff23ba7967be79a5d45 100644 (file)
@@ -1 +1 @@
-1.39.5 (20 February 2006)
+1.38.6-beta3 (04 March 2006)
index af9b0701bc71bba01838341802edff4c45e77cbd..ac7414efc8a4d5ef9796c69a931bc8ecd0166eeb 100644 (file)
@@ -387,9 +387,16 @@ update storage=xxx pool=yyy slots=1-5,10 barcodes
 \begin{verbatim}
    list jobs
    
-   list jobid=\lt{}id\gt{}
+   list jobid=\lt{}id\gt{}           (list jobid id)
+
+   list jobuname=\lt{}job-uname\gt{} (list job with unique name)
    
-   list job=\lt{}job-name\gt{}
+   list job=\lt{}job-name\gt{}   (list all jobs with "job-name"
+
+   list jobname=\lt{}job-name\gt{}  (same as above)
+
+     In the above, you can add "limit=nn" to limit the output to
+     nn jobs.
    
    list jobmedia
    
index 810e91145172a76df0d2684884b7a7568782b274..0d61816a9b3c807d80fafc4b792672ffccda761a 100644 (file)
@@ -82,17 +82,20 @@ index and media database redundancy.
 supplied.  
 
 \item [Name = \lt{}name\gt{}]
-   \index[dir]{Name }
+   \index[dir]{Name}
+   \index[dir]{Directive!Name}
    The director name used by the system  administrator. This directive is
 required.  
 
 \item [Description = \lt{}text\gt{}]
-   \index[dir]{Description }
+   \index[dir]{Description}
+   \index[dir]{Directive!Description}
    The text field contains a  description of the Director that will be displayed
 in the  graphical user interface. This directive is optional.  
 
 \item [Password = \lt{}UA-password\gt{}]
-   \index[dir]{Password }
+   \index[dir]{Password}
+   \index[dir]{Directive!Password}
    Specifies the password that  must be supplied for the default Bacula Console
    to be  authorized. The same password must appear in the  {\bf Director}
    resource of the Console configuration file.  For added security, the password
@@ -103,7 +106,8 @@ in the  graphical user interface. This directive is optional.
    blank and  you must manually supply it.  
 
 \item [Messages = \lt{}Messages-resource-name\gt{}]
-   \index[dir]{Messages }
+   \index[dir]{Messages}
+   \index[dir]{Directive!Messages}
    The messages resource  specifies where to deliver Director messages that are
    not associated  with a specific Job. Most messages are specific to a job and
    will  be directed to the Messages resource specified by the job. However, 
@@ -111,7 +115,8 @@ in the  graphical user interface. This directive is optional.
    directive is required.  
 
 \item [Working Directory = \lt{}Directory\gt{}]
-   \index[dir]{Working Directory }
+   \index[dir]{Working Directory}
+   \index[dir]{Directive!Working Directory}
    This directive  is mandatory and specifies a directory in which the Director 
    may put its status files. This directory should be used only  by Bacula but
    may be shared by other Bacula daemons. However, please note, if this
@@ -124,7 +129,8 @@ in the  graphical user interface. This directive is optional.
    as {\bf \$HOME} will be properly expanded. This directive is required.
 
 \item [Pid Directory = \lt{}Directory\gt{}]
-   \index[dir]{Pid Directory }
+   \index[dir]{Pid Directory}
+   \index[dir]{Directive!Pid Directory}
    This directive  is mandatory and specifies a directory in which the Director 
 may put its process Id file. The process Id file is used to  shutdown
 Bacula and to prevent multiple copies of  Bacula from running simultaneously. 
@@ -137,7 +143,8 @@ not installing Bacula in the  system directories, you can use the {\bf Working
 Directory} as  defined above.  This directive is required.  
 
 \item [Scripts Directory = \lt{}Directory\gt{}]
-   \index[dir]{Scripts Directory }
+   \index[dir]{Scripts Directory}
+   \index[dir]{Directive!Scripts Directory}
    This directive is optional and, if defined, specifies a directory in
    which the Director will look for the Python startup script {\bf
    DirStartup.py}.  This directory may be shared by other Bacula daemons.
@@ -146,7 +153,8 @@ Directory} as  defined above.  This directive is required.
    expanded.
 
 \item [QueryFile = \lt{}Path\gt{}]
-   \index[dir]{QueryFile }
+   \index[dir]{QueryFile}
+   \index[dir]{Directive!QueryFile}
    This directive is mandatory and specifies a directory and file in which
    the Director can find the canned SQL statements for the {\bf Query}
    command of the Console.  Standard shell expansion of the {\bf Path} is
@@ -155,7 +163,8 @@ Directory} as  defined above.  This directive is required.
 
 \label{DirMaxConJobs}
 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
-\index[dir]{Maximum Concurrent Jobs }
+\index[dir]{Maximum Concurrent Jobs}
+\index[dir]{Directive!Maximum Concurrent Jobs}
 \index[general]{Simultaneous Jobs}
 \index[general]{Concurrent Jobs}
    where \lt{}number\gt{}  is the maximum number of total Director Jobs that
@@ -183,19 +192,22 @@ For more details on getting concurrent jobs to run, please  see
 of this manual.  
 
 \item [FD Connect Timeout = \lt{}time\gt{}]
-   \index[dir]{FD Connect Timeout }
+   \index[dir]{FD Connect Timeout}
+   \index[dir]{Directive!FD Connect Timeout}
    where {\bf time} is the time that the Director should continue
    attempting to contact the File daemon to start a job, and after which
    the Director will cancel the job.  The default is 30 minutes.
 
 \item [SD Connect Timeout = \lt{}time\gt{}]
-   \index[dir]{SD Connect Timeout }
+   \index[dir]{SD Connect Timeout}
+   \index[dir]{Directive!SD Connect Timeout}
    where {\bf time} is the time that the Director should continue
    attempting to contact the Storage daemon to start a job, and after which
    the Director will cancel the job.  The default is 30 minutes.
 
 \item [DirAddresses = \lt{}IP-address-specification\gt{}]
-   \index[dir]{DirAddresses }
+   \index[dir]{DirAddresses}
+   \index[dir]{Directive!DirAddresses}
    Specify the ports and addresses on which the Director daemon will listen
    for Bacula Console connections.  Probably the simplest way to explain
    this is to show an example:
@@ -209,20 +221,20 @@ of this manual.
     ipv6 = {
         addr = 1.2.3.4;
         port = 1205;
-   }
+  }
     ip = {
         addr = 1.2.3.4
         port = 1205
-   }
+  }
     ip = {
         addr = 1.2.3.4
-   }
+  }
     ip = {
         addr = 201:220:222::2
-   }
+  }
     ip = {
         addr = bluedot.thun.net
-   }
+  }
 }
 \end{verbatim}
 \normalsize
@@ -236,7 +248,8 @@ the resolution can be made either by IPv4 or  IPv6. If ip4 is specified, then
 only IPv4 resolutions will be permitted,  and likewise with ip6. 
 
 \item [DIRport = \lt{}port-number\gt{}]
-   \index[dir]{DIRport }
+   \index[dir]{DIRport}
+   \index[dir]{Directive!DIRport}
    Specify the port (a positive  integer) on which the  Director daemon will
 listen for Bacula Console connections.  This same port number must be
 specified in the Director resource  of the Console configuration file. The
@@ -244,7 +257,8 @@ default is 9101, so  normally this directive need not be specified.  This
 directive is not needed if you specify DirAddresses. 
 
 \item [DirAddress = \lt{}IP-Address\gt{}]
-   \index[dir]{DirAddress }
+   \index[dir]{DirAddress}
+   \index[dir]{Directive!DirAddress}
    This directive is optional,  but if it is specified, it will cause the
 Director server (for  the Console program) to bind to the specified {\bf
 IP-Address},  which is either a domain name or an IP address specified as a 
@@ -292,10 +306,12 @@ Clients, you must define a Job for each one.
 
 \item [Job]
    \index[dir]{Job}
+   \index[dir]{Directive!Job}
    Start of the Job resource. At least one Job  resource is required. 
 
 \item [Name = \lt{}name\gt{}]
-   \index[dir]{Name }
+   \index[dir]{Name}
+   \index[dir]{Directive!Name}
    The Job name. This name can be specified  on the {\bf Run} command in the
    console program to start a job. If the  name contains spaces, it must be
    specified between quotes. It is  generally a good idea to give your job the
@@ -307,7 +323,8 @@ Clients, you must define a Job for each one.
    execution. This directive is required. 
 
 \item [Type = \lt{}job-type\gt{}]
-   \index[dir]{Type }
+   \index[dir]{Type}
+   \index[dir]{Directive!Type}
    The {\bf Type} directive specifies  the Job type, which may be one of the
    following: {\bf Backup},  {\bf Restore}, {\bf Verify}, or {\bf Admin}. This
    directive  is required. Within a particular Job Type, there are also Levels 
@@ -349,7 +366,8 @@ Although an Admin job is recorded in the  catalog, very little data is saved.
 \label{Level}
 
 \item [Level = \lt{}job-level\gt{}]
-   \index[dir]{Level }
+   \index[dir]{Level}
+   \index[dir]{Directive!Level}
    The Level directive specifies  the default Job level to be run. Each
 different
 Job Type (Backup, Restore, ...) has a different set of Levels  that can be
@@ -575,7 +593,8 @@ been deleted.
 \end{description}
 
 \item [Verify Job = \lt{}Job-Resource-Name\gt{}]
-   \index[dir]{Verify Job }
+   \index[dir]{Verify Job}
+   \index[dir]{Directive!Verify Job}
    If you run  a verify job without this directive, the last job run will  be
 compared with the catalog, which means that you must  immediately follow a
 backup by a verify command. If you  specify a {\bf Verify Job} Bacula will
@@ -584,7 +603,8 @@ backups, then run Verify jobs on those that  you wish to be verified (most
 often a {\bf VolumeToCatalog})  so that the tape just written is re-read. 
 
 \item [JobDefs = \lt{}JobDefs-Resource-Name\gt{}]
-   \index[dir]{JobDefs }
+   \index[dir]{JobDefs}
+   \index[dir]{Directive!JobDefs}
    If a JobDefs-Resource-Name  is specified, all the values contained in the
 named JobDefs resource  will be used as the defaults for the current Job. Any
 value that  you explicitly define in the current Job resource, will override 
@@ -596,7 +616,8 @@ Clients. A simple example  of the use of JobDefs is provided in the default
 bacula-dir.conf  file. 
 
 \item [Bootstrap = \lt{}bootstrap-file\gt{}]
-   \index[dir]{Bootstrap }
+   \index[dir]{Bootstrap}
+   \index[dir]{Directive!Bootstrap}
    The Bootstrap  directive specifies a bootstrap file that, if provided, will 
 be used during {\bf Restore} Jobs and is ignored in other  Job types. The {\bf
 bootstrap}  file contains the list of tapes to be used in a restore  Job as
@@ -614,7 +635,8 @@ chapter of this manual.
 
 \label{writebootstrap}
 \item [Write Bootstrap =  \lt{}bootstrap-file-specification\gt{}]
-   \index[dir]{a name}
+   \index[dir]{Write Bootstrape}
+   \index[dir]{Directive!Write Bootstrape}
    The  {\bf writebootstrap} directive specifies a file name where  Bacula will
 write a {\bf bootstrap} file for each Backup job  run. Thus this directive
 applies only to Backup Jobs. If the Backup  job is a Full save, Bacula will
@@ -637,7 +659,8 @@ For more details on using this file,  please see the chapter entitled
 \ilink{The Bootstrap File}{_ChapterStart43} of this manual. 
 
 \item [Client = \lt{}client-resource-name\gt{}]
-   \index[dir]{Client }
+   \index[dir]{Client}
+   \index[dir]{Directive!Client}
    The Client directive  specifies the Client (File daemon) that will be used in
    the  current Job. Only a single Client may be specified in any one Job.  The
    Client runs on the machine to be backed up,  and sends the requested files to
@@ -647,7 +670,8 @@ For more details on using this file,  please see the chapter entitled
    This directive is required. 
 
 \item [FileSet = \lt{}FileSet-resource-name\gt{}]
-   \index[dir]{FileSet }
+   \index[dir]{FileSet}
+   \index[dir]{FileSet}
    The FileSet directive  specifies the FileSet that will be used in the 
 current
    Job. The FileSet specifies which directories (or files)  are to be backed up,
@@ -657,7 +681,8 @@ current
    chapter. This directive is required. 
 
 \item [Messages = \lt{}messages-resource-name\gt{}]
-   \index[dir]{Messages }
+   \index[dir]{Messages}
+   \index[dir]{Directive!Messages}
    The Messages directive  defines what Messages resource should be used for
 this
    job, and thus  how and where the various messages are to be delivered. For
@@ -667,7 +692,8 @@ this
    manual. This directive is required. 
 
 \item [Pool = \lt{}pool-resource-name\gt{}]
-   \index[dir]{Pool }
+   \index[dir]{Pool}
+   \index[dir]{Directive!Pool}
    The Pool directive defines the pool of Volumes where your data can be backed
    up. Many Bacula  installations will use only the {\bf Default} pool. However,
    if  you want to specify a different set of Volumes for different  Clients or
@@ -677,19 +703,22 @@ this
    directive is required. 
 
 \item [Full Backup Pool = \lt{}pool-resource-name\gt{}]
-   \index[dir]{Full Backup Pool }
+   \index[dir]{Full Backup Pool}
+   \index[dir]{Directive!Full Backup Pool}
    The {\it Full Backup Pool} specifies a Pool to be used for  Full backups. It
    will override any Pool specification during a  Full backup. This directive is
    optional. 
    
 \item [Differential Backup Pool = \lt{}pool-resource-name\gt{}]  
-   \index[dir]{Differential Backup Pool }
+   \index[dir]{Differential Backup Pool}
+   \index[dir]{Directive!Differential Backup Pool}
    The {\it Differential Backup Pool} specifies a Pool to be used for 
    Differential backups. It will override any Pool specification during a 
    Differential backup. This directive is optional. 
    
 \item [Incremental Backup Pool = \lt{}pool-resource-name\gt{}]  
-   \index[dir]{Incremental Backup Pool }
+   \index[dir]{Incremental Backup Pool}
+   \index[dir]{Directive!Incremental Backup Pool}
    The {\it Incremental Backup Pool} specifies a Pool to be used for 
 Incremental
    backups. It will override any Pool specification during an  Incremental
@@ -697,7 +726,8 @@ backup.
    This directive is optional. 
 
 \item [Schedule = \lt{}schedule-name\gt{}]
-   \index[dir]{Schedule }
+   \index[dir]{Schedule}
+   \index[dir]{Directive!Schedule}
    The Schedule directive defines what schedule is to be used for the Job.
    The schedule in turn determines when the Job will be automatically
    started and what Job level (i.e.  Full, Incremental, ...) is to be run.
@@ -713,7 +743,8 @@ backup.
           
 
 \item [Storage = \lt{}storage-resource-name\gt{}]
-   \index[dir]{Storage }
+   \index[dir]{Storage}
+   \index[dir]{Directive!Storage}
    The Storage directive  defines the name of the storage services where you
 want
    to backup  the FileSet data. For additional details, see the 
@@ -721,7 +752,8 @@ want
     This directive is required.  
 
 \item [Max Start Delay = \lt{}time\gt{}]
-   \index[dir]{Max Start Delay }
+   \index[dir]{Max Start Delay}
+   \index[dir]{Directive!Max Start Delay}
    The time specifies the maximum delay between the scheduled time and the
    actual start time for the Job.  For example, a job can be scheduled to
    run at 1:00am, but because other jobs are running, it may wait to run.
@@ -731,14 +763,16 @@ want
    which indicates no limit.
 
 \item [Max Run Time = \lt{}time\gt{}]
-   \index[dir]{Max Run Time }
+   \index[dir]{Max Run Time}
+   \index[dir]{Directive!Max Run Time}
    The time specifies the maximum allowed time that a job may run, counted
    from when the job starts, ({\bf not} necessarily the same as when the
    job was scheduled).  This directive is implemented in version 1.33 and
    later.
 
 \item [Max Wait Time = \lt{}time\gt{}]
-   \index[dir]{Max Wait Time }
+   \index[dir]{Max Wait Time}
+   \index[dir]{Directive!Max Wait Time}
    The time specifies the maximum allowed time that a job may block waiting
    for a resource (such as waiting for a tape to be mounted, or waiting for
    the storage or file daemons to perform their duties), counted from the
@@ -749,7 +783,8 @@ want
 
 
 \item [Incremental Max Wait Time = \lt{}time\gt{}]
-   \index[dir]{Incremental Max Wait Time }
+   \index[dir]{Incremental Max Wait Time}
+   \index[dir]{Directive!Incremental Max Wait Time}
    The time specifies the maximum allowed time that an Incremental backup
    job may block waiting for a resource (such as waiting for a tape to be
    mounted, or waiting for the storage or file daemons to perform their
@@ -758,7 +793,8 @@ want
    {\bf Max Wait Time} it may also be applied to the job.
 
 \item [Differential Max Wait Time = \lt{}time\gt{}]
-   \index[dir]{Differential Max Wait Time }
+   \index[dir]{Differential Max Wait Time}
+   \index[dir]{Directive!Differential Max Wait Time}
    The time specifies the maximum allowed time that a Differential backup
    job may block waiting for a resource (such as waiting for a tape to be
    mounted, or waiting for the storage or file daemons to perform their
@@ -768,6 +804,7 @@ want
 
 \item [Prefer Mounted Volumes = \lt{}yes|no\gt{}]
    \index[dir]{Prefer Mounted Volumes}
+   \index[dir]{Directive!Prefer Mounted Volumes}
    If the Prefer Mounted Volumes directive is set to {\bf yes} (default
    yes), the Storage daemon is requested to select either an Autochanger or
    a drive with a valid Volume already mounted in preference to a drive
@@ -788,7 +825,8 @@ want
 
 
 \item [Prune Jobs = \lt{}yes|no\gt{}]
-   \index[dir]{Prune Jobs }
+   \index[dir]{Prune Jobs}
+   \index[dir]{Directive!Prune Jobs}
    Normally, pruning of Jobs from the Catalog is specified on a Client by
    Client basis in the Client resource with the {\bf AutoPrune} directive.
    If this directive is specified (not normally) and the value is {\bf
@@ -797,7 +835,8 @@ want
 
 
 \item [Prune Files = \lt{}yes|no\gt{}]
-   \index[dir]{Prune Files }
+   \index[dir]{Prune Files}
+   \index[dir]{Directive!Prune Files}
    Normally, pruning of Files from the Catalog is specified on a Client by
    Client basis in the Client resource with the {\bf AutoPrune} directive.
    If this directive is specified (not normally) and the value is {\bf
@@ -805,7 +844,8 @@ want
    default is {\bf no}.
 
 \item [Prune Volumes = \lt{}yes|no\gt{}]
-   \index[dir]{Prune Volumes }
+   \index[dir]{Prune Volumes}
+   \index[dir]{Directive!Prune Volumes}
    Normally, pruning of Volumes from the Catalog is specified on a Client
    by Client basis in the Client resource with the {\bf AutoPrune}
    directive.  If this directive is specified (not normally) and the value
@@ -813,7 +853,9 @@ want
    resource.  The default is {\bf no}.
 
 \item [Run Before Job = \lt{}command\gt{}]
-   \index[dir]{Run Before Job }
+   \index[dir]{Run Before Job}
+   \index[dir]{Directive!Run Before Job}
+   \index[dir]{Directive!Run Before Job}
    The specified {\bf command} is run as an external program prior to
    running the current Job.  Any output sent by the command to standard output
    will be included in the Bacula job report.  The command string must be a
@@ -834,12 +876,13 @@ want
     %% = %
     %c = Client's name
     %d = Director's name
-    %i = JobId
     %e = Job Exit Status
-    %j = Unique Job name
+    %i = JobId
+    %j = Unique Job id
     %l = Job Level
     %n = Job name
-    %t = Job type
+    %s = Since time
+    %t = Job type (Backup, ...)
     %v = Volume name
     
 \end{verbatim}
@@ -872,32 +915,59 @@ The Job Exit Status code \%e edits the following values:
    before leaving will be used.
 
 \item [Run After Job = \lt{}command\gt{}]
-   \index[dir]{Run After Job }
-   The specified {\bf command} is run as an external program after the
-   current job terminates.  This directive is not required.  The command
-   string must be a valid program name or name of a shell script.  If the
-   exit code of the program run is non-zero, the current Bacula job will
-   terminate in error.  Before submitting the specified command to the
-   operating system, Bacula performs character substitution as described
-   above for the {\bf Run Before Job} directive.
+   \index[dir]{Run After Job}
+   \index[dir]{Directive!Run After Job}
+   The specified {\bf command} is run as an external program if the current
+   job terminates normally (without error or without being canceled).  This
+   directive is not required.  The command string must be a valid program name
+   or name of a shell script.  If the exit code of the program run is
+   non-zero, Bacula will print a warning message.  Before submitting the
+   specified command to the operating system, Bacula performs character
+   substitution as described above for the {\bf Run Before Job} directive.
+   
+   An example of the use of this directive is given in the  
+   \ilink{Tips Chapter}{JobNotification} of this manual.  
+   See the {\bf Run After Failed Job} if you
+   want to run a script after the job has terminated with any
+   non-normal status.
+
+\item [Run After Failed Job = \lt{}command\gt{}]
+   \index[dir]{Run After Job}
+   \index[dir]{Directive!Run After Job}
+   The specified {\bf command} is run as an external program after the current
+   job terminates with any error status.  This directive is not required.  The
+   command string must be a valid program name or name of a shell script. If
+   the exit code of the program run is non-zero, Bacula will print a
+   warning message. Before submitting the specified command to the
+   operating system, Bacula performs character substitution as described above
+   for the {\bf Run Before Job} directive. Note, if you wish, you may
+   specify the same script as for {\bf Run After Job} so that your script
+   will run regardless of the exit status of the Job.
    
    An example of the use of this directive is given in the  
-   \ilink{Tips Chapter}{JobNotification} of this manual.  As of version
-   1.30, Bacula checks the exit status of the RunAfter  program. If it is
-   non-zero, the job will be terminated in error.  
+   \ilink{Tips Chapter}{JobNotification} of this manual.
+  
 
 \item [Client Run Before Job = \lt{}command\gt{}]
-   \index[dir]{Client Run Before Job }
+   \index[dir]{Client Run Before Job}
+   \index[dir]{Directive!Client Run Before Job}
    This directive  is the same as {\bf Run Before Job} except that the program is  run on
    the client machine. The same restrictions apply to  Unix systems as noted
-   above for the {\bf Run Before Job}. In  addition, for a Windows client on
+   above for the {\bf Run Before Job}. 
+
+   When specifying a full path to an executable if the path or  executable name
+   contains whitespace or special characters they  will need to be quoted.
+   Arguments containing whitespace or  special characters will also have to be
+   quoted. 
+
+   {\bf Special Windows Considerations}
+   In  addition, for a Windows client on
    version 1.33 and above, please  take careful note that you must ensure a
    correct path to your  script. The script or program can be a .com, .exe or
    a .bat  file. However, if you specify a path, you must also specify  the full
    extension. Unix like commands will not work unless you  have installed and
-   properly configured Cygwin in addition to  and separately from Bacula.  
+   properly configured Cygwin in addition to and separately from Bacula.  
    
-   {\bf Special Windows Considerations}
    The command can be anything that cmd.exe or command.com will  recognize as an
    executable file. Specifying the executable's  extension is optional, unless
    there is an ambiguity. (i.e.  ls.bat, ls.exe)  
@@ -910,10 +980,6 @@ The Job Exit Status code \%e edits the following values:
    System environment variables can be referenced with \%var\% and
    used as either part of the command name or  arguments.  
    
-   When specifying a full path to an executable if the path or  executable name
-   contains whitespace or special characters they  will need to be quoted.
-   Arguments containing whitespace or  special characters will also have to be
-   quoted. 
 
 \footnotesize
 \begin{verbatim}
@@ -925,18 +991,16 @@ ClientRunBeforeJob = "\"C:/Program Files/Software
    The special characters \&()[]\{\}\^{}=;!'+,`\~{} will need to be quoted  if
    they are part of a filename or argument.  
    
-   If someone is logged in, a blank "command" window running the  commands
-will
+   If someone is logged in, a blank "command" window running the commands will
    be present during the execution of the command.  
    
    Some Suggestions from Phil Stracchino for running on Win32 machines  with the
    native Win32 File daemon: 
 
    \begin{enumerate}
-   \item You might want the ClientRunBeforeJob directive to specify a .bat file
-      which  runs the actual client-side commands, rather than trying to run
-(for 
-      example) regedit /e directly.  
+   \item You might want the ClientRunBeforeJob directive to specify a .bat
+      file which runs the actual client-side commands, rather than trying to
+      run (for  example) regedit /e directly.  
    \item The batch file should explicitly 'exit 0' on successful completion.  
    \item The path to the batch file should be specified in Unix form:  
    
@@ -996,36 +1060,37 @@ It is important to redirect the input and outputs of a backgrounded command to
 
 
 \item [Client Run After Job = \lt{}command\gt{}]
-   \index[dir]{Client Run After Job }
-   This directive  is the same as {\bf Run After Job} except that it is  run on
-the
-   client machine. Note, please see the notes above  in {\bf Client Run Before
-   Job} concerning Windows clients. 
+   \index[dir]{Client Run After Job}
+   \index[dir]{Directive!Client Run After Job}
+   This directive is the same as {\bf Run After Job} except that it is run on
+   the client machine.  Note, please see the notes above in {\bf Client Run
+   Before Job} concerning Windows clients.
 
 \item [Rerun Failed Levels = \lt{}yes|no\gt{}]
-   \index[dir]{Rerun Failed Levels }
-   If this directive  is set to {\bf yes} (default no), and Bacula detects that
-a
-   previous job at a higher level (i.e. Full or Differential)  has failed, the
-   current job level will be upgraded to the  higher level. This is particularly
-   useful for Laptops where  they may often be unreachable, and if a prior Full
-   save has  failed, you wish the very next backup to be a Full save  rather
-than
-   whatever level it is started as. 
+   \index[dir]{Rerun Failed Levels}
+   \index[dir]{Directive!Rerun Failed Levels}
+   If this directive is set to {\bf yes} (default no), and Bacula detects that
+   a previous job at a higher level (i.e.  Full or Differential) has failed,
+   the current job level will be upgraded to the higher level.  This is
+   particularly useful for Laptops where they may often be unreachable, and if
+   a prior Full save has failed, you wish the very next backup to be a Full
+   save rather than whatever level it is started as.
 
 \item [Spool Data = \lt{}yes|no\gt{}]
-   \index[dir]{Spool Data }
+   \index[dir]{Spool Data}
+   \index[dir]{Directive!Spool Data}
    If this directive is set  to {\bf yes} (default no), the Storage daemon will
-be requested  to spool the data for this Job to disk rather than write it 
-directly to tape. Once all the data arrives or the spool files' maximum sizes
-are reached, the data will be despooled and written  to tape. When this
-directive is set to yes, the Spool Attributes  is also automatically set to
-yes. Spooling data prevents tape  shoe-shine (start and stop) during
-Incremental saves. This option  should not be used if you are writing to a
-disk file. 
+   be requested  to spool the data for this Job to disk rather than write it 
+   directly to tape. Once all the data arrives or the spool files' maximum sizes
+   are reached, the data will be despooled and written  to tape. When this
+   directive is set to yes, the Spool Attributes  is also automatically set to
+   yes. Spooling data prevents tape  shoe-shine (start and stop) during
+   Incremental saves. This option  should not be used if you are writing to a
+   disk file. 
 
 \item [Spool Attributes = \lt{}yes|no\gt{}]
-   \index[dir]{Spool Attributes }
+   \index[dir]{Spool Attributes}
+   \index[dir]{Directive!Spool Attributes}
    The default is set to  {\bf no}, which means that the File attributes are
 sent
 by the  Storage daemon to the Director as they are stored on tape. However, 
@@ -1037,7 +1102,8 @@ the Job data to the tape is  completed, the attributes and storage coordinates
 will be  sent to the Director. 
 
 \item [Where = \lt{}directory\gt{}]
-   \index[dir]{Where }
+   \index[dir]{Where}
+   \index[dir]{Directive!Where}
    This directive applies only  to a Restore job and specifies a prefix to the
 directory name  of all files being restored. This permits files to be restored
 in a different location from which they were saved. If {\bf Where}  is not
@@ -1047,7 +1113,8 @@ configuration files to be  {\bf /tmp/bacula-restores}. This is to prevent
 accidental overwriting  of your files. 
 
 \item [Replace = \lt{}replace-option\gt{}]
-   \index[dir]{Replace }
+   \index[dir]{Replace}
+   \index[dir]{Directive!Replace}
    This directive applies only  to a Restore job and specifies what happens when
 Bacula wants to  restore a file or directory that already exists. You have the
  following options for {\bf replace-option}:  
@@ -1077,6 +1144,7 @@ by
 
 \item [Prefix Links=\lt{}yes|no\gt{}]
    \index[dir]{Prefix Links}
+   \index[dir]{Directive!Prefix Links}
    If a {\bf Where} path prefix is specified for a recovery job, apply it
    to absolute links as well.  The default is {\bf No}.  When set to {\bf
    Yes} then while restoring files to an alternate directory, any absolute
@@ -1086,7 +1154,8 @@ by
    original locations, all files linked with absolute names will be broken.
 
 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
-   \index[dir]{Maximum Concurrent Jobs }
+   \index[dir]{Maximum Concurrent Jobs}
+   \index[dir]{Directive!Maximum Concurrent Jobs}
    where \lt{}number\gt{} is the maximum number of Jobs from the current
    Job resource that can run concurrently.  Note, this directive limits
    only Jobs with the same name as the resource in which it appears.  Any
@@ -1098,7 +1167,8 @@ by
    Director's resource.
 
 \item [Reschedule On Error = \lt{}yes|no\gt{}]
-   \index[dir]{Reschedule On Error }
+   \index[dir]{Reschedule On Error}
+   \index[dir]{Reschedule On Error}
    If this directive is enabled, and the job terminates in error, the job
    will be rescheduled as determined by the {\bf Reschedule Interval} and
    {\bf Reschedule Times} directives.  If you cancel the job, it will not
@@ -1110,7 +1180,8 @@ by
    machines that are not always connected to the network or switched on.
 
 \item [Reschedule Interval = \lt{}time-specification\gt{}]
-   \index[dir]{Reschedule Interval }
+   \index[dir]{Reschedule Interval}
+   \index[dir]{Directive!Reschedule Interval}
    If you have specified {\bf Reschedule On Error = yes} and the job
    terminates in error, it will be rescheduled after the interval of time
    specified by {\bf time-specification}.  See \ilink{the time
@@ -1119,13 +1190,15 @@ by
    rescheduled on error.
 
 \item [Reschedule Times = \lt{}count\gt{}]
-   \index[dir]{Reschedule Times }
+   \index[dir]{Reschedule Times}
+   \index[dir]{Directive!Reschedule Times}
    This directive specifies the maximum number of times to reschedule the
    job.  If it is set to zero (the default) the job will be rescheduled an
    indefinite number of times.
 
 \item [Run = \lt{}job-name\gt{}]
-   \index[dir]{Run directive}
+   \index[dir]{Run}
+   \index[dir]{Directive!Run}
    \index[dir]{Clone a Job}
    The Run directive (not to be confused with the Run option in a 
    Schedule) allows you to start other jobs or to clone jobs. By using the
@@ -1159,7 +1232,8 @@ by
 
 \label{Priority}
 \item [Priority = \lt{}number\gt{}]
-   \index[dir]{Priority }
+   \index[dir]{Priority}
+   \index[dir]{Directive!Priority}
    This directive permits you to control the order in which your jobs run
    by specifying a positive non-zero number.  The higher the number, the
    lower the job priority.  Assuming you are not running concurrent jobs,
@@ -1210,7 +1284,8 @@ correct order, and that your priority scheme will be respected.
 
 \label{WritePartAfterJob}
 \item [Write Part After Job = \lt{}yes|no\gt{}]
-   \index[dir]{Write Part After Job }
+   \index[dir]{Write Part After Job}
+   \index[dir]{Directive!Write Part After Job}
    This directive is only implemented in version 1.37 and later.
    If this directive is set to {\bf yes} (default {\bf no}), a new part file
    will be created after the job is finished.  
@@ -1274,16 +1349,19 @@ be run manually. In general, you specify an action to be taken and when.
 
 \item [Schedule]
    \index[dir]{Schedule}
+   \index[dir]{Directive!Schedule}
    Start of the Schedule directives. No {\bf Schedule}  resource is required,
 but
 you will need at least one if you want  Jobs to be automatically started. 
 
 \item [Name = \lt{}name\gt{}]
-   \index[dir]{Name }
+   \index[dir]{Name}
+   \index[dir]{Directive!Name}
    The name of the schedule being defined.  The Name directive is required. 
 
 \item [Run = \lt{}Job-overrides\gt{} \lt{}Date-time-specification\gt{}]
-   \index[dir]{Run }
+   \index[dir]{Run}
+   \index[dir]{Directive!Run}
    The Run directive defines when a Job is to be run,  and what overrides if any
 to apply. You may specify multiple  {\bf run} directives within a {\bf
 Schedule} resource. If you  do, they will all be applied (i.e. multiple
@@ -1313,47 +1391,57 @@ spaces or  by separating them with a trailing comma.  For example:
 
 \item [Level=Full]
    \index[dir]{Level}
+   \index[dir]{Directive!Level}
    is all files in the FileSet whether or not  they have changed.  
 
 \item [Level=Incremental]
    \index[dir]{Level}
+   \index[dir]{Directive!Level}
    is all files that have changed since  the last backup.  
 
 \item [Pool=Weekly]
    \index[dir]{Pool}
+   \index[dir]{Directive!Pool}
    specifies to use the Pool named {\bf Weekly}.  
 
 \item [Storage=DLT\_Drive]
    \index[dir]{Storage}
+   \index[dir]{Directive!Storage}
    specifies to use {\bf DLT\_Drive} for  the storage device.  
 
 \item [Messages=Verbose]
    \index[dir]{Messages}
+   \index[dir]{Directive!Messages}
    specifies to use the {\bf Verbose}  message resource for the Job.  
 
 \item [FullPool=Full]
    \index[dir]{FullPool}
+   \index[dir]{Directive!FullPool}
    specifies to use the Pool named {\bf Full}  if the job is a full backup, or
 is
 upgraded from another type  to a full backup.  
 
 \item [DifferentialPool=Differential]
    \index[dir]{DifferentialPool}
+   \index[dir]{Directive!DifferentialPool}
    specifies to use the Pool  named {\bf Differential} if the job is a
 differential  backup.  
 
 \item [IncrementalPool=Incremental]
    \index[dir]{IncrementalPool}
+   \index[dir]{Directive!IncrementalPool}
    specifies to use the Pool  named {\bf Incremental} if the job is an
 incremental  backup.  
 
 \item [SpoolData=yes|no]
    \index[dir]{SpoolData}
+   \index[dir]{Directive!SpoolData}
    tells Bacula to request the Storage  daemon to spool data to a disk file
 before putting it on  tape.  
 
 \item [WritePartAfterJob=yes|no]
    \index[dir]{WritePartAfterJob}
+   \index[dir]{Directive!WritePartAfterJob}
    tells Bacula to request the Storage  daemon to write the current part file to
    the device when the job  is finished (see 
    \ilink{Write Part After Job directive in the Job
@@ -1546,33 +1634,39 @@ one Client resource definition for each machine to be backed up.
 
 \item [Client (or FileDaemon)]
    \index[dir]{Client (or FileDaemon)}
+   \index[dir]{Directive!Client (or FileDaemon)}
    Start of the Client directives.  
 
 \item [Name = \lt{}name\gt{}]
-   \index[dir]{Name }
+   \index[dir]{Name}
+   \index[dir]{Directive!Name}
    The client name which will be used in the  Job resource directive or in the
 console run command.  This directive is required.  
 
 \item [Address = \lt{}address\gt{}]
-   \index[dir]{Address }
+   \index[dir]{Address}
+   \index[dir]{Directive!Address}
    Where the address is a host  name, a fully qualified domain name, or a
 network
 address in  dotted quad notation for a Bacula File server daemon.  This
 directive is required. 
 
 \item [FD Port = \lt{}port-number\gt{}]
-   \index[dir]{FD Port }
+   \index[dir]{FD Port}
+   \index[dir]{Directive!FD Port}
    Where the port is a port  number at which the Bacula File server daemon can
 be
 contacted.  The default is 9102. 
 
 \item [Catalog = \lt{}Catalog-resource-name\gt{}]
-   \index[dir]{Catalog }
+   \index[dir]{Catalog}
+   \index[dir]{Directive!Catalog}
    This specifies the  name of the catalog resource to be used for this Client. 
 This directive is required.  
 
 \item [Password = \lt{}password\gt{}]
-   \index[dir]{Password }
+   \index[dir]{Password}
+   \index[dir]{Directive!Password}
    This is the password to be  used when establishing a connection with the File
 services, so  the Client configuration file on the machine to be backed up
 must  have the same password defined for this Director. This directive is 
@@ -1582,7 +1676,8 @@ otherwise it will  be left blank.
 \label{FileRetention}
 
 \item [File Retention = \lt{}time-period-specification\gt{}]
-   \index[dir]{File Retention }
+   \index[dir]{File Retention}
+   \index[dir]{Directive!File Retention}
    The File Retention directive defines the length of time that  Bacula will
 keep
 File records in the Catalog database.  When this time period expires, and if
@@ -1603,7 +1698,8 @@ The  default is 60 days.
 \label{JobRetention}
 
 \item [Job Retention = \lt{}time-period-specification\gt{}]
-   \index[dir]{Job Retention }
+   \index[dir]{Job Retention}
+   \index[dir]{Directive!Job Retention}
    The Job Retention directive defines the length of time that  Bacula will keep
 Job records in the Catalog database.  When this time period expires, and if
 {\bf AutoPrune} is set to  {\bf yes} Bacula will prune (remove) Job records
@@ -1629,7 +1725,8 @@ The default is 180 days.
 \label{AutoPrune}
 
 \item [AutoPrune = \lt{}yes|no\gt{}]
-   \index[dir]{AutoPrune }
+   \index[dir]{AutoPrune}
+   \index[dir]{Directive!AutoPrune}
    If AutoPrune is set to  {\bf yes} (default), Bacula (version 1.20 or greater)
 will  automatically apply the File retention period and the Job  retention
 period for the Client at the end of the Job.  If you set {\bf AutoPrune = no},
@@ -1638,7 +1735,8 @@ run a Job.  Pruning affects only information in the catalog and not data
 stored in the backup archives (on Volumes).  
 
 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
-   \index[dir]{Maximum Concurrent Jobs }
+   \index[dir]{Maximum Concurrent Jobs}
+   \index[dir]{Directive!Maximum Concurrent Jobs}
    where \lt{}number\gt{}  is the maximum number of Jobs with the current Client
 that  can run concurrently. Note, this directive limits only Jobs  for Clients
 with the same name as the resource in which it appears. Any  other
@@ -1649,12 +1747,13 @@ recommend that you read the WARNING documented under
 \ilink{ Maximum Concurrent Jobs}{DirMaxConJobs} in the Director's
 resource.  
 
-\item [*Priority = \lt{}number\gt{}]
-   \index[dir]{*Priority }
+\item [Priority = \lt{}number\gt{}]
+   \index[dir]{Priority}
+   \index[dir]{Directive!Priority}
    The number specifies the  priority of this client relative to other clients
-that the  Director is processing simultaneously. The priority can range  from
-1 to 1000. The clients are ordered such that the smaller  number priorities
-are performed first (not currently  implemented). 
+   that the  Director is processing simultaneously. The priority can range  from
+   1 to 1000. The clients are ordered such that the smaller  number priorities
+   are performed first (not currently  implemented). 
 \end{description}
 
 The following is an example of a valid Client resource definition: 
@@ -1683,16 +1782,19 @@ the Director.
 
 \item [Storage]
    \index[dir]{Storage}
+   \index[dir]{Directive!Storage}
    Start of the Storage resources. At least one  storage resource must be
 specified. 
 
 \item [Name = \lt{}name\gt{}]
-   \index[dir]{Name }
+   \index[dir]{Name}
+   \index[dir]{Directive!Name}
    The name of the storage resource. This  name appears on the Storage directive
 specified in the Job resource and is required. 
 
 \item [Address = \lt{}address\gt{}]
-   \index[dir]{Address }
+   \index[dir]{Address}
+   \index[dir]{Directive!Address}
    Where the address is a host name,  a {\bf fully qualified domain name}, or an
 {\bf IP address}. Please note  that the \lt{}address\gt{} as specified here
 will be transmitted to  the File daemon who will then use it to contact the
@@ -1701,13 +1803,15 @@ the  name but rather a fully qualified machine name or an IP address.  This
 directive is required. 
 
 \item [SD Port = \lt{}port\gt{}]
-   \index[dir]{SD Port }
+   \index[dir]{SD Port}
+   \index[dir]{Directive!SD Port}
    Where port is the port to use to  contact the storage daemon for information
 and to start jobs.  This same port number must appear in the Storage resource
 of the  Storage daemon's configuration file. The default is 9103. 
 
 \item [Password = \lt{}password\gt{}]
    \index[dir]{Password}
+   \index[dir]{Directive!Password}
    This is the password to be used  when establishing a connection with the
 Storage services. This  same password also must appear in the Director
 resource of the Storage  daemon's configuration file. This directive is
@@ -1717,25 +1821,27 @@ otherwise it will  be left blank.
 
 \item [Device = \lt{}device-name\gt{}]
    \index[dir]{Device}
-   This directive specifies the name of the device to be used for the
-   storage.  This name is not the physical device name, but the logical
-   device name as defined on the {\bf Name} directive contained in the {\bf
-   Device} resource definition of the {\bf Storage daemon} configuration
-   file or if the device is an Autochanger, you must put the name as
-   defined on the {\bf Name} directive contained in the {\bf Autochanger}
-   resource definition of the {\bf Storage daemon}.  You can specify any
-   name you would like (even the device name if you prefer) up to a maximum
-   of 127 characters in length.  The physical device name associated with
-   this device is specified in the {\bf Storage daemon} configuration file
-   (as {\bf Archive Device}).  Please take care not to define two different
-   Storage resource directives in the Director that point to the same
-   Device in the Storage daemon.  Doing so may cause the Storage daemon to
-   block (or hang) attempting to open the same device that is already open.
+   \index[dir]{Directive!Device}
+   This directive specifies the Storage daemon's name of the device resource
+   to be used for the storage.  This name is not the physical device name, but
+   the logical device name as defined on the {\bf Name} directive contained in
+   the {\bf Device} resource definition of the {\bf Storage daemon}
+   configuration file or if the device is an Autochanger, you must put the
+   name as defined on the {\bf Name} directive contained in the {\bf
+   Autochanger} resource definition of the {\bf Storage daemon}.  You can
+   specify any name you would like (even the device name if you prefer) up to
+   a maximum of 127 characters in length.  The physical device name associated
+   with this device is specified in the {\bf Storage daemon} configuration
+   file (as {\bf Archive Device}).  Please take care not to define two
+   different Storage resource directives in the Director that point to the
+   same Device in the Storage daemon.  Doing so may cause the Storage daemon
+   to block (or hang) attempting to open the same device that is already open.
    This directive is required.
 
 \label{MediaType}
 \item [Media Type = \lt{}MediaType\gt{}]
    \index[dir]{Media Type}
+   \index[dir]{Directive!Media Type}
    This directive specifies the Media Type to be used to store the data.
    This is an arbitrary string of characters up to 127 maximum that you
    define.  It can be anything you want.  However, it is best to make it
@@ -1748,6 +1854,13 @@ otherwise it will  be left blank.
    associated with the Job, Bacula can decide to use any Storage daemon
    that supports Media Type {\bf DDS-4} and on any drive that supports it.
 
+   Currently Bacula permits only a single Media Type. Consequently, if
+   you have a drive that supports more than one Media Type, you can
+   give a unique string to Volumes with different intrinsic Media 
+   Type (Media Type = DDS-3-4 for DDS-3 and DDS-4 types), but then
+   those volumes will only be mounted on drives indicated with the
+   dual type (DDS-3-4).
+
    If you want to tie Bacula to using a single Storage daemon or drive, you
    must specify a unique Media Type for that drive.  This is an important
    point that should be carefully understood.  Note, this applies equally
@@ -1776,7 +1889,8 @@ otherwise it will  be left blank.
 
 \label{Autochanger1}
 \item [Autochanger = \lt{}yes|no\gt{}]  
-   \index[dir]{Autochanger }
+   \index[dir]{Autochanger}
+   \index[dir]{Directive!Autochanger}
    If you specify {\bf yes}  for this command (the default is {\bf no}), when
    you use the {\bf label} command or the {\bf add} command to create a new
    Volume, {\bf Bacula} will also request the Autochanger Slot number.
@@ -1800,7 +1914,8 @@ otherwise it will  be left blank.
    using autochangers.
 
 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
-   \index[dir]{Maximum Concurrent Jobs }
+   \index[dir]{Maximum Concurrent Jobs}
+   \index[dir]{Directive!Maximum Concurrent Jobs}
    where \lt{}number\gt{}  is the maximum number of Jobs with the current
 Storage
 resource that  can run concurrently. Note, this directive limits only Jobs 
@@ -1915,18 +2030,21 @@ The Pool Resource defined in the Director's configuration file
 
 \item [Pool]
    \index[dir]{Pool}
+   \index[dir]{Directive!Pool}
    Start of the Pool resource.  There must be at least one Pool resource
    defined.
 
 
 \item [Name = \lt{}name\gt{}]
-   \index[dir]{Name }
+   \index[dir]{Name}
+   \index[dir]{Directive!Name}
    The name of the pool.  For most applications, you will use the default
    pool name {\bf Default}.  This directive is required.
 
 \label{MaxVolumes}
 \item [Maximum Volumes = \lt{}number\gt{}]
-   \index[dir]{Maximum Volumes }
+   \index[dir]{Maximum Volumes}
+   \index[dir]{Directive!Maximum Volumes}
    This directive specifies the maximum number of volumes (tapes or files)
    contained in the pool.  This directive is optional, if omitted or set to
    zero, any number of volumes will be permitted.  In general, this
@@ -1935,7 +2053,8 @@ The Pool Resource defined in the Director's configuration file
    made to disk files do not become too numerous or consume too much space.
 
 \item [Pool Type = \lt{}type\gt{}]
-   \index[dir]{Pool Type }
+   \index[dir]{Pool Type}
+   \index[dir]{Directive!Pool Type}
    This directive defines the pool type, which corresponds to the type of
    Job being run.  It is required and may be one of the following:
 
@@ -1949,7 +2068,8 @@ The Pool Resource defined in the Director's configuration file
    \end{itemize}
 
 \item [Use Volume Once = \lt{}yes|no\gt{}]
-   \index[dir]{Use Volume Once }
+   \index[dir]{Use Volume Once}
+   \index[dir]{Directive!Use Volume Once}
    This directive if set to {\bf yes} specifies that each volume is to be
    used only once.  This is most useful when the Media is a file and you
    want a new file for each backup that is done.  The default is {\bf no}
@@ -1964,7 +2084,8 @@ The Pool Resource defined in the Director's configuration file
    Volume you must use the {\bf update} command in the Console.
 
 \item [Maximum Volume Jobs = \lt{}positive-integer\gt{}]
-   \index[dir]{Maximum Volume Jobs }
+   \index[dir]{Maximum Volume Jobs}
+   \index[dir]{Directive!Maximum Volume Jobs}
    This directive specifies the maximum number of Jobs that can be written
    to the Volume.  If you specify zero (the default), there is no limit.
    Otherwise, when the number of Jobs backed up to the Volume equals {\bf
@@ -1981,7 +2102,8 @@ The Pool Resource defined in the Director's configuration file
    must use the {\bf update} command in the Console.  
 
 \item [Maximum Volume Files = \lt{}positive-integer\gt{}]
-   \index[dir]{Maximum Volume Files }
+   \index[dir]{Maximum Volume Files}
+   \index[dir]{Directive!Maximum Volume Files}
    This directive specifies the maximum number of files that can be written
    to the Volume.  If you specify zero (the default), there is no limit.
    Otherwise, when the number of files written to the Volume equals {\bf
@@ -1999,7 +2121,8 @@ The Pool Resource defined in the Director's configuration file
    Volume you must use the {\bf update} command in the Console.
 
 \item [Maximum Volume Bytes = \lt{}size\gt{}]
-   \index[dir]{Maximum Volume Bytes }
+   \index[dir]{Maximum Volume Bytes}
+   \index[dir]{Directive!Maximum Volume Bytes}
    This directive specifies the maximum number of bytes that can be written
    to the Volume.  If you specify zero (the default), there is no limit
    except the physical size of the Volume.  Otherwise, when the number of
@@ -2017,7 +2140,8 @@ The Pool Resource defined in the Director's configuration file
    Volume you must use the {\bf update} command in the Console.
 
 \item [Volume Use Duration = \lt{}time-period-specification\gt{}]
-   \index[dir]{Volume Use Duration }
+   \index[dir]{Volume Use Duration}
+   \index[dir]{Directive!Volume Use Duration}
    The Volume Use Duration directive defines the time period that the
    Volume can be written beginning from the time of first data write to the
    Volume.  If the time-period specified is zero (the default), the Volume
@@ -2056,7 +2180,8 @@ The Pool Resource defined in the Director's configuration file
    \ilink{\bf update volume}{UpdateCommand} command in the Console.  
 
 \item [Catalog Files = \lt{}yes|no\gt{}]
-   \index[dir]{Catalog Files }
+   \index[dir]{Catalog Files}
+   \index[dir]{Directive!Catalog Files}
    This directive defines whether or not you want the names of the files
    that were saved to be put into the catalog.  The default is {\bf yes}.
    The advantage of specifying {\bf Catalog Files = No} is that you will
@@ -2068,7 +2193,8 @@ The Pool Resource defined in the Director's configuration file
    
 \label{PoolAutoPrune}
 \item [AutoPrune = \lt{}yes|no\gt{}]
-   \index[dir]{AutoPrune }
+   \index[dir]{AutoPrune}
+   \index[dir]{Directive!AutoPrune}
    If AutoPrune is set to  {\bf yes} (default), Bacula (version 1.20 or greater)
    will  automatically apply the Volume Retention period when new Volume  is
    needed and no appendable Volumes exist in the Pool. Volume  pruning causes
@@ -2077,7 +2203,8 @@ The Pool Resource defined in the Director's configuration file
    
 \label{VolRetention}
 \item [Volume Retention = \lt{}time-period-specification\gt{}]
-   \index[dir]{Volume Retention }
+   \index[dir]{Volume Retention}
+   \index[dir]{Directive!Volume Retention}
    The Volume Retention directive defines the length of time that {\bf
    Bacula} will keep Job records associated with the Volume in the Catalog
    database.  When this time period expires, and if {\bf AutoPrune} is set
@@ -2126,7 +2253,8 @@ The Pool Resource defined in the Director's configuration file
    
 \label{PoolRecycle}
 \item [Recycle = \lt{}yes|no\gt{}]
-   \index[dir]{Recycle }
+   \index[dir]{Recycle}
+   \index[dir]{Directive!Recycle}
    This directive specifies whether or not Purged Volumes may be recycled.
    If it is set to {\bf yes} (default) and Bacula needs a volume but finds
    none that are appendable, it will search for and recycle (reuse) Purged
@@ -2147,7 +2275,8 @@ The Pool Resource defined in the Director's configuration file
 
 \label{RecycleOldest}
 \item [Recycle Oldest Volume = \lt{}yes|no\gt{}]
-   \index[dir]{Recycle Oldest Volume }
+   \index[dir]{Recycle Oldest Volume}
+   \index[dir]{Directive!Recycle Oldest Volume}
    This directive instructs the Director to search for the oldest used
    Volume in the Pool when another Volume is requested by the Storage
    daemon and none are available.  The catalog is then {\bf pruned}
@@ -2170,7 +2299,8 @@ The Pool Resource defined in the Director's configuration file
 \label{RecycleCurrent}
 
 \item [Recycle Current Volume = \lt{}yes|no\gt{}]
-   \index[dir]{Recycle Current Volume }
+   \index[dir]{Recycle Current Volume}
+   \index[dir]{Directive!Recycle Current Volume}
    If Bacula needs a new Volume, this directive instructs Bacula to Prune
    the volume respecting the Job and File retention periods.  If all Jobs
    are pruned (i.e.  the volume is Purged), then the Volume is recycled and
@@ -2192,7 +2322,8 @@ The Pool Resource defined in the Director's configuration file
 \label{PurgeOldest}
 
 \item [Purge Oldest Volume = \lt{}yes|no\gt{}]
-   \index[dir]{Purge Oldest Volume }
+   \index[dir]{Purge Oldest Volume}
+   \index[dir]{Directive!Purge Oldest Volume}
    This directive instructs the Director to search for the oldest used
    Volume in the Pool when another Volume is requested by the Storage
    daemon and none are available.  The catalog is then {\bf purged}
@@ -2220,7 +2351,8 @@ The Pool Resource defined in the Director's configuration file
    data.  The default is {\bf no}.
 
 \item [Cleaning Prefix = \lt{}string\gt{}]
-   \index[dir]{Cleaning Prefix }
+   \index[dir]{Cleaning Prefix}
+   \index[dir]{Directive!Cleaning Prefix}
    This directive defines a prefix string, which if it matches the
    beginning of a Volume name during labeling of a Volume, the Volume will
    be defined with the VolStatus set to {\bf Cleaning} and thus Bacula will
@@ -2230,7 +2362,8 @@ The Pool Resource defined in the Director's configuration file
 
 \label{Label}
 \item [Label Format = \lt{}format\gt{}]
-   \index[dir]{Label Format }
+   \index[dir]{Label Format}
+   \index[dir]{Directive!Label Format}
    This directive specifies the format of the labels contained in this
    pool.  The format directive is used as a sort of template to create new
    Volume names during automatic Volume labeling.
@@ -2321,24 +2454,28 @@ database.
 
 \item [Catalog]
    \index[dir]{Catalog}
+   \index[dir]{Directive!Catalog}
    Start of the Catalog resource.  At least one Catalog resource must be
 defined.
 
 
 \item [Name = \lt{}name\gt{}]
-   \index[dir]{Name }
+   \index[dir]{Name}
+   \index[dir]{Directive!Name}
    The name of the Catalog.  No necessary relation to the database server
    name.  This name will be specified in the Client resource directive
    indicating that all catalog data for that Client is maintained in this
    Catalog.  This directive is required.
 
 \item [password = \lt{}password\gt{}]
-   \index[dir]{password }
+   \index[dir]{password}
+   \index[dir]{Directive!password}
    This specifies the password to use when logging into the database.  This
    directive is required.
 
 \item [DB Name = \lt{}name\gt{}]
-   \index[dir]{DB Name }
+   \index[dir]{DB Name}
+   \index[dir]{Directive!DB Name}
    This specifies the name of the database.  If you use multiple catalogs
    (databases), you specify which one here.  If you are using an external
    database server rather than the internal one, you must specify a name
@@ -2346,19 +2483,22 @@ defined.
    tables using this name.  This directive is required.
 
 \item [user = \lt{}user\gt{}]
-   \index[dir]{user }
+   \index[dir]{user}
+   \index[dir]{Directive!user}
    This specifies what user name to use to log into the database.  This
    directive is required.
 
 \item [DB Socket = \lt{}socket-name\gt{}]
-   \index[dir]{DB Socket }
+   \index[dir]{DB Socket}
+   \index[dir]{Directive!DB Socket}
    This is the name of  a socket to use on the local host to connect to the
 database.  This directive is used only by MySQL and is ignored by  SQLite.
 Normally, if neither {\bf DB Socket} or {\bf DB Address}  are specified, MySQL
 will use the default socket.  
 
 \item [DB Address = \lt{}address\gt{}]
-   \index[dir]{DB Address }
+   \index[dir]{DB Address}
+   \index[dir]{Directive!DB Address}
    This is the host address  of the database server. Normally, you would specify
 this instead  of {\bf DB Socket} if the database server is on another machine.
 In that case, you will also specify {\bf DB Port}. This directive  is used
@@ -2366,13 +2506,15 @@ only by MySQL and is ignored by SQLite if provided.  This directive is
 optional.  
 
 \item [DB Port = \lt{}port\gt{}]
-   \index[dir]{DB Port }
+   \index[dir]{DB Port}
+   \index[dir]{Directive!DB Port}
    This defines the port to  be used in conjunction with {\bf DB Address} to
 access the  database if it is on another machine. This directive is used  only
 by MySQL and is ignored by SQLite if provided. This  directive is optional.  
 
 %% \item [Multiple Connections = \lt{}yes|no\gt{}]
-%% \index[dir]{Multiple Connections }
+%% \index[dir]{Multiple Connections}
+%% \index[dir]{Directive!Multiple Connections}
 %% By default, this  directive is set to no. In that case, each job that uses
 the
 %% same Catalog will use a single connection to the catalog. It will  be shared,
@@ -2487,13 +2629,15 @@ directives are permitted within the Director's configuration resource:
 \begin{description}
 
 \item [Name = \lt{}name\gt{}]
-   \index[dir]{Name }
+   \index[dir]{Name}
+   \index[dir]{Directive!Name}
    The name of the console. This  name must match the name specified in the
 Console's configuration  resource (much as is the case with Client
 definitions).  
 
 \item [Password = \lt{}password\gt{}]
-   \index[dir]{Password }
+   \index[dir]{Password}
+   \index[dir]{Directive!Password}
    Specifies the password that must be supplied for a named Bacula Console
    to be authorized.  The same password must appear in the {\bf Console}
    resource of the Console configuration file.  For added security, the
@@ -2504,7 +2648,8 @@ definitions).
    process, otherwise it will be left blank.
 
 \item [JobACL = \lt{}name-list\gt{}]
-   \index[dir]{JobACL }
+   \index[dir]{JobACL}
+   \index[dir]{Directive!JobACL}
    This directive is used to specify a list of Job resource names that can
    be accessed by the console.  Without this directive, the console cannot
    access any of the Director's Job resources.  Multiple Job resource names
@@ -2524,38 +2669,44 @@ With the above specification, the console can access the Director's  resources
 for the four jobs named on the JobACL directives,  but for no others.  
 
 \item [ClientACL = \lt{}name-list\gt{}]
-   \index[dir]{ClientACL }
+   \index[dir]{ClientACL}
+   \index[dir]{Directive!ClientACL}
    This directive is used to  specify a list of Client resource names that can
 be
 accessed by  the console.  
 
 \item [StorageACL = \lt{}name-list\gt{}]
-   \index[dir]{StorageACL }
+   \index[dir]{StorageACL}
+   \index[dir]{Directive!StorageACL}
    This directive is used to  specify a list of Storage resource names that can
 be accessed by  the console.  
 
 \item [ScheduleACL = \lt{}name-list\gt{}]
-   \index[dir]{ScheduleACL }
+   \index[dir]{ScheduleACL}
+   \index[dir]{Directive!ScheduleACL}
    This directive is used to  specify a list of Schedule resource names that can
 be accessed by  the console.  
 
 \item [PoolACL = \lt{}name-list\gt{}]
-   \index[dir]{PoolACL }
+   \index[dir]{PoolACL}
+   \index[dir]{Directive!PoolACL}
    This directive is used to  specify a list of Pool resource names that can be
 accessed by  the console.  
 
 \item [FileSetACL = \lt{}name-list\gt{}]
-   \index[dir]{FileSetACL }
+   \index[dir]{FileSetACL}
+   \index[dir]{Directive!FileSetACL}
    This directive is used to  specify a list of FileSet resource names that can
 be accessed by  the console.  
 
 \item [CatalogACL = \lt{}name-list\gt{}]
-   \index[dir]{CatalogACL }
+   \index[dir]{CatalogACL}
+   \index[dir]{Directive!CatalogACL}
    This directive is used to  specify a list of Catalog resource names that can
 be accessed by  the console.  
 
 \item [CommandACL = \lt{}name-list\gt{}]
-   \index[dir]{CommandACL }
+   \index[dir]{CommandACL}
    This directive is used to  specify a list of of console commands that can be
 executed by  the console. 
 \end{description}
@@ -2584,34 +2735,41 @@ details.
 
 \item [Counter] 
    \index[dir]{Counter}
+   \index[dir]{Directive!Counter}
    Start of the Counter resource.  Counter directives are optional. 
 
 \item [Name = \lt{}name\gt{}]
-   \index[dir]{Name }
+   \index[dir]{Name}
+   \index[dir]{Directive!Name}
    The name of the Counter.  This is the name you will use in the variable
 expansion  to reference the counter value.  
 
 \item [Minimum = \lt{}integer\gt{}]
-   \index[dir]{Minimum }
+   \index[dir]{Minimum}
+   \index[dir]{Directive!Minimum}
    This specifies the minimum  value that the counter can have. It also becomes
 the default.  If not supplied, zero is assumed.  
 
 \item [Maximum = \lt{}integer\gt{}]
-   \index[dir]{Maximum }
+   \index[dir]{Maximum}
+   \index[dir]{Directive!Maximum}
+   \index[dir]{Directive!Maximum}
    This is the maximum value  value that the counter can have. If not specified
 or set to  zero, the counter can have a maximum value of 2,147,483,648  (2 to
 the 31 power). When the counter is incremented past  this value, it is reset
 to the Minimum.  
 
 \item [*WrapCounter = \lt{}counter-name\gt{}]
-   \index[dir]{*WrapCounter }
+   \index[dir]{*WrapCounter}
+   \index[dir]{Directive!*WrapCounter}
    If this value  is specified, when the counter is incremented past the
 maximum 
 and thus reset to the minimum, the counter specified on the  {\bf WrapCounter}
 is incremented. (This is not currently  implemented). 
 
 \item [Catalog = \lt{}catalog-name\gt{}]
-   \index[dir]{Catalog }
+   \index[dir]{Catalog}
+   \index[dir]{Directive!Catalog}
    If this directive is  specified, the counter and its values will be saved in 
 the specified catalog. If this directive is not present, the  counter will be
 redefined each time that Bacula is started. 
@@ -2674,7 +2832,7 @@ Job {
 FileSet {
   Name = "Full Set"
   Include {
-    Options { signature=SHA1 }
+    Options { signature=SHA1}
 #
 #  Put your list of files here, one per line or include an
 #    external list with:
@@ -2683,7 +2841,7 @@ FileSet {
 #
 #  Note: / backs up everything
   File = /
- }
+}
   Exclude {}
 }
 # When to do the backups
index e8df71a732dccd239c069dfaceeaf7b368395185..fe6e11dc8014516fb806de0d292f8037de36c0df 100644 (file)
@@ -136,14 +136,14 @@ PostgreSQL-directory/bin/psql --command \\dp bacula
 \normalsize
 
 Also, I had an authorization problem with the password. In the end,
-I had to modify my {\bf pg_hba.conf} file (in /var/lib/pgsql on my machine)
+I had to modify my {\bf pg_hba.conf} file (in /var/lib/pgsql/data on my machine)
 from:
 
 \footnotesize
 \begin{verbatim}
-  local   all    all        ident
+  local   all    all        ident  sameuser
 to
-  local   all    all        trust
+  local   all    all        trust  sameuser
 \end{verbatim}
 \normalsize
 
@@ -297,7 +297,7 @@ before proceeding with this process!
 
    \footnotesize
 \begin{verbatim}
-       mysqldump -f -t -n >bacula-backup.dmp>
+       mysqldump -f -t -n >bacula-backup.dmp
     
 \end{verbatim}
 \normalsize
index 712a18e0d22236aa4ef124540017a28d6206c62c..a811b7ac7df852c821242aebeae79d198c901b50 100644 (file)
@@ -481,7 +481,7 @@ bacula-sd  Alert: TapeAlert[32]: Interface: Problem with SCSI interface
    for reserving a drive for something special such as a high priority
    backup or restore operations.
 
-\item [Maximum Changer Wait = {\it seconds}]
+\item [Maximum Changer Wait = {\it time}]
    \index[sd]{Maximum Changer Wait}
    This directive specifies the maximum time in seconds for Bacula to wait
    for an autochanger to change the volume.  If this time is exceeded,
@@ -489,22 +489,13 @@ bacula-sd  Alert: TapeAlert[32]: Interface: Problem with SCSI interface
    try again.  If no additional changer volumes exist, Bacula will ask the
    operator to intervene.  The default is 5 minutes.      
 
-   Please note that if you want to set your changer wait time to
-   10 minutes, you must specify:
-
-\begin{verbatim}
-Maximum Changer Wait = 600
-\end{verbatim}
-
-   This directive will not accept qualifiers (such as "minutes").
-
-\item [Maximum Rewind Wait = {\it seconds}]
+\item [Maximum Rewind Wait = {\it time}]
    \index[sd]{Maximum Rewind Wait}
    This directive specifies the maximum time in seconds for Bacula to wait
    for a rewind before timing out.  If this time is exceeded,
    Bacula will cancel the job.  The default is 5 minutes.
 
-\item [Maximum Open Wait = {\it seconds}]
+\item [Maximum Open Wait = {\it time}]
    \index[sd]{Maximum Open Wait}
    This directive specifies the maximum time in seconds for Bacula to wait
    for a open before timing out.  If this time is exceeded,
@@ -568,7 +559,7 @@ Maximum Changer Wait = 600
    the drive on the next poll and  automatically continue with the backup. 
    Please see above more more details.
 
-\item [Maximum Open Wait = {\it seconds}]
+\item [Maximum Open Wait = {\it time}]
    \index[sd]{Maximum Open Wait }
    This directive specifies the maximum amount of time in seconds that
    Bacula will wait for a device that is busy.  The default is 5 minutes.
index c09bb4e4dd0231d22798b3669c35c02322c592b6..eb54cda081ca139698752ff23ba7967be79a5d45 100644 (file)
@@ -1 +1 @@
-1.39.5 (20 February 2006)
+1.38.6-beta3 (04 March 2006)
index bd7b6900e0d7e496bcc2f9492ea8de5953270281..6d5ed2815c5c64a13a4a036bb6546675f44d22f6 100644 (file)
@@ -40,12 +40,13 @@ This install is standard Windows .exe that runs an install wizard using the
 NSIS Free Software installer, so if you have already installed Windows
 software, it should be very familiar to you. 
 
-If you have a previous version Cygwin of Bacula (1.32 or lower) installed,
-you should stop the service, uninstall it, and remove the Bacula
-installation directory possibly saving your bacula-fd.conf file for use
-with the new version you will install.  The new native version of Bacula
-has far fewer files than the old Cygwin version, so it is better to start
-with a clean directory.
+If you have a previous version Cygwin of Bacula (1.32 or lower)
+installed, you should stop the service, uninstall it, and remove
+the Bacula installation directory possibly saving your
+bacula-fd.conf file for use with the new version you will
+install.  Current versions of Bacula do not use Cygwin and has
+far fewer files than the old Cygwin version, so it is better to
+start with a clean directory.
 
 Finally, proceed with the installation.