\section{Accurate}
\index[general]{Accurate Backup}
As with most other backup programs, Bacula decides what files to backup
-for Incremental and Differental backup by comparing the creation and modification
-times of the file to the time the last backup completed. If one of those two times
-is later than the last backup time, then the file will be backed up. This does
-not, however, permit tracking what files have been deleted and will miss any file
-with an old time that may have been restored or moved on the client filesystem.
+for Incremental and Differental backup by comparing the change (st\_ctime)
+and modification (st\_mtime) times of the file to the time the last backup completed.
+If one of those two times is later than the last backup time, then the file
+will be backed up. This does not, however, permit tracking what files have
+been deleted and will miss any file with an old time that may have been
+restored or moved on the client filesystem.
If the {\bf Accurate = \lt{}yes|no\gt{}} directive is enabled (default no) in the
Job resource, the job will be run as an Accurate Job. For a {\bf Full}
\footnotesize
\begin{verbatim}
- Slot | Volume Name | Status | Media Type | Pool | Loaded |
-------+-----------------+----------+-------------------+----------------+---------|
- 1 | 00001 | Append | DiskChangerMedia | Default | 0 |
- 2 | 00002 | Append | DiskChangerMedia | Default | 0 |
- 3*| 00003 | Append | DiskChangerMedia | Scratch | 0 |
- 4 | | | | | 0 |
+ Slot | Volume Name | Status | Media Type | Pool | Loaded |
+------+---------------+----------+-------------------+------------+---------|
+ 1 | 00001 | Append | DiskChangerMedia | Default | 0 |
+ 2 | 00002 | Append | DiskChangerMedia | Default | 0 |
+ 3*| 00003 | Append | DiskChangerMedia | Scratch | 0 |
+ 4 | | | | | 0 |
\end{verbatim}
\normalsize
\index[general]{Misc New Features}
\begin{description}
\item [Virtual Tape Emulation]
-We now have a Virtual Tape emulator that allows us to run though 99.9\% of the
-tape code but actually reading and writing to a disk file. This feature is most
-useful in testing.
-It is enabled by using {\bf Device Type = vtape} in the Storage daemon's Device
+
+We now have a Virtual Tape emulator that allows us to run though 99.9\% of
+the tape code but actually reading and writing to a disk file. Used with the
+\textbf{disk-changer} script, you can now emulate an autochanger with 10 drives
+and 700 slots. This feature is most useful in testing. It is enabled
+by using {\bf Device Type = vtape} in the Storage daemon's Device
directive. This feature is only implemented on Linux machines.
\item [Bat Enhancements]
commands per RunScript. Simply specify multiple {\bf Command} directives
in your RunScript.
+\begin{verbatim}
+Job {
+ Name = aJob
+ RunScript {
+ Command = "/bin/echo test"
+ Command = "/bin/echo an other test"
+ Command = "/bin/echo 3 commands in the same runscript"
+ RunsWhen = Before
+ }
+ ...
+}
+\end{verbatim}
+
A new Client RunScript {\bf RunsWhen} keyword of {\bf AfterVSS} has been implemented, which
runs the command after the Volume Shadow Copy has been made.
The bconsole {\bf status dir} output has been enhanced to indicate
Storage daemon job spooling and despooling activity.
+\item [Statistics Enhancements]
+
+If you (or you boss) want to have statistics on your backups, you could use
+some SQL stuffs on the Job table to report how many:
+\begin{itemize}
+\item jobs have run
+\item jobs have been successful
+\item files have been backuped
+\item ...
+\end{itemize}
+
+Theses statistics are accurate only if your job retention is greater than
+your statistic period. Ie, if jobs are purged from the catalog, you won't be
+able to use them.
+
+Now, you can configure bacula to copy Job records to a new JobStat table
+with the \textbf{Use Statistics = \lt{}yes|no\gt{}} Job directive.
-\end{description}
\ No newline at end of file
+The \texttt{Statistics Retention = \lt{}time\gt{}} director directive defines
+the length of time that Bacula will keep statistics job records in the Catalog
+database after the Job End time. (In \texttt{JobStat} table) When this time
+period expires, and if user runs \texttt{prune stats} command, Bacula will
+prune (remove) Job records that are older than the specified period.
+
+Theses statistics records aren't use for restore purpose, but mainly for
+capacity planning, billings, etc.
+
+\begin{verbatim}
+Job {
+ Name = ImportantBackup
+ Client = rufus-fd
+ ...
+ Use Statistics = yes
+}
+\end{verbatim}
+
+
+\end{description}