]> git.sur5r.net Git - bacula/docs/blobdiff - docs/manuals/en/utility/progs.tex
Merge branch 'master' of ssh://ricozz@bacula.git.sourceforge.net/gitroot/bacula/docs
[bacula/docs] / docs / manuals / en / utility / progs.tex
index 9187970d4974c98214e70e1f2b2d1178634d72a1..440fd4b7a544062b8e7751d0609bc683bc8547f3 100644 (file)
@@ -331,7 +331,6 @@ Please note that some of the current limitations of bextract are:
 \begin{enumerate}
 \item It cannot restore access control lists (ACL) that have been
       backed up along with the file data.
-\item It cannot restore Win32 non-portable streams (typically default).
 \item It cannot restore encrypted files.
 \item The command line length is relatively limited,
       which means that you cannot enter a huge number of volumes.  If you need to
@@ -456,17 +455,21 @@ database is to reload the database by using the bootstrap file that
 was written when you saved it (default bacula-dir.conf file).
 
 The {\bf bscan} program can be used to re-create a database (catalog)
-records from the backup information written to one or more Volumes.  
-This is normally
-needed only if one or more Volumes have been pruned or purged from your
-catalog so that the records on the Volume are no longer in the catalog, or
-for Volumes that you have archived.
-
-With some care, it can also be used to synchronize your existing catalog with
-a Volume. Although we have never seen a case of bscan damaging a
-catalog, since bscan modifies your catalog, we recommend that
-you do a simple ASCII backup of your database before running {\bf bscan} just
-to be sure.  See \ilink{Compacting Your Database}{CompactingMySQL} for
+records from the backup information written to one or more Volumes.  This
+is normally needed only if one or more Volumes have been pruned or purged
+from your catalog so that the records on the Volume are no longer in the
+catalog, or for Volumes that you have archived.  Note, if you scan in
+Volumes that were previously purged, you will be able to do restores from
+those Volumes.  However, unless you modify the Job and File retention times
+for the Jobs that were added by scanning, the next time you run any Job
+with the same name, the records will be pruned again.  Since it takes a
+long time to scan Volumes this can be very frustrating.
+
+With some care, {\bf bscan} can also be used to synchronize your existing
+catalog with a Volume.  Although we have never seen a case of bscan
+damaging a catalog, since bscan modifies your catalog, we recommend that
+you do a simple ASCII backup of your database before running {\bf bscan}
+just to be sure.  See \ilink{Compacting Your Database}{CompactingMySQL} for
 the details of making a copy of your database.
 
 {\bf bscan} can also be useful in a disaster recovery situation, after the
@@ -1027,6 +1030,17 @@ If you are getting incorrect dates (e.g. 1970) and you are
 running with a non-English language setting, you might try adding
 a LANG=''en\_US'' immediately before the bsmtp call.
 
+In general, {\bf bsmtp} attempts to cleanup email addresses that you
+specify in the from, copy, mailhost, and recipient fields, by adding
+the necessary \lt{} and \gt{} characters around the address part.  However,
+if you include a {\bf display-name} (see RFC 5332), some SMTP servers
+such as Exchange may not accept the message if the {\bf display-name} is
+also included in \lt{} and \gt{}.  As mentioned above, you must test, and
+if you run into this situation, you may manually add the \lt{} and \gt{}
+to the Bacula {\bf mailcommand} or {\bf operatorcommand} and when
+{\bf bsmtp} is formatting an address if it already contains a \lt{} or
+\gt{} character, it will leave the address unchanged.
+
 \section{dbcheck}
 \label{dbcheck}
 \index[general]{Dbcheck}
@@ -1049,18 +1063,37 @@ It is called:
 
 \footnotesize
 \begin{verbatim}
-Usage: dbcheck [-c config] [-C catalog name] [-d debug_level]
-<working-directory> <bacula-database> <user> <password> [<dbhost>]
+Usage: dbcheck [-c config ] [-B] [-C catalog name] [-d debug_level] 
+  <working-directory> <bacula-database> <user> <password> [<dbhost>] [<dbport>]
        -b              batch mode
        -C              catalog name in the director conf file
-       -c              director conf filename
-       -dnn            set debug level to nn
+       -c              Director conf filename
+       -B              print catalog configuration and exit
+       -d <nn>         set debug level to <nn>
+       -dt             print timestamp in debug output
        -f              fix inconsistencies
        -v              verbose
        -?              print this message
 \end{verbatim}
 \normalsize
 
+If the \textbf{-B} option is specified, dbcheck will print out catalog
+information in a simple text based format. This is useful to backup it in a
+secure way.
+
+\begin{verbatim}
+ $ dbcheck -B 
+ catalog=MyCatalog
+ db_type=SQLite
+ db_name=regress
+ db_driver=
+ db_user=regress
+ db_password=
+ db_address=
+ db_port=0
+ db_socket=
+\end{verbatim} %$
+
 If the {\bf -c} option is given with the Director's conf file, there is no
 need to enter any of the command line arguments, in particular the working
 directory as dbcheck will read them from the file. 
@@ -1171,6 +1204,20 @@ The inconsistencies examined are the following:
    regardless of their age. 
 \end{itemize}
 
+
+If you are using Mysql, dbcheck will ask you if you want to create temporary
+indexes to speed up orphaned Path and Filename elimination.
+
+Mostly for PostgreSQL users, we provide a pure SQL script dbcheck replacement
+in \url{examples/database/dbcheck.sql} that works with global queries instead
+of many small queries like dbcheck. Execution instructions are at the top of
+the script and you will need to type \texttt{COMMIT} at the end to validate
+modifications.
+
+If you are using bweb or brestore, don't eliminate orphaned Path, else you will
+have to rebuild \texttt{brestore\_pathvisibility} and
+\texttt{brestore\_pathhierarchy} indexes.
+
 By the way, I personally run dbcheck only where I have messed up
 my database due to a bug in developing Bacula code, so normally
 you should never need to run dbcheck in spite of the