]> git.sur5r.net Git - bacula/docs/blobdiff - docs/manuals/en/main/dirdconf.tex
Tweak Base Jobs
[bacula/docs] / docs / manuals / en / main / dirdconf.tex
index e7b615465c2b6b27eea6ab523ff1fb9d60afb6c2..d6e68f92a38cf0c171c3d72007ef18e0ded1d0bb 100644 (file)
@@ -338,10 +338,9 @@ resource.
   where  \lt{}string\gt{} is an identifier which can be used for support purpose.
   This string is displayed using the \texttt{version} command.
 
-\item[MaxConsoleConnections = \lt{}number\gt{}] 
+\item[MaximumConsoleConnections = \lt{}number\gt{}] 
   \index[dir]{MaximumConsoleConnections}
-  \index[dir]{MaxConsoleConnections}
-  \index[dir]{Directive!MaxConsoleConnections}
+  \index[dir]{Directive!MaximumConsoleConnections}
   \index[dir]{Console}
    where \lt{}number\gt{}  is the maximum number of Console Connections that
    could run  concurrently. The default is set to 20, but you may set it to a 
@@ -799,7 +798,7 @@ For a {\bf Verify} Job, the Level may be one of the  following:
    your catalog database.
 
    If the {\bf bootstrap-file-specification} begins with a vertical bar
-   (|), Bacula will use the specification as the name of a program to which
+   (\verb+|+), Bacula will use the specification as the name of a program to which
    it will pipe the bootstrap record.  It could for example be a shell
    script that emails you the bootstrap record.
 
@@ -831,7 +830,7 @@ JobDefs {
 
 \item [FileSet = \lt{}FileSet-resource-name\gt{}]
 \index[dir]{FileSet}
-\index[dir]{FileSet}
+\index[dir]{Directive!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, and what options to use (e.g.  compression, ...).  Only a
@@ -839,6 +838,13 @@ JobDefs {
    details, see the \ilink{FileSet Resource section}{FileSetResource} of
    this chapter.  This directive is required.
 
+\item [Base = \lt{}job-resource-name, ...\gt{}]
+\index[dir]{Base}
+\index[dir]{Directive!Base}
+The Base directive permits to specify the list of jobs that will be used during
+Full backup as base. This directive is optional. See the \ilink{Base Job
+chapter}{basejobs} for more information.
+
 \item [Messages = \lt{}messages-resource-name\gt{}]
 \index[dir]{Messages}
 \index[dir]{Directive!Messages}
@@ -966,8 +972,13 @@ during working hours. We can see it like \texttt{Max Start Delay + Max Run
    when the job starts, ({\bf not} necessarily the same as when the job was
    scheduled). This directive works as expected since bacula 2.3.18.
 
-\addcontentsline{lof}{figure}{Job time control directives}
-\includegraphics{\idir different_time.eps}
+\begin{figure}[htbp]
+  \centering
+  \includegraphics[width=13cm]{\idir different_time.eps}
+  \caption{Job time control directives}
+  \label{fig:differenttime}
+\end{figure}
+
 
 \item [Max Full Interval = \lt{}time\gt{}]
 \index[dir]{Max Full Interval}
@@ -1020,29 +1031,29 @@ during working hours. We can see it like \texttt{Max Start Delay + Max Run
 \item [Prune Jobs = \lt{}yes\vb{}no\gt{}]
 \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.
+   Normally, pruning of Jobs from the Catalog is specified on a Pool by
+   Pool basis in the Pool resource with the {\bf AutoPrune} directive.
    If this directive is specified (not normally) and the value is {\bf
-   yes}, it will override the value specified in the Client resource.  The
+   yes}, it will override the value specified in the Pool resource.  The
    default is {\bf no}.
 
 
 \item [Prune Files = \lt{}yes\vb{}no\gt{}]
 \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.
+   Normally, pruning of Files from the Catalog is specified on a Pool by
+   Pool basis in the Pool resource with the {\bf AutoPrune} directive.
    If this directive is specified (not normally) and the value is {\bf
-   yes}, it will override the value specified in the Client resource.  The
+   yes}, it will override the value specified in the Pool resource.  The
    default is {\bf no}.
 
 \item [Prune Volumes = \lt{}yes\vb{}no\gt{}]
 \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}
+   Normally, pruning of Volumes from the Catalog is specified on a Pool
+   by Pool basis in the Pool resource with the {\bf AutoPrune}
    directive.  If this directive is specified (not normally) and the value
-   is {\bf yes}, it will override the value specified in the Client
+   is {\bf yes}, it will override the value specified in the Pool
    resource.  The default is {\bf no}.
 
 \item [RunScript \{\lt{}body-of-runscript\gt{}\}]
@@ -1650,6 +1661,67 @@ RunScript {
    job.  If it is set to zero (the default) the job will be rescheduled an
    indefinite number of times.
 
+\item [Allow Duplicate Jobs = \lt{}yes\vb{}no\gt{}]
+\index[general]{Allow Duplicate Jobs}
+
+\begin{figure}[htbp]
+  \centering
+  \includegraphics[width=13cm]{\idir duplicate-real.eps}
+  \caption{Allow Duplicate Jobs usage}
+  \label{fig:allowduplicatejobs}
+\end{figure}
+
+A duplicate job in the sense we use it here means a second or subsequent job
+with the same name starts.  This happens most frequently when the first job
+runs longer than expected because no tapes are available.
+
+  If this directive is enabled duplicate jobs will be run.  If
+  the directive is set to {\bf no} (default) then only one job of a given name
+  may run at one time, and the action that Bacula takes to ensure only
+  one job runs is determined by the other directives (see below).
+  If {\bf Allow Duplicate Jobs} is set to {\bf no} and two jobs
+  are present and none of the three directives given below permit
+  cancelling a job, then the current job (the second one started)
+  will be cancelled.
+
+\item [Allow Higher Duplicates = \lt{}yes\vb{}no\gt{}]
+\index[general]{Allow Higher Duplicates}
+  This directive was implemented in version 5.0.0, but does not work
+  as expected. If used, it should always be set to no.  In later versions
+  of Bacula the directive is disabled (disregarded).
+
+
+\item [Cancel Lower Level Duplicates = \lt{}yes\vb{}no\gt{}]
+\index[general]{Cancel Lower Level Duplicates}
+  If \textbf{Allow Duplicates Jobs} is set to \textbf{no} and this
+  directive is set to \textbf{yes}, Bacula will choose between duplicated
+  jobs the one with the highest level.  For example, it will cancel a
+  previous Incremental to run a Full backup.  It works only for Backup
+  jobs.  The default is \texttt{no}. If the levels of the duplicated
+  jobs are the same, nothing is done and the other
+  Cancel XXX Duplicate directives will be examined.
+
+\item [Cancel Queued Duplicates = \lt{}yes\vb{}no\gt{}]
+\index[general]{Cancel Queued Duplicates}
+  If {\bf Allow Duplicate Jobs} is set to {\bf no} and
+  if this directive is set to {\bf yes} any job that is
+  already queued to run but not yet running will be canceled.
+  The default is {\bf no}. 
+
+\item[Cancel Running Duplicates = \lt{}yes\vb{}no\gt{}]
+\index[general]{Cancel Running Duplicates}
+  If {\bf Allow Duplicate Jobs} is set to {\bf no} and
+  if this directive is set to {\bf yes} any job that is already running
+  will be canceled.  The default is {\bf no}.
+
+
+\item[DuplicateJobProximity = \lt{}time-specification\gt{}]
+\index[general]{Duplicate Job Proximity}
+  This directive permits to determine if two jobs are really duplicated.
+  If the first one is running for long time, this is probably not a good
+  idea to cancel it.
+
 \item [Run = \lt{}job-name\gt{}]
    \index[dir]{Run}
    \index[dir]{Directive!Run}
@@ -2177,6 +2249,7 @@ console run command.  This directive is required.
 
 \label{FileRetention}
 \item [File Retention = \lt{}time-period-specification\gt{}]
+   \label{FileRetention}
    \index[dir]{File Retention}
    \index[dir]{Directive!File Retention}
    The File Retention directive defines the length of time that  Bacula will
@@ -2200,6 +2273,7 @@ console run command.  This directive is required.
 
 \label{JobRetention}
 \item [Job Retention = \lt{}time-period-specification\gt{}]
+   \label{JobRetention}
    \index[dir]{Job Retention}
    \index[dir]{Directive!Job Retention}
    The Job Retention directive defines the length of time that  Bacula will keep
@@ -2442,6 +2516,17 @@ the Director.
    turn data spooling on as documented in the \ilink{Data
    Spooling}{SpoolingChapter} chapter of this manual.
 
+\item [AllowCompression = \lt{}yes\vb{}no\gt{}]
+  \label{AllowCompression}
+   \index[dir]{AllowCompression}
+   \index[dir]{Directive!AllowCompression}
+
+   This directive is optional, and if you specify {\bf No} (the default is {\bf
+     Yes}), it will cause backups jobs running on this storage resource to run
+   without client File Daemon compression.  This effectively overrides
+   compression options in FileSets used by jobs which use this storage
+   resource.
+
 \item [Heartbeat Interval = \lt{}time-interval\gt{}]
    \index[dir]{Heartbeat Interval}
    \index[dir]{Directive!Heartbeat}
@@ -2802,9 +2887,10 @@ The Pool Resource defined in the Director's configuration file
 \item [Action On Purge = \lt{Truncate}]
 \index[dir]{actiononpurge}
 
-This directive \textbf{ActionOnPurge=Truncate} instructs Bacula to truncate
-the volume when it is purged. It is useful to prevent disk based volumes from
-consuming too much space. 
+This directive \textbf{ActionOnPurge=Truncate} instructs Bacula to truncate the
+volume when it is purged with the \texttt{purge volume action=truncate}
+command. It is useful to prevent disk based volumes from consuming too much
+space.
 
 \begin{verbatim}
 Pool {
@@ -2814,6 +2900,21 @@ Pool {
 }
 \end{verbatim}
 
+You can schedule the truncate operation at the end of your CatalogBackup job
+like in this example:
+
+\begin{verbatim}
+Job {
+ Name = CatalogBackup
+ ...
+ RunScript {
+   RunsWhen=After
+   RunsOnClient=No
+   Console = "purge volume action=all allpools storage=File"
+ }
+}
+\end{verbatim}
+
 \label{PoolScratchPool}
 \item [ScratchPool = \lt{}pool-resource-name\gt{}]
    \index[dir]{ScrachPool}
@@ -2951,6 +3052,39 @@ Pool {
    sure that some day, Bacula will recycle a Volume that contains current
    data.  The default is {\bf no}.
 
+\item [File Retention = \lt{}time-period-specification\gt{}]
+   \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 after the End time of the
+   Job corresponding to the File records. 
+
+   This directive takes precedence over Client directives of the same name. For
+   example, you can decide to increase Retention times for Archive or OffSite
+   Pool.
+
+   Note, this affects only records in the catalog database. It does not affect
+   your archive backups.
+
+   For more information see Client documentation about
+   \ilink{FileRetention}{FileRetention}
+
+\item [Job Retention = \lt{}time-period-specification\gt{}]
+   \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 after the Job End time.  As with the
+   other retention periods, this affects only records in the catalog and not
+   data in your archive backup.
+
+   This directive takes precedence over Client directives of the same name.
+   For example, you can decide to increase Retention times for Archive or
+   OffSite Pool.
+
+   For more information see Client side documentation
+   \ilink{JobRetention}{JobRetention}
+
 \item [Cleaning Prefix = \lt{}string\gt{}]
    \index[dir]{Cleaning Prefix}
    \index[dir]{Directive!Cleaning Prefix}