From: Jeremy C. Reed Date: Wed, 20 Dec 2006 22:32:48 +0000 (+0000) Subject: Another mega patch. Sorry it includes so many unrelated changes. X-Git-Tag: Release-2.0.0~82 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=e81fd909909cf10604e12298c69081e65214fb70;p=bacula%2Fdocs Another mega patch. Sorry it includes so many unrelated changes. They are summarized below. Kern okayed this via bacula-devel list. If you notice any issues, please let me know. - Use latex2html -split 3 instead of -split 4 for the "make web" target. NOTE: be sure to update your Makefile manually or from the Makefile.in. - Switches top level sections to \chapter. - Gets rid of asterisks for sections so they are all numbered now. - Removes the now un-necessary and now redundant \addcontentsline for table of contents (not needed because numbered sections are automatically added so was doubling them). - Shortens length of several section (and now chapter) titles (so this can look better in table of contents and fit better in printed book. Also a few of these are rewritten. (Note that I didn't modify the long FAQ section names.) - Removed some tex formatting that were embedded in some \section* because now they cause tex errors. - Adds many of my TODO: items as tex comments directly near problems. Some of these are just questions. - Uncomment label_fd label (as in my custom book tex file references the GNU Free Documentation License). - Change label name of PostgreSQL_phase2 to PostgreSQL_configure and renamed that section. - Removes an old comment about old FreeBSD port before it was updated. - Removes some index items that were bogus or redundant; or rewords some of index items. Hopefully nothing else. (After this last batch of changes, I won't get so far behind and will be able to commit related items at one time.) TODO: grep the tex files for TODO: and share your feedback or fix :) --- diff --git a/docs/manual/Makefile.in b/docs/manual/Makefile.in index 3ccedb71..6ce1115c 100644 --- a/docs/manual/Makefile.in +++ b/docs/manual/Makefile.in @@ -78,7 +78,7 @@ web: @rm -f bacula/xp-*.png @rm -f bacula/next.eps bacula/next.png bacula/prev.eps bacula/prev.png bacula/up.eps bacula/up.png @rm -rf bacula/*.html - latex2html -split 4 -local_icons -t "Bacula User's Guide" -long_titles 4 \ + latex2html -split 3 -local_icons -t "Bacula User's Guide" -long_titles 4 \ -toc_stars -contents_in_nav -init_file latex2html-init.pl -white -notransparent bacula >tex.out 2>&1 ./translate_images.pl --to_meaningful_names bacula/Bacula_Users_Guide.html cp -f bacula/Bacula_Freque_Asked_Questi.html bacula/faq.html diff --git a/docs/manual/ansi-labels.tex b/docs/manual/ansi-labels.tex index 9c8b2dc0..54cfac13 100644 --- a/docs/manual/ansi-labels.tex +++ b/docs/manual/ansi-labels.tex @@ -1,9 +1,8 @@ -\section*{ANSI and IBM Tape Labels} +\chapter{ANSI and IBM Tape Labels} \label{_ChapterStart62} \index[general]{ANSI and IBM Tape Labels} \index[general]{Labels!Tape} -\addcontentsline{toc}{section}{ANSI and IBM Tape Labels} Bacula supports ANSI or IBM tape labels as long as you enable it. In fact, with the proper configuration, you can @@ -30,8 +29,7 @@ ANSI/IBM labeled tapes to be used at sites with multiple machines and multiple backup programs. -\subsection*{Director Pool Directive} -\addcontentsline{toc}{section}{Director Pool Directive} +\section{Director Pool Directive} \begin{description} \item [ Label Type = ANSI | IBM | Bacula] @@ -41,8 +39,7 @@ and multiple backup programs. is Label Type = Bacula. \end{description} -\subsection*{Storage Daemon Device Directives} -\addcontentsline{toc}{section}{Storage Daemon Device Directives} +\section{Storage Daemon Device Directives} \begin{description} \item [ Label Type = ANSI | IBM | Bacula] diff --git a/docs/manual/autochangerres.tex b/docs/manual/autochangerres.tex index 4150938e..b60e6b1b 100644 --- a/docs/manual/autochangerres.tex +++ b/docs/manual/autochangerres.tex @@ -1,7 +1,6 @@ -\subsection*{Autochanger Resource} +\chapter{Autochanger Resource} \index[sd]{Autochanger Resource } \index[sd]{Resource!Autochanger } -\addcontentsline{toc}{subsection}{Autochanger Resource} The Autochanger resource supports single or multiple drive autochangers by grouping one or more Device resources diff --git a/docs/manual/autochangers.tex b/docs/manual/autochangers.tex index 23cfae49..cbf274b1 100644 --- a/docs/manual/autochangers.tex +++ b/docs/manual/autochangers.tex @@ -1,16 +1,14 @@ %% %% -\section*{Autochanger Support} +\chapter{Autochanger Support} \label{_ChapterStart18} \index[general]{Support!Autochanger } \index[general]{Autochanger Support } -\addcontentsline{toc}{section}{Autochanger Support} -\subsection*{Autochangers -- General} +\section{Autochangers -- General} \index[general]{General!Autochangers -- } \index[general]{Autochangers -- General } -\addcontentsline{toc}{subsection}{Autochangers -- General} Bacula provides autochanger support for reading and writing tapes. In order to work with an autochanger, Bacula requires a number of things, each of @@ -79,12 +77,11 @@ root.root}, so you will need to ensure that the Storage daemon has sufficient permissions to access the autochanger. \label{SCSI devices} -\subsection*{Knowing What SCSI Devices You Have} +\section{Knowing What SCSI Devices You Have} \index[general]{Have!Knowing What SCSI Devices You } \index[general]{Knowing What SCSI Devices You Have } \index[general]{SCSI devices} \index[general]{devices!SCSI} -\addcontentsline{toc}{subsection}{Knowing What SCSI Devices You Have} Under Linux, you can @@ -144,10 +141,9 @@ devices to make bacula work when operating the AutoChanger after a reboot. \label{scripts} -\subsection*{Example Scripts} +\section{Example Scripts} \index[general]{Scripts!Example } \index[general]{Example Scripts } -\addcontentsline{toc}{subsection}{Example Scripts} Please read the sections below so that you understand how autochangers work with Bacula. Although we supply a default {\bf mtx-changer} script, your @@ -160,9 +156,8 @@ autochangers. \label{Slots} -\subsection*{Slots} +\section{Slots} \index[general]{Slots } -\addcontentsline{toc}{subsection}{Slots} To properly address autochangers, Bacula must know which Volume is in each {\bf slot} of the autochanger. Slots are where the changer cartridges reside @@ -188,10 +183,9 @@ list Volumes in the Console program. \label{mult} -\subsection*{Multiple Devices} +\section{Multiple Devices} \index[general]{Devices!Multiple } \index[general]{Multiple Devices } -\addcontentsline{toc}{subsection}{Multiple Devices} Some autochangers have more than one read/write device (drive). The new @@ -215,10 +209,9 @@ Device} (control channel) as the first drive, but a different {\bf Archive Device}. \label{ConfigRecords} -\subsection*{Device Configuration Records} +\section{Device Configuration Records} \index[general]{Records!Device Configuration } \index[general]{Device Configuration Records } -\addcontentsline{toc}{subsection}{Device Configuration Records} Configuration of autochangers within Bacula is done in the Device resource of the Storage daemon. Four records: {\bf Autochanger}, {\bf Changer Device}, @@ -330,10 +323,9 @@ define an Autochanger resource. \input{autochangerres} \label{example} -\subsection*{An Example Configuration File} +\section{An Example Configuration File} \index[general]{Example Configuration File } \index[general]{File!Example Configuration } -\addcontentsline{toc}{subsection}{Example Configuration File} The following two resources implement an autochanger: @@ -362,9 +354,8 @@ where you will adapt the {\bf Archive Device}, the {\bf Changer Device}, and the path to the {\bf Changer Command} to correspond to the values used on your system. -\subsection*{A Multi-drive Example Configuration File} +\section{A Multi-drive Example Configuration File} \index[general]{Multi-drive Example Configuration File } -\addcontentsline{toc}{subsection}{A Multi-drive Example Configuration File} The following resources implement a multi-drive autochanger: @@ -407,10 +398,9 @@ the path to the {\bf Changer Command} to correspond to the values used on your system. \label{SpecifyingSlots} -\subsection*{Specifying Slots When Labeling} +\section{Specifying Slots When Labeling} \index[general]{Specifying Slots When Labeling } \index[general]{Labeling!Specifying Slots When } -\addcontentsline{toc}{subsection}{Specifying Slots When Labeling} If you add an {\bf Autochanger = yes} record to the Storage resource in your Director's configuration file, the Bacula Console will automatically prompt @@ -460,9 +450,8 @@ Pool { Any slot containing a barcode of CLNxxxx will be treated as a cleaning tape and will not be mounted. -\subsection*{Changing Cartridges} +\section{Changing Cartridges} \index[general]{Changing Cartridges } -\addcontentsline{toc}{subsection}{Changing Cartridges} If you wish to insert or remove cartridges in your autochanger or you manually run the {\bf mtx} program, you must first tell Bacula to release the autochanger by doing: @@ -482,10 +471,9 @@ of the autochanger while it has the drive mounted. \label{Magazines} -\subsection*{Dealing with Multiple Magazines} +\section{Dealing with Multiple Magazines} \index[general]{Dealing with Multiple Magazines } \index[general]{Magazines!Dealing with Multiple } -\addcontentsline{toc}{subsection}{Dealing with Multiple Magazines} If you have several magazines or if you insert or remove cartridges from a magazine, you should notify Bacula of this. By doing so, Bacula will as @@ -541,10 +529,9 @@ update slots scan \end{enumerate} \label{simulating} -\subsection*{Simulating Barcodes in your Autochanger} +\section{Simulating Barcodes in your Autochanger} \index[general]{Autochanger!Simulating Barcodes in your } \index[general]{Simulating Barcodes in your Autochanger } -\addcontentsline{toc}{subsection}{Simulating Barcodes in your Autochanger} You can simulate barcodes in your autochanger by making the {\bf mtx-changer} script return the same information that an autochanger with barcodes would do. @@ -588,10 +575,9 @@ put the correct data in the file, then run the {\bf update slots} command, and your autochanger will appear to Bacula to be an autochanger with barcodes. \label{updateslots} -\subsection*{The Full Form of the Update Slots Command} +\section{The Full Form of the Update Slots Command} \index[general]{Full Form of the Update Slots Command } \index[general]{Command!Full Form of the Update Slots } -\addcontentsline{toc}{subsection}{Full Form of the Update Slots Command} If you change only one cartridge in the magazine, you may not want to scan all Volumes, so the {\bf update slots} command (as well as the {\bf update slots @@ -634,10 +620,9 @@ not modified the mtx-changer script as described above, the above command will not find any Volume names so will do nothing. \label{FreeBSD} -\subsection*{FreeBSD Issues} +\section{FreeBSD Issues} \index[general]{Issues!FreeBSD } \index[general]{FreeBSD Issues } -\addcontentsline{toc}{subsection}{FreeBSD Issues} If you are having problems on FreeBSD when Bacula tries to select a tape, and the message is {\bf Device not configured}, this is because FreeBSD has made @@ -653,11 +638,10 @@ Please see the autochanger testing. \label{AutochangerTesting} -\subsection*{Testing the Autochanger and Adapting Your mtx-changer Script} -\index[general]{Testing the Autochanger and Adapting Your mtx-changer Script } -\index[general]{Script!Testing the Autochanger and Adapting Your mtx-changer } -\addcontentsline{toc}{subsection}{Testing the Autochanger and Adapting Your -mtx-changer Script} +\section{Testing Autochanger and Adapting mtx-changer} +\index[general]{Testing the Autochanger } +\index[general]{Adapting Your mtx-changer } +mtx-changer} Before attempting to use the autochanger with Bacula, it is preferable to "hand-test" that the changer works. To do so, we suggest you do the @@ -776,10 +760,9 @@ Bacula after a load command has been completed. \label{using} -\subsection*{Using the Autochanger} +\section{Using the Autochanger} \index[general]{Using the Autochanger } \index[general]{Autochanger!Using the } -\addcontentsline{toc}{subsection}{Using the Autochanger} Let's assume that you have properly defined the necessary Storage daemon Device records, and you have added the {\bf Autochanger = yes} record to the @@ -885,10 +868,9 @@ Select the Pool (1-2): 1 \label{Barcodes} -\subsection*{Barcode Support} +\section{Barcode Support} \index[general]{Support!Barcode } \index[general]{Barcode Support } -\addcontentsline{toc}{subsection}{Barcode Support} Bacula provides barcode support with two Console commands, {\bf label barcodes} and {\bf update slots}. @@ -913,10 +895,9 @@ prevent Bacula from attempting to write on the Volume. \label{interface} -\subsection*{Bacula Autochanger Interface} +\section{Bacula Autochanger Interface} \index[general]{Interface!Bacula Autochanger } \index[general]{Bacula Autochanger Interface } -\addcontentsline{toc}{subsection}{Bacula Autochanger Interface} Bacula calls the autochanger script that you specify on the {\bf Changer Device} statement. Normally this script will be the {\bf mtx-changer} script diff --git a/docs/manual/bimagemgr-chapter.tex b/docs/manual/bimagemgr-chapter.tex index 8e4e567a..01157f84 100644 --- a/docs/manual/bimagemgr-chapter.tex +++ b/docs/manual/bimagemgr-chapter.tex @@ -6,10 +6,9 @@ %% # $ % & ~ _ ^ \ { } %% -\subsection*{bimagemgr} +\section{bimagemgr} \label{bimagemgr} \index[general]{Bimagemgr } -\addcontentsline{toc}{subsection}{bimagemgr} {\bf bimagemgr} is a utility for those who backup to disk volumes in order to commit them to CDR disk, rather than tapes. It is a web based interface @@ -26,12 +25,12 @@ disk. It requires: DVD burning is not supported by {\bf bimagemgr} at this time, but both are planned for future releases. -\subsubsection*{bimagemgr installation} +\subsection{bimagemgr installation} \index[general]{bimagemgr!Installation } \index[general]{bimagemgr Installation } -\addcontentsline{toc}{subsubsection}{bimagemgr Installation} Installation from tarball: +% TODO: use itemized list for this? 1. Examine the Makefile and adjust it to your configuration if needed. 2. Edit config.pm to fit your configuration. 3. Do 'make install' as root. @@ -41,8 +40,11 @@ value needed may vary depending upon your cd recorder speed and whether you are burning on the bacula server on on another machine across your network. In my case I set it to 1000 seconds. Restart httpd. 5. Make sure that cdrecord is setuid root. +% TODO: I am pretty sure cdrecord can be used without setuid root +% TODO: as long as devices are setup correctly Installation from rpm package: +% TODO: use itemized list for this? 1. Install the rpm package for your platform. 2. Edit /cgi-bin/config.pm to fit your configuration. 3. Edit httpd.conf and change the Timeout value. The web server must not time @@ -53,6 +55,7 @@ case I set it to 1000 seconds. Restart httpd. 4. Make sure that cdrecord is setuid root. For bacula systems less than 1.36: +% TODO: use itemized list for this? 1. Edit the configuration section of config.pm to fit your configuration. 2. Run /etc/bacula/create\_cdimage\_table.pl from a console on your bacula server (as root) to add the CDImage table to your bacula database. @@ -63,6 +66,7 @@ The recommended approach to this is as follows (and only works if bimagemgr and apache are running on the same host as bacula. For bacula-1.34 or 1.36 installed from tarball - +% TODO: use itemized list for this? 1. Create a new user group bacula and add the user apache to the group for Red Hat or Mandrake systems. For SuSE systems add the user wwwrun to the bacula group. @@ -75,7 +79,9 @@ of this file prior to 1.36 do not support it. In that case it would be necessary a reboot of the server to execute '/etc/bacula/bacula restart'. For bacula-1.38 installed from tarball - +% TODO: use itemized list for this? 1. Your configure statement should include: +% TODO: fix formatting here --with-dir-user=bacula --with-dir-group=bacula --with-sd-user=bacula @@ -87,6 +93,7 @@ For SuSE systems add the user wwwrun to the bacula group. 3. Check/change ownership of all of your Volume files to root.bacula For bacula-1.36 or bacula-1.38 installed from rpm - +% TODO: use itemized list for this? 1. Add the user apache to the group bacula for Red Hat or Mandrake systems. For SuSE systems add the user wwwrun to the bacula group. 2. Check/change ownership of all of your Volume files to root.bacula @@ -104,13 +111,13 @@ order to access them via nfs share or other means. This approach should only be taken if you are sure of the security of your environment as it exposes the backup Volume files to world read. -\subsubsection*{bimagemgr usage} +\subsection{bimagemgr usage} \index[general]{bimagemgr!Usage } \index[general]{bimagemgr Usage } -\addcontentsline{toc}{subsubsection}{bimagemgr Usage} Calling the program in your web browser, e.g. {\tt http://localhost/cgi-bin/bimagemgr.pl} will produce a display as shown below +% TODO: use tex to say figure number in Figure 1. The program will query the bacula database and display all volume files with the date last written and the date last burned to disk. If a volume needs to be burned (last written is newer than last burn date) a "Burn" @@ -118,14 +125,18 @@ button will be displayed in the rightmost column. \addcontentsline{lof}{figure}{Bacula CD Image Manager} \includegraphics{./bimagemgr1.eps} \\Figure 1 +% TODO: use tex to say figure number Place a blank CDR disk in your recorder and click the "Burn" button. This will cause a pop up window as shown in Figure 2 to display the burn progress. +% TODO: use tex to say figure number \addcontentsline{lof}{figure}{Bacula CD Image Burn Progress Window} \includegraphics{./bimagemgr2.eps} \\Figure 2 +% TODO: use tex to say figure number When the burn finishes the pop up window will display the results of cdrecord +% TODO: use tex to say figure number as shown in Figure 3. Close the pop up window and refresh the main window. The last burn date will be updated and the "Burn" button for that volume will disappear. Should you have a failed burn you can reset the last burn date of @@ -133,6 +144,7 @@ that volume by clicking its "Reset" link. \addcontentsline{lof}{figure}{Bacula CD Image Burn Results} \includegraphics{./bimagemgr3.eps} \\Figure 3 +% TODO: use tex to say figure number In the bottom row of the main display window are two more buttons labeled "Burn Catalog" and "Blank CDRW". "Burn Catalog" will place a copy of diff --git a/docs/manual/bootstrap.tex b/docs/manual/bootstrap.tex index beabe765..f961addb 100644 --- a/docs/manual/bootstrap.tex +++ b/docs/manual/bootstrap.tex @@ -1,11 +1,10 @@ %% %% -\section*{The Bootstrap File} +\chapter{The Bootstrap File} \label{_ChapterStart43} \index[general]{File!Bootstrap } \index[general]{Bootstrap File } -\addcontentsline{toc}{section}{Bootstrap File} The information in this chapter is provided so that you may either create your own bootstrap files, or so that you can edit a bootstrap file produced by {\bf @@ -21,10 +20,9 @@ specification of what files should be restored. It is a relatively compact form of specifying the information, is human readable, and can be edited with any text editor. -\subsection*{File Format} +\section{File Format} \index[general]{Format!File } \index[general]{File Format } -\addcontentsline{toc}{subsection}{File Format} The general format of a {\bf bootstrap} file is: @@ -304,10 +302,9 @@ VolSessionTime=1025025494 \end{verbatim} \normalsize -\subsection*{Automatic Generation of Bootstrap Files} +\section{Automatic Generation of Bootstrap Files} \index[general]{Files!Automatic Generation of Bootstrap } \index[general]{Automatic Generation of Bootstrap Files } -\addcontentsline{toc}{subsection}{Automatic Generation of Bootstrap Files} One thing that is probably worth knowing: the bootstrap files that are generated automatically at the end of the job are not as optimized as those @@ -339,10 +336,9 @@ in-memory tree, selecting everything and creates the bootstrap file. The {\bf no} answers the {\bf Do you want to run this (yes/mod/no)} question. -\subsection*{A Final Example} +\section{A Final Example} \index[general]{Example!Final } \index[general]{Final Example } -\addcontentsline{toc}{subsection}{Final Example} If you want to extract or copy a single Job, you can do it by selecting by JobId (code not tested) or better yet, if you know the VolSessionTime and the diff --git a/docs/manual/bugs.tex b/docs/manual/bugs.tex index c9b07450..e8ba19b7 100644 --- a/docs/manual/bugs.tex +++ b/docs/manual/bugs.tex @@ -1,11 +1,10 @@ %% %% -\section*{Bacula Bugs} +\section{Bacula Bugs} \label{_ChapterStart4} \index[general]{Bacula Bugs } \index[general]{Bugs!Bacula } -\addcontentsline{toc}{section}{Bacula Bugs} Well fortunately there are not too many bugs, but thanks to Dan Langille, we have a diff --git a/docs/manual/catmaintenance.tex b/docs/manual/catmaintenance.tex index 17045f8e..8397d947 100644 --- a/docs/manual/catmaintenance.tex +++ b/docs/manual/catmaintenance.tex @@ -1,11 +1,10 @@ %% %% -\section*{Catalog Maintenance} +\chapter{Catalog Maintenance} \label{_ChapterStart12} \index[general]{Maintenance!Catalog } \index[general]{Catalog Maintenance } -\addcontentsline{toc}{section}{Catalog Maintenance} Without proper setup and maintenance, your Catalog may continue to grow indefinitely as you run Jobs and backup Files, and/or it may become @@ -23,10 +22,9 @@ hundred megabytes of disk space free. Whatever the case may be, some knowledge of retention periods will be useful. \label{Retention} -\subsection*{Setting Retention Periods} +\section{Setting Retention Periods} \index[general]{Setting Retention Periods } \index[general]{Periods!Setting Retention } -\addcontentsline{toc}{subsection}{Setting Retention Periods} {\bf Bacula} uses three Retention periods: the {\bf File Retention} period, the {\bf Job Retention} period, and the {\bf Volume Retention} period. Of @@ -104,10 +102,9 @@ time you run a Job. \end{description} \label{CompactingMySQL} -\subsection*{Compacting Your MySQL Database} +\section{Compacting Your MySQL Database} \index[general]{Database!Compacting Your MySQL } \index[general]{Compacting Your MySQL Database } -\addcontentsline{toc}{subsection}{Compacting Your MySQL Database} Over time, as noted above, your database will tend to grow. I've noticed that even though Bacula regularly prunes files, {\bf MySQL} does not effectively @@ -157,10 +154,9 @@ time to time (once every six months or year), compress it. \label{DatabaseRepair} \label{RepairingMySQL} -\subsection*{Repairing Your MySQL Database} +\section{Repairing Your MySQL Database} \index[general]{Database!Repairing Your MySQL } \index[general]{Repairing Your MySQL Database } -\addcontentsline{toc}{subsection}{Repairing Your MySQL Database} If you find that you are getting errors writing to your MySQL database, or Bacula hangs each time it tries to access the database, you should consider @@ -177,10 +173,9 @@ running dbcheck before (or possibly after) using the MySQL database repair program. It can clean up many of the orphaned record problems, and certain other inconsistencies in the Bacula database. -\subsection*{MySQL Table is Full} +\section{MySQL Table is Full} \index[general]{Database!MySQL Table is Full} \index[general]{MySQL Table is Full} -\addcontentsline{toc}{subsection}{MySQL Table is Full} If you are running into the error {\bf The table 'File' is full ...}, @@ -225,10 +220,9 @@ The row and pointer size changes should already be the default on MySQL version 5.x, so making these changes should only be necessary on MySQL 4.x depending on the size of your catalog database. -\subsection*{MySQL Server Has Gone Away} +\section{MySQL Server Has Gone Away} \index[general]{Database!MySQL Server Has Gone Away} \index[general]{MySQL Server Has Gone Away} -\addcontentsline{toc}{subsection}{MySQL Server Has Gone Away} If you are having problems with the MySQL server disconnecting or with messages saying that your MySQL server has gone away, then please read the MySQL documentation, which can be found at: @@ -238,10 +232,9 @@ the MySQL documentation, which can be found at: \label{RepairingPSQL} -\subsection*{Repairing Your PostgreSQL Database} +\section{Repairing Your PostgreSQL Database} \index[general]{Database!Repairing Your PostgreSQL } \index[general]{Repairing Your PostgreSQL Database } -\addcontentsline{toc}{subsection}{Repairing Your PostgreSQL Database} The same considerations apply that are indicated above for MySQL. That is, consult the PostgreSQL documents for how to repair the database, and also @@ -249,10 +242,9 @@ consider using Bacula's dbcheck program if the conditions are reasonable for using (see above). \label{DatabasePerformance} -\subsection*{Database Performance Issues} +\section{Database Performance Issues} \index[general]{Database Performance Issues} \index[general]{Performance!Database} -\addcontentsline{toc}{subsection}{Database Performance Issues} There are a considerable number of ways each of the databases can be tuned to improve the performance. Going from an untuned database to one @@ -291,6 +283,7 @@ of the PostgreSQL engine: \elink{ http://www.postgresql.org/docs/faqs.FAQ.html\#3.3} {http://www.postgresql.org/docs/faqs.FAQ.html\#3.3}. +% TODO: verify above is correct. is this okay for book? Also for PostgreSQL, look at what "effective\_cache\_size". For a 2GB memory machine, you probably want to set it at 131072, but don't set it too high. @@ -300,10 +293,9 @@ sure your checkpoint\_segments is set to at least 8. -\subsection*{Performance Issues Indexes} +\section{Performance Issues Indexes} \index[general]{Database Performance Issues Indexes} \index[general]{Performance!Database} -\addcontentsline{toc}{subsection}{Database Performance Issues Indexes} One of the most important considerations for improving performance on the Bacula database is to ensure that it has all the appropriate indexes. Several users have reported finding that their database did not have @@ -316,7 +308,7 @@ made because it is the unique key used to access the table. The other two are the JobId index and the (Filename, PathId) index. If these Indexes are not present, your performance may suffer a lot. -\subsubsection*{PostgreSQL Indexes} +\subsection{PostgreSQL Indexes} On PostgreSQL, you can check to see if you have the proper indexes using the following commands: @@ -338,7 +330,7 @@ CREATE INDEX file_fp_idx on file (filenameid, pathid); \end{verbatim} \normalsize -\subsubsection*{MySQL Indexes} +\subsection{MySQL Indexes} On MySQL, you can check if you have the proper indexes by: \footnotesize @@ -390,7 +382,7 @@ CREATE INDEX Name on Filename (Name(255)); \normalsize -\subsubsection*{SQLite Indexes} +\subsection{SQLite Indexes} On SQLite, you can check if you have the proper indexes by: \footnotesize @@ -414,10 +406,9 @@ CREATE INDEX file_jfp_idx on File (Job, FilenameId, PathId); \label{CompactingPostgres} -\subsection*{Compacting Your PostgreSQL Database} +\section{Compacting Your PostgreSQL Database} \index[general]{Database!Compacting Your PostgreSQL } \index[general]{Compacting Your PostgreSQL Database } -\addcontentsline{toc}{subsection}{Compacting Your PostgreSQL Database} Over time, as noted above, your database will tend to grow. I've noticed that even though Bacula regularly prunes files, PostgreSQL has a {\bf VACUUM} @@ -459,10 +450,9 @@ this subject at \elink{http://www.postgresql.org/docs/8.1/interactive/maintenance.html} {http://www.postgresql.org/docs/8.1/interactive/maintenance.html}. -\subsection*{Compacting Your SQLite Database} +\section{Compacting Your SQLite Database} \index[general]{Compacting Your SQLite Database } \index[general]{Database!Compacting Your SQLite } -\addcontentsline{toc}{subsection}{Compacting Your SQLite Database} First please read the previous section that explains why it is necessary to compress a database. SQLite version 2.8.4 and greater have the {\bf Vacuum} @@ -493,10 +483,9 @@ Director's configuration file. Note, in the case of SQLite, it is necessary to completely delete (rm) the old database before creating a new compressed version. -\subsection*{Migrating from SQLite to MySQL} +\section{Migrating from SQLite to MySQL} \index[general]{MySQL!Migrating from SQLite to } \index[general]{Migrating from SQLite to MySQL } -\addcontentsline{toc}{subsection}{Migrating from SQLite to MySQL} You may begin using Bacula with SQLite then later find that you want to switch to MySQL for any of a number of reasons: SQLite tends to use more disk than @@ -508,10 +497,9 @@ prior to putting it into MySQL. This is, however, not a simple process. \label{BackingUpBacula} -\subsection*{Backing Up Your Bacula Database} +\section{Backing Up Your Bacula Database} \index[general]{Backing Up Your Bacula Database } \index[general]{Database!Backing Up Your Bacula } -\addcontentsline{toc}{subsection}{Backing Up Your Bacula Database} If ever the machine on which your Bacula database crashes, and you need to restore from backup tapes, one of your first priorities will probably be to @@ -586,10 +574,9 @@ you do not have a bootstrap file, it is still possible to recover your database backup, but it will be more work and take longer. \label{BackingUPOtherDBs} -\subsection*{Backing Up Third Party Databases} +\section{Backing Up Third Party Databases} \index[general]{Backing Up Third Party Databases } \index[general]{Databases!Backing Up Third Party } -\addcontentsline{toc}{subsection}{Backing Up Third Party Databases} If you are running a database in production mode on your machine, Bacula will happily backup the files, but if the database is in use while Bacula is @@ -608,10 +595,9 @@ links to scripts that show you how to shutdown and backup most major databases. \label{Size} -\subsection*{Database Size} +\section{Database Size} \index[general]{Size!Database } \index[general]{Database Size } -\addcontentsline{toc}{subsection}{Database Size} As mentioned above, if you do not do automatic pruning, your Catalog will grow each time you run a Job. Normally, you should decide how long you want File diff --git a/docs/manual/configure.tex b/docs/manual/configure.tex index 7afd6eef..5b0eceb4 100644 --- a/docs/manual/configure.tex +++ b/docs/manual/configure.tex @@ -1,11 +1,10 @@ %% %% -\section*{Customizing the Configuration Files} +\chapter{Customizing the Configuration Files} \label{_ChapterStart16} \index[general]{Files!Customizing the Configuration } \index[general]{Customizing the Configuration Files } -\addcontentsline{toc}{section}{Customizing the Configuration Files} When each of the Bacula programs starts, it reads a configuration file specified on the command line or the default {\bf bacula-dir.conf}, {\bf @@ -33,10 +32,9 @@ your system. An overall view of the resources can be seen in the following: (thanks to Aristides Maniatis for the above graphic) \label{ResFormat} -\subsection*{Resource Directive Format} +\section{Resource Directive Format} \index[general]{Resource Directive Format } \index[general]{Format!Resource Directive } -\addcontentsline{toc}{subsection}{Resource Directive Format} Although, you won't need to know the details of all the directives a basic knowledge of Bacula resource directives is essential. Each directive contained @@ -68,9 +66,8 @@ quotes. Otherwise quotes are not generally necessary because once defined, quoted strings and unquoted strings are all equal. \label{Comments} -\subsubsection*{Comments} +\subsection{Comments} \index[general]{Comments} -\addcontentsline{toc}{subsubsection}{Comments} When reading the configuration file, blank lines are ignored and everything after a hash sign (\#) until the end of the line is taken to be a comment. A @@ -80,10 +77,9 @@ a semicolon is not necessary to terminate it, so generally in the examples in this manual, you will not see many semicolons. \label{Case1} -\subsubsection*{Upper and Lower Case and Spaces} +\subsection{Upper and Lower Case and Spaces} \index[general]{Spaces!Upper/Lower Case} \index[general]{Upper and Lower Case and Spaces} -\addcontentsline{toc}{subsubsection}{Upper and Lower Case and Spaces} Case (upper/lower) and spaces are totally ignored in the resource directive keywords (the part before the equal sign). @@ -108,12 +104,11 @@ letters), numbers, and a few special characters (space, underscore, ...). All other characters and punctuation are invalid. \label{Includes} -\subsubsection*{Including other Configuration Files} +\subsection{Including other Configuration Files} \index[general]{Including other Configuration Files } \index[general]{Files!Including other Configuration } \index[general]{Using @ to include other files} \index[general]{@{\bf filename}} -\addcontentsline{toc}{subsubsection}{Including other Configuration Files} If you wish to break your configuration file into smaller pieces, you can do so by including other files using the syntax @{\bf filename} where {\bf @@ -121,10 +116,9 @@ filename} is the full path and filename of another file. The @filename specification can be given anywhere a primitive token would appear. \label{DataTypes} -\subsubsection*{Recognized Primitive Data Types} +\subsection{Recognized Primitive Data Types} \index[general]{Types!Recognized Primitive Data } \index[general]{Recognized Primitive Data Types } -\addcontentsline{toc}{subsubsection}{Recognized Primitive Data Types} When parsing the resource directives, Bacula classifies the data according to the types listed below. The first time you read this, it may appear a bit @@ -280,10 +274,9 @@ are valid date specifications. \end{description} \label{ResTypes} -\subsection*{Resource Types} +\section{Resource Types} \index[general]{Types!Resource } \index[general]{Resource Types } -\addcontentsline{toc}{subsection}{Resource Types} The following table lists all current Bacula resource types. It shows what resources must be defined for each service (daemon). The default configuration @@ -326,12 +319,11 @@ you need not worry about creating all these kinds of resources from scratch. \end{longtable} -\subsection*{Names, Passwords and Authorization} +\section{Names, Passwords and Authorization} \label{Names} \index[general]{Authorization!Names Passwords and } \index[general]{Names, Passwords and Authorization } \index[general]{Passwords} -\addcontentsline{toc}{subsection}{Names, Passwords and Authorization} In order for one daemon to contact another daemon, it must authorize itself with a password. In most cases, the password corresponds to a particular name, @@ -362,10 +354,9 @@ File daemon to authorize with the Storage daemon is a temporary password unique to each Job created by the daemons and is not specified in any .conf file. -\subsection*{Detailed Information for each Daemon} +\section{Detailed Information for each Daemon} \index[general]{Detailed Information for each Daemon } \index[general]{Daemon!Detailed Information for each } -\addcontentsline{toc}{subsection}{Detailed Information for each Daemon} The details of each Resource and the directives permitted therein are described in the following chapters. diff --git a/docs/manual/console.tex b/docs/manual/console.tex index f74b3c23..c6059140 100644 --- a/docs/manual/console.tex +++ b/docs/manual/console.tex @@ -1,17 +1,15 @@ %% %% -\section*{Bacula Console} +\chapter{Bacula Console} \label{_ConsoleChapter} \index[general]{Console!Bacula} \index[general]{Bacula Console} \index[console]{Console!Bacula} \index[console]{Bacula Console} -\addcontentsline{toc}{section}{Bacula Console} -\subsection*{General} +\section{General} \index[general]{General} -\addcontentsline{toc}{subsection}{General} The {\bf Bacula Console} (sometimes called the User Agent) is a program that allows the user or the System Administrator, to interact with the Bacula @@ -37,12 +35,11 @@ for Bacula to be able to write on more than one tape, because when Bacula requests a new tape, it waits until the user, via the Console program, indicates that the new tape is mounted. -\subsection*{Console Configuration} +\section{Console Configuration} \index[general]{Console Configuration} \index[general]{Configuration!Console} \index[console]{Console Configuration} \index[console]{Configuration!Console} -\addcontentsline{toc}{subsection}{Console Configuration} When the Console starts, it reads a standard Bacula configuration file named {\bf bconsole.conf} or {\bf gnome-console.conf} in the case of the GNOME @@ -53,12 +50,11 @@ information on configuration of the Console program, please see the \ilink{Console Configuration File}{_ChapterStart36} Chapter of this document. -\subsection*{Running the Console Program} +\section{Running the Console Program} \index[general]{Running the Console Program} \index[general]{Program!Running the Console} \index[console]{Running the Console Program} \index[console]{Program!Running the Console} -\addcontentsline{toc}{subsection}{Running the Console Program} The console program can be run with the following options: \footnotesize @@ -114,12 +110,11 @@ show pools will display all the Pool resource records. -\subsection*{Stopping the Console Program} +\section{Stopping the Console Program} \index[general]{Program!Stopping the Console} \index[general]{Stopping the Console Program} \index[console]{Program!Stopping the Console} \index[console]{Stopping the Console Program} -\addcontentsline{toc}{subsection}{Stopping the Console Program} Normally, you simply enter {\bf quit} or {\bf exit} and the Console program will terminate. However, it waits until the Director acknowledges the command. @@ -137,12 +132,11 @@ Volume name, the period will be taken to be the Volume name. In that case, you will most likely be able to cancel at the next prompt. \label{keywords} -\subsection*{Alphabetic List of Console Keywords} +\section{Alphabetic List of Console Keywords} \index[general]{Keywords!Alphabetic List of Console} \index[general]{Alphabetic List of Console Keywords} \index[console]{Keywords!Alphabetic List of Console} \index[console]{Alphabetic List of Console Keywords} -\addcontentsline{toc}{subsection}{Alphabetic List of Console Keywords} Unless otherwise specified, each of the following keywords takes an argument, which is specified after the keyword following an equal sign. For example: @@ -272,12 +266,11 @@ order ... \end{description} \label{list} -\subsection*{Alphabetic List of Console Commands} +\section{Alphabetic List of Console Commands} \index[general]{Commands!Alphabetic List of Console} \index[general]{Alphabetic List of Console Commands} \index[console]{Commands!Alphabetic List of Console} \index[console]{Alphabetic List of Console Commands} -\addcontentsline{toc}{subsection}{Alphabetic List of Console Commands} The following commands are currently implemented: @@ -1039,6 +1032,7 @@ status [all | dir=\lt{}dir-name\gt{} | director | hours, and a listing of the last ten terminated jobs with their statuses. The scheduled jobs summary will include the Volume name to be used. You should be aware of two things: 1. to obtain the volume name, the code +% TODO: use bullets here or be consistent with numbering items goes through the same code that will be used when the job runs, which means that it may prune or recycle a Volume; 2. The Volume listed is only a best guess. The Volume actually used may be different because of @@ -1330,10 +1324,9 @@ Choose a query (1-9): \label{dotcommands} -\subsection*{Special dot Commands} +\section{Special dot Commands} \index[general]{Commands!Special dot} \index[general]{Special dot Commands} -\addcontentsline{toc}{subsection}{Special dot Commands} There is a list of commands that are prefixed with a period (.). These commands are intended to be used either by batch programs or graphical user @@ -1366,10 +1359,9 @@ is the list of dot commands: \label{atcommands} -\subsection*{Special At (@) Commands} +\section{Special At (@) Commands} \index[general]{Commands!Special At @} \index[general]{Special At (@) Commands} -\addcontentsline{toc}{subsection}{Special At (@) Commands} Normally, all commands entered to the Console program are immediately forwarded to the Director, which may be on another machine, to be executed. @@ -1433,10 +1425,9 @@ regression test might be: \label{scripting} -\subsection*{Running the Console Program from a Shell Script} +\section{Running the Console from a Shell Script} \index[general]{Script!Running the Console Program from a Shell} \index[general]{Running the Console Program from a Shell Script} -\addcontentsline{toc}{subsection}{Running the Console Program from a Shell Script} You can automate many Console tasks by running the console program from a @@ -1508,10 +1499,9 @@ restorestat=$? \end{verbatim} \normalsize -\subsection*{Adding Volumes to a Pool} +\section{Adding Volumes to a Pool} \index[general]{Adding Volumes to a Pool} \index[general]{Pool!Adding Volumes to a} -\addcontentsline{toc}{subsection}{Adding Volumes to a Pool} If you have used the {\bf label} command to label a Volume, it will be automatically added to the Pool, and you will not need to add any media to the diff --git a/docs/manual/consoleconf.tex b/docs/manual/consoleconf.tex index baf97d3e..d510927f 100644 --- a/docs/manual/consoleconf.tex +++ b/docs/manual/consoleconf.tex @@ -1,15 +1,13 @@ %% %% -\section*{Console Configuration} +\chapter{Console Configuration} \label{_ChapterStart36} \index[general]{Configuration!Console} \index[general]{Console Configuration} -\addcontentsline{toc}{section}{Console Configuration} -\subsection*{General} +\section{General} \index[general]{General} -\addcontentsline{toc}{subsection}{General} The Console configuration file is the simplest of all the configuration files, and in general, you should not need to change it except for the password. It @@ -22,11 +20,10 @@ the \ilink{Configuration}{_ChapterStart16} chapter of this manual. The following Console Resource definition must be defined: -\subsection*{The Director Resource} +\section{The Director Resource} \label{DirectorResource3} \index[general]{Director Resource} \index[general]{Resource!Director} -\addcontentsline{toc}{subsection}{Director Resource} The Director resource defines the attributes of the Director running on the network. You may have multiple Director resource specifications in a single @@ -78,10 +75,9 @@ Director { \end{verbatim} \normalsize -\subsection*{The ConsoleFont Resource} +\section{The ConsoleFont Resource} \index[general]{Resource!ConsoleFont} \index[general]{ConsoleFont Resource} -\addcontentsline{toc}{subsection}{ConsoleFont Resource} The ConsoleFont resource is available only in the GNOME version of the console. It permits you to define the font that you want used to display in @@ -123,11 +119,10 @@ ConsoleFont { \end{verbatim} \normalsize -\subsection*{The Console Resource} +\section{The Console Resource} \label{ConsoleResource} \index[general]{Console Resource} \index[general]{Resource!Console} -\addcontentsline{toc}{subsection}{Console Resource} As of Bacula version 1.33 and higher, there are three different kinds of consoles, which the administrator or user can use to interact with the @@ -322,19 +317,17 @@ Console { -\subsection*{Console Commands} +\section{Console Commands} \index[general]{Console Commands} \index[general]{Commands!Console} -\addcontentsline{toc}{subsection}{Console Commands} For more details on running the console and its commands, please see the \ilink{Bacula Console}{_ConsoleChapter} chapter of this manual. -\subsection*{Sample Console Configuration File} +\section{Sample Console Configuration File} \label{SampleConfiguration2} \index[general]{File!Sample Console Configuration} \index[general]{Sample Console Configuration File} -\addcontentsline{toc}{subsection}{Sample Console Configuration File} An example Console configuration file might be the following: diff --git a/docs/manual/critical.tex b/docs/manual/critical.tex index 8b8131b8..d371b13c 100644 --- a/docs/manual/critical.tex +++ b/docs/manual/critical.tex @@ -1,16 +1,13 @@ %% %% -\section*{Critical Items to Implement Before Going Production} +\chapter{Critical Items to Implement Before Production} \label{_ChapterStart32} -\index[general]{Production!Critical Items to Implement Before Going } -\index[general]{Critical Items to Implement Before Going Production } -\addcontentsline{toc}{section}{Critical Items to Implement Before Going -Production} +\index[general]{Production!Critical Items to Implement Before } +\index[general]{Critical Items to Implement Before Production } -\subsection*{General} +\section{General} \index[general]{General } -\addcontentsline{toc}{subsection}{General} We recommend you take your time before implementing a production a Bacula backup system since Bacula is a rather complex program, and if you make a @@ -24,10 +21,9 @@ find that we have left out an important point, please inform us, so that we can document it to the benefit of everyone. \label{Critical} -\subsection*{Critical Items} +\section{Critical Items} \index[general]{Critical Items } \index[general]{Items!Critical } -\addcontentsline{toc}{subsection}{Critical Items} The following assumes that you have installed Bacula, you more or less understand it, you have at least worked through the tutorial or have @@ -88,10 +84,9 @@ production, use the checklist anyway). will also vary. \end{itemize} -\subsection*{Recommended Items} +\section{Recommended Items} \index[general]{Items!Recommended } \index[general]{Recommended Items } -\addcontentsline{toc}{subsection}{Recommended Items} Although these items may not be critical, they are recommended and will help you avoid problems. diff --git a/docs/manual/dataencryption.tex b/docs/manual/dataencryption.tex index a489a4fe..d9a294af 100644 --- a/docs/manual/dataencryption.tex +++ b/docs/manual/dataencryption.tex @@ -1,10 +1,9 @@ -\section*{Bacula -- Data Encryption} +\chapter{Data Encryption} \label{DataEncryption} \index[general]{Data Encryption} \index[general]{Encryption!Data} \index[general]{Data Encryption} -\addcontentsline{toc}{section}{Data Encryption} Bacula permits file data encryption and signing within the File Daemon (or Client) prior to sending data to the Storage Daemon. Upon restoration, @@ -64,9 +63,8 @@ daemon, any master keys). \end{enumerate} -\subsection*{Building Bacula with Encryption Support} +\section{Building Bacula with Encryption Support} \index[general]{Building Bacula with Encryption Support} -\addcontentsline{toc}{subsection}{Building Bacula with Encryption Support} The configuration option for enabling OpenSSL encryption support has not changed since Bacula 1.38. To build Bacula with encryption support, you will need @@ -76,9 +74,8 @@ the OpenSSL libraries and headers installed. When configuring Bacula, use: ./configure --with-openssl ... \end{verbatim} -\subsection*{Encryption Technical Details} +\section{Encryption Technical Details} \index[general]{Encryption Technical Details} -\addcontentsline{toc}{subsection}{Encryption Technical Details} The implementation uses 128bit AES-CBC, with RSA encrypted symmetric session keys. The RSA key is user supplied. @@ -114,9 +111,8 @@ directly was not possible, as at the time of coding a free software streaming DER decoder/encoder was not available. -\subsection*{Generating Private/Public Encryption Keypairs} +\section{Generating Private/Public Encryption Keys} \index[general]{Generating Private/Public Encryption Keypairs} -\addcontentsline{toc}{subsection}{Generating Private/Public Encryption Keypairs} Generate a Master Key Pair with: @@ -138,11 +134,10 @@ Generate a File Daemon Key Pair for each FD: \normalsize -\subsection*{Example Data Encryption Configuration} +\section{Example Data Encryption Configuration} \index[general]{Example!File Daemon Configuration File} \index[general]{Example!Data Encryption Configuration File} \index[general]{Example Data Encryption Configuration} -\addcontentsline{toc}{subsection}{Example Data Encryption Configuration} {\bf bacula-fd.conf} diff --git a/docs/manual/dirdconf.tex b/docs/manual/dirdconf.tex index 56ba4346..9e4e2e24 100644 --- a/docs/manual/dirdconf.tex +++ b/docs/manual/dirdconf.tex @@ -1,11 +1,10 @@ %% %% -\section*{Configuring the Director} +\chapter{Configuring the Director} \label{_ChapterStart40} \index[general]{Director!Configuring the} \index[general]{Configuring the Director} -\addcontentsline{toc}{section}{Configuring the Director} Of all the configuration files needed to run {\bf Bacula}, the Director's is the most complicated, and the one that you will need to modify the most often @@ -15,10 +14,9 @@ For a general discussion of configuration files and resources including the data types recognized by {\bf Bacula}. Please see the \ilink{Configuration}{_ChapterStart16} chapter of this manual. -\subsection*{Director Resource Types} +\section{Director Resource Types} \index[general]{Types!Director Resource} \index[general]{Director Resource Types} -\addcontentsline{toc}{subsection}{Director Resource Types} Director resource type may be one of the following: @@ -63,11 +61,10 @@ Messages. We present them here in the most logical order for defining them: information messages are to be sent or logged. \end{itemize} -\subsection*{The Director Resource} +\section{The Director Resource} \label{DirectorResource4} \index[general]{Director Resource} \index[general]{Resource!Director} -\addcontentsline{toc}{subsection}{Director Resource} The Director resource defines the attributes of the Directors running on the network. In the current implementation, there is only a single Director @@ -292,11 +289,10 @@ Director { \end{verbatim} \normalsize -\subsection*{The Job Resource} +\section{The Job Resource} \label{JobResource} \index[general]{Resource!Job} \index[general]{Job Resource} -\addcontentsline{toc}{subsection}{Job Resource} The Job resource defines a Job (Backup, Restore, ...) that Bacula must perform. Each Job resource definition contains the name of a Client and @@ -1511,11 +1507,10 @@ Job { \end{verbatim} \normalsize -\subsection*{The JobDefs Resource} +\section{The JobDefs Resource} \label{JobDefsResource} \index[general]{JobDefs Resource} \index[general]{Resource!JobDefs} -\addcontentsline{toc}{subsection}{JobDefs Resource} The JobDefs resource permits all the same directives that can appear in a Job resource. However, a JobDefs resource does not create a Job, rather it can be @@ -1524,11 +1519,10 @@ concisely define several nearly identical Jobs, each one referencing a JobDefs resource which contains the defaults. Only the changes from the defaults need to be mentioned in each Job. -\subsection*{The Schedule Resource} +\section{The Schedule Resource} \label{ScheduleResource} \index[general]{Resource!Schedule} \index[general]{Schedule Resource} -\addcontentsline{toc}{subsection}{Schedule Resource} The Schedule resource provides a means of automatically scheduling a Job as well as the ability to override the default Level, Pool, Storage and Messages @@ -1789,10 +1783,9 @@ Schedule { \end{verbatim} \normalsize -\subsection*{Technical Notes on Schedules} +\section{Technical Notes on Schedules} \index[general]{Schedules!Technical Notes on} \index[general]{Technical Notes on Schedules} -\addcontentsline{toc}{subsection}{Technical Notes on Schedules} Internally Bacula keeps a schedule as a bit mask. There are six masks and a minute field to each schedule. The masks are hour, day of the month (mday), @@ -1814,11 +1807,10 @@ bit mask is zero based, and Sunday is the first day of the week (bit zero). \input{fileset} -\subsection*{The Client Resource} +\section{The Client Resource} \label{ClientResource2} \index[general]{Resource!Client} \index[general]{Client Resource} -\addcontentsline{toc}{subsection}{Client Resource} The Client resource defines the attributes of the Clients that are served by this Director; that is the machines that are to be backed up. You will need @@ -1964,11 +1956,10 @@ Client { \end{verbatim} \normalsize -\subsection*{The Storage Resource} +\section{The Storage Resource} \label{StorageResource2} \index[general]{Resource!Storage} \index[general]{Storage Resource} -\addcontentsline{toc}{subsection}{Storage Resource} The Storage resource defines which Storage daemons are available for use by the Director. @@ -2151,11 +2142,10 @@ Storage { \end{verbatim} \normalsize -\subsection*{The Pool Resource} +\section{The Pool Resource} \label{PoolResource} \index[general]{Resource!Pool} \index[general]{Pool Resource} -\addcontentsline{toc}{subsection}{Pool Resource} The Pool resource defines the set of storage Volumes (tapes or files) to be used by Bacula to write the data. By configuring different Pools, you can @@ -2648,8 +2638,7 @@ Pool { \end{verbatim} \normalsize -\subsubsection*{The Scratch Pool} -\addcontentsline{toc}{subsection}{Scratch Pool} +\subsection{The Scratch Pool} \index[general]{Scratch Pool} In general, you can give your Pools any name you wish, but there is one important restriction: the Pool named {\bf Scratch}, if it exists behaves @@ -2659,11 +2648,10 @@ it finds an available Volume, it will move it out of the Scratch pool into the Pool currently being used by the job. -\subsection*{The Catalog Resource} +\section{The Catalog Resource} \label{CatalogResource} \index[general]{Resource!Catalog} \index[general]{Catalog Resource} -\addcontentsline{toc}{subsection}{Catalog Resource} The Catalog Resource defines what catalog to use for the current job. Currently, Bacula can only handle a single database server (SQLite, MySQL, @@ -2790,21 +2778,19 @@ Catalog \end{verbatim} \normalsize -\subsection*{The Messages Resource} +\section{The Messages Resource} \label{MessagesResource2} \index[general]{Resource!Messages} \index[general]{Messages Resource} -\addcontentsline{toc}{subsection}{Messages Resource} For the details of the Messages Resource, please see the \ilink{Messages Resource Chapter}{_ChapterStart15} of this manual. -\subsection*{The Console Resource} +\section{The Console Resource} \label{ConsoleResource1} \index[general]{Console Resource} \index[general]{Resource!Console} -\addcontentsline{toc}{subsection}{Console Resource} As of Bacula version 1.33 and higher, there are three different kinds of consoles, which the administrator or user can use to interact with the @@ -2957,11 +2943,10 @@ the \ilink{Console Configuration}{_ChapterStart36} chapter of this manual. -\subsection*{The Counter Resource} +\section{The Counter Resource} \label{CounterResource} \index[general]{Resource!Counter} \index[general]{Counter Resource} -\addcontentsline{toc}{subsection}{Counter Resource} The Counter Resource defines a counter variable that can be accessed by variable expansion used for creating Volume labels with the {\bf LabelFormat} @@ -3013,11 +2998,10 @@ the specified catalog. If this directive is not present, the counter will be redefined each time that Bacula is started. \end{description} -\subsection*{Example Director Configuration File} +\section{Example Director Configuration File} \label{SampleDirectorConfiguration} \index[general]{File!Example Director Configuration} \index[general]{Example Director Configuration File} -\addcontentsline{toc}{subsection}{Example Director Configuration File} An example Director configuration file might be the following: diff --git a/docs/manual/disk.tex b/docs/manual/disk.tex index c9ea4975..ee2d7506 100644 --- a/docs/manual/disk.tex +++ b/docs/manual/disk.tex @@ -1,12 +1,11 @@ %% %% -\section*{Basic Volume Management} +\chapter{Basic Volume Management} \label{_ChapterStart39} \index[general]{Basic Volume Management} \index[general]{Management!Basic Volume} \index[general]{Disk Volumes} -\addcontentsline{toc}{section}{Basic Volume Management} This chapter presents most all the features needed to do Volume management. Most of the concepts apply equally well to both tape and disk Volumes. @@ -21,10 +20,9 @@ give you some of the options that are available to you so that you can manage either disk or tape volumes. \label{Concepts} -\subsection*{Key Concepts and Resource Records} +\section{Key Concepts and Resource Records} \index[general]{Key Concepts and Resource Records } \index[general]{Records!Key Concepts and Resource } -\addcontentsline{toc}{subsection}{Key Concepts and Resource Records} Getting Bacula to write to disk rather than tape in the simplest case is rather easy. In the Storage daemon's configuration file, you simply define an @@ -81,10 +79,9 @@ of other details. An example of such a configuration is given at the end of this chapter under \ilink{Concurrent Disk Jobs}{ConcurrentDiskJobs}. -\subsubsection*{Pool Options to Limit the Volume Usage} +\subsection{Pool Options to Limit the Volume Usage} \index[general]{Usage!Pool Options to Limit the Volume } \index[general]{Pool Options to Limit the Volume Usage } -\addcontentsline{toc}{subsubsection}{Pool Options to Limit the Volume Usage} Some of the options you have, all of which are specified in the Pool record, are: @@ -154,10 +151,9 @@ because Bacula will want a new Volume and no one will be present to mount it, so no weekend backups will be done until Monday morning. \label{AutomaticLabeling} -\subsubsection*{Automatic Volume Labeling} +\subsection{Automatic Volume Labeling} \index[general]{Automatic Volume Labeling } \index[general]{Labeling!Automatic Volume } -\addcontentsline{toc}{subsubsection}{Automatic Volume Labeling} Use of the above records brings up another problem -- that of labeling your Volumes. For automated disk backup, you can either manually label each of your @@ -228,10 +224,9 @@ You can find more details of the {\bf Label Format} Pool record in records. \label{Recycling1} -\subsubsection*{Restricting the Number of Volumes and Recycling} +\subsection{Restricting the Number of Volumes and Recycling} \index[general]{Recycling!Restricting the Number of Volumes and } \index[general]{Restricting the Number of Volumes and Recycling } -\addcontentsline{toc}{subsubsection}{Restricting the Number of Volumes and Recycling} Automatic labeling discussed above brings up the problem of Volume management. @@ -302,9 +297,8 @@ Current Volume = yes}. In this case, when Bacula needs a new Volume, it will prune the specified volume. \label{ConcurrentDiskJobs} -\subsection*{Concurrent Disk Jobs} +\section{Concurrent Disk Jobs} \index[general]{Concurrent Disk Jobs} -\addcontentsline{toc}{subsection}{Concurrent Disk Jobs} Above, we discussed how you could have a single device named {\bf FileBackup} that writes to volumes in {\bf /home/bacula/backups}. You can, in fact, run multiple concurrent jobs using the @@ -344,9 +338,8 @@ using its own Pool and storing their Volumes in different directories. \label{Example2} -\subsection*{An Example} +\section{An Example} \index[general]{Example } -\addcontentsline{toc}{subsection}{Example} The following example is not very practical, but can be used to demonstrate the proof of concept in a relatively short period of time. The example @@ -517,10 +510,9 @@ With a little bit of work, you can change the above example into a weekly or monthly cycle (take care about the amount of archive disk space used). \label{MultipleDisks} -\subsection*{Backing up to Multiple Disks} +\section{Backing up to Multiple Disks} \index[general]{Disks!Backing up to Multiple } \index[general]{Backing up to Multiple Disks } -\addcontentsline{toc}{subsection}{Backing up to Multiple Disks} Bacula can, of course, use multiple disks, but in general, each disk must be a separate Device specification in the Storage daemon's conf file, and you must @@ -622,10 +614,9 @@ Media Types will allow Bacula to quickly choose the correct Storage resource in the Director when doing a restore. \label{MultipleClients} -\subsection*{Considerations for Multiple Clients} +\section{Considerations for Multiple Clients} \index[general]{Clients!Considerations for Multiple } \index[general]{Multiple Clients} -\addcontentsline{toc}{subsection}{Considerations for Multiple Clients} If we take the above example and add a second Client, here are a few considerations: diff --git a/docs/manual/dvd.tex b/docs/manual/dvd.tex index 1b0266dd..7f3eb5b8 100644 --- a/docs/manual/dvd.tex +++ b/docs/manual/dvd.tex @@ -1,13 +1,12 @@ %% %% -\section*{DVD Volumes} +\chapter{DVD Volumes} \label{_DVDChapterStart} \index[general]{DVD Volumes} \index[general]{Writing DVDs} \index[general]{DVD Writing} \index[general]{Volumes!DVD} -\addcontentsline{toc}{section}{DVD Volumes} Bacula allows you to specify that you want to write to DVD. However, this feature is implemented only in version 1.37 or later. @@ -42,10 +41,9 @@ The remainder of this chapter explains the various directives that you can use to control the DVD writing. \label{DVDdirectives} -\subsection*{DVD Specific SD Directives} +\section{DVD Specific SD Directives} \index[general]{Directives!DVD} \index[general]{DVD Specific SD Directives } -\addcontentsline{toc}{subsection}{DVD Specific SD Directives} The following directives are added to the Storage daemon's Device resource. @@ -164,10 +162,9 @@ be a name such as {\bf /dev/cdrom} or {\bf /media/cdrecorder} or {\bf /dev/dvd} depending on your system. It will not be a name such as {\bf /mnt/cdrom}. -\subsection*{Edit Codes for DVD Directives} +\section{Edit Codes for DVD Directives} \index[general]{Directives!DVD Edit Codes} \index[general]{Edit Codes for DVD Directives } -\addcontentsline{toc}{subsection}{Edit Codes for DVD Directives} Before submitting the {\bf Mount Command}, {\bf Unmount Command}, {\bf Write Part Command}, or {\bf Free Space Command} directives @@ -187,10 +184,9 @@ following characters: -\subsection*{DVD Specific Director Directives} +\section{DVD Specific Director Directives} \index[general]{Directives!DVD} \index[general]{DVD Specific Director Directives } -\addcontentsline{toc}{subsection}{DVD Specific Director Directives} The following directives are added to the Director's Job resource. @@ -219,10 +215,9 @@ The following directives are added to the Director's Job resource. \label{DVDpoints} -\subsection*{Other Points} +\section{Other Points} \index[general]{Points!Other } \index[general]{Other Points } -\addcontentsline{toc}{subsection}{Other Points} \begin{itemize} \item Please be sure that you have any automatic DVD mounting diff --git a/docs/manual/faq.tex b/docs/manual/faq.tex index 603de740..1bfc1142 100644 --- a/docs/manual/faq.tex +++ b/docs/manual/faq.tex @@ -1,11 +1,12 @@ %% %% +% TODO: maybe merge all this FAQ in with the appropriate section? +% TODO: and use detailed indexing to help reader -\section*{Bacula Frequently Asked Questions} +\chapter{Bacula Frequently Asked Questions} \label{_ChapterStart48} \index[general]{Questions!Bacula Frequently Asked } \index[general]{Bacula Frequently Asked Questions } -\addcontentsline{toc}{section}{Bacula Frequently Asked Questions} These are questions that have been submitted over time by the Bacula users. The following @@ -23,12 +24,12 @@ of known bugs and solutions. \begin{description} \label{what} -\subsection*{What is Bacula?} +\section{What is Bacula?} \item [What is {\bf Bacula}? ] \index[general]{What is Bacula? } {\bf Bacula} is a network backup and restore program. -\subsection*{Does Bacula support Windows?} +\section{Does Bacula support Windows?} \item [Does Bacula support Windows?] \index[general]{Does Bacula support Windows? } Yes, Bacula compiles and runs on Windows machines (Win98, WinMe, WinXP, @@ -39,7 +40,7 @@ of known bugs and solutions. \label{lang} -\subsection*{What language is Bacula written in?} +\section{What language is Bacula written in?} \item [What language is Bacula written in?] \index[general]{What language is Bacula written in? } It is written in C++, but it is mostly C code using only a limited set of @@ -49,7 +50,7 @@ of known bugs and solutions. adding a larger subset of C++. \label{run} -\subsection*{On what machines does Bacula run?} +\section{On what machines does Bacula run?} \item [On what machines does Bacula run? ] \index[general]{On what machines does Bacula run? } {\bf Bacula} builds and executes on Red Hat Linux (versions RH7.1-RHEL @@ -62,7 +63,7 @@ of known bugs and solutions. \label{stable} -\subsection*{Is Bacula Stable?} +\section{Is Bacula Stable?} \item [Is Bacula Stable? ] \index[general]{Is Bacula Stable? } Yes, it is remarkably stable, but remember, there are still a lot of @@ -98,7 +99,7 @@ of known bugs and solutions. \end{enumerate} \label{AuthorizationErrors} -\subsection*{I'm Getting Authorization Errors. What is Going On? } +\section{I'm Getting Authorization Errors. What is Going On? } \item [I'm Getting Authorization Errors. What is Going On? ] \index[general]{Authorization Errors} \index[general]{Concurrent Jobs} @@ -159,7 +160,7 @@ of known bugs and solutions. file that is not permitting access to the site trying to connect. \label{AccessProblems} -\subsection*{Bacula Runs Fine but Cannot Access a Client on a Different Machine. +\section{Bacula Runs Fine but Cannot Access a Client on a Different Machine. Why? } \item [Bacula Runs Fine but Cannot Access a Client on a Different Machine. Why? ] @@ -192,7 +193,7 @@ of known bugs and solutions. \end{itemize} \label{startover} -\subsection*{My Catalog is Full of Test Runs, How Can I Start Over?} +\section{My Catalog is Full of Test Runs, How Can I Start Over?} \item [My Catalog is Full of Test Runs, How Can I Start Over? ] \index[general]{My Catalog is Full of Test Runs, How Can I Start Over? } If you are using MySQL do the following: @@ -230,7 +231,7 @@ mt -f /dev/st0 weof where you need to adjust the device name for your system. \label{restorehang} -\subsection*{I Run a Restore Job and Bacula Hangs. What do I do?} +\section{I Run a Restore Job and Bacula Hangs. What do I do?} \item [I Run a Restore Job and Bacula Hangs. What do I do?] \index[general]{I Run a Restore Job and Bacula Hangs. What do I do? } On Bacula version 1.25 and prior, it expects you to have the correct @@ -244,7 +245,7 @@ where you need to adjust the device name for your system. doubt, do a second {\bf mount}, it won't cause any harm. \label{windowstart} -\subsection*{I Cannot Get My Windows Client to Start Automatically? } +\section{I Cannot Get My Windows Client to Start Automatically? } \item [I Cannot Get My Windows Client to Start Automatically? ] \index[general]{Windows Auto Start} You are probably having one of two problems: either the Client is dying @@ -256,7 +257,7 @@ where you need to adjust the device name for your system. instructions}{_ChapterStart7} in this manual. \label{windowsdie} -\subsection*{My Windows Client Immediately Dies When I Start It} +\section{My Windows Client Immediately Dies When I Start It} \item [My Windows Client Immediately Dies When I Start It] \index[general]{Windows Client Dies} The most common problem is either that the configuration file is not where @@ -300,7 +301,7 @@ Obviously you will want to change the filename to be appropriate for your system. \label{nobackup} -\subsection*{My backups are not working on my Windows +\section{My backups are not working on my Windows Client. What should I do?} \item [I didn't realize that the backups were not working on my Windows Client. What should I do? ] @@ -334,7 +335,7 @@ You should also be logging the Director's messages, please see the previous FAQ for how to do so. \label{sched} -\subsection*{All my Jobs are scheduled for the same time. Will this cause +\section{All my Jobs are scheduled for the same time. Will this cause problems?} \item [All my Jobs are scheduled for the same time. Will this cause problems? ] @@ -347,7 +348,7 @@ FAQ for how to do so. that you leave this set to {\bf 1} for the Director. \label{disk} -\subsection*{Can Bacula Backup My System To Files instead of Tape?} +\section{Can Bacula Backup My System To Files instead of Tape?} \item [Can Bacula Backup My System To Files instead of Tape? ] \index[general]{Backup to Disk} Yes, in principle, Bacula can backup to any storage medium as long as @@ -360,7 +361,7 @@ FAQ for how to do so. management. It is, however, still quite a good chapter to read. \label{bigfiles} -\subsection*{Can Bacula Backup and Restore Files Greater than 2 Gigabytes?} +\section{Can Bacula Backup and Restore Files Greater than 2 Gigabytes?} \item [Can Bacula Backup and Restore Files Greater than 2 Gigabytes in Size? ] \index[general]{Large file support} @@ -369,8 +370,8 @@ If your operating system permits it, and you are running Bacula version system supported by Bacula can handle files larger than 2 Gigabytes. \label{cancel} -\subsection*{I want to stop a job. Is - there a better way than {\bf ./bacula stop} to stop it?} +\section{I want to stop a job.} +%% Is there a better way than "./bacula stop" to stop it?} \item [I Started A Job then Decided I Really Did Not Want to Run It. Is there a better way than {\bf ./bacula stop} to stop it?] \index[general]{Cancelling jobs} @@ -382,8 +383,7 @@ system supported by Bacula can handle files larger than 2 Gigabytes. do a {\bf mount} command before it will be canceled. \label{trademark} -\subsection*{Why have You Trademarked the Name - Bacula\raisebox{.6ex}{{\footnotesize \textsuperscript{\textregistered}}}?} +\section{Why have You Trademarked the Name Bacula?} \item [Why have You Trademarked the Name Bacula\raisebox{.6ex}{{\footnotesize \textsuperscript{\textregistered}}}?] \index[general]{Bacula Trademark} @@ -393,7 +393,7 @@ Bacula, even in a derivative product as long as it remains totally compatible in all respects with the program defined here. \label{docversion} -\subsection*{Why is Your Online Document for Version 1.39 but the Released Version is 1.38?} +\section{Why is Your Online Document for Version 1.39 but the Released Version is 1.38?} \item [Why is Your Online Document for Version 1.39 of Bacula when the Currently Release Version is 1.38?] \index[general]{Multiple manuals} @@ -408,7 +408,7 @@ online versions of both the released manual and the current development manual. \label{sure} -\subsection*{Does Bacula really save and restore all files?} +\section{Does Bacula really save and restore all files?} \item [How Can I Be Sure that Bacula Really Saves and Restores All Files? ] \index[general]{Checking Restores} It is really quite simple, but took me a while to figure @@ -431,7 +431,7 @@ manual. of the same type. \label{upgrade} -\subsection*{I want an Incremental but Bacula runs it as a Full backup. Why?} +\section{I want an Incremental but Bacula runs it as a Full backup. Why?} \item [I did a Full backup last week, but now in running an Incremental, Bacula says it did not find a FULL backup, so it did a FULL backup. Why?] \index[general]{FULL backup not found} @@ -454,7 +454,7 @@ manual. or selecting a FileSet. For more on backup levels see below. \label{filenamelengths} -\subsection*{Do you really handle unlimited path lengths?} +\section{Do you really handle unlimited path lengths?} \item [How Can You Claim to Handle Unlimited Path and Filename Lengths when All Other Programs Have Fixed Limits?] \index[general]{Path and Filename Lengths} @@ -472,7 +472,7 @@ manual. restriction in later versions of Bacula. \label{unique} -\subsection*{What Is the Really Unique Feature of Bacula?} +\section{What Is the Really Unique Feature of Bacula?} \item [What Is the Really Unique Feature of Bacula?] \index[general]{Unique Feature of Bacula} Well, it is hard to come up with unique features when backup programs @@ -491,7 +491,7 @@ manual. implemented, this will enormously reduce tape usage. \label{sequence} -\subsection*{How can I force one job to run after another?} +\section{How can I force one job to run after another?} \item [If I Run Multiple Simultaneous Jobs, How Can I Force One Particular Job to Run After Another Job? ] \index[general]{Multiple Simultaneous Jobs} @@ -500,7 +500,7 @@ specify. Please see: \ilink{the Priority record}{Priority} in the Job resource. \label{nomail} -\subsection*{I Am Not Getting Email Notification, What Can I Do? } +\section{I Am Not Getting Email Notification, What Can I Do? } \item [I Am Not Getting Email Notification, What Can I Do? ] \index[general]{No Email Notification} The most common problem is that you have not specified a fully qualified @@ -515,7 +515,7 @@ specify. Please see: chapter}{bsmtp} of this manual. \label{periods} -\subsection*{My retention periods don't work} +\section{My retention periods don't work} \item [I Change Recycling, Retention Periods, or File Sizes in my Pool Resource and they Still Don't Work.] \index[general]{Recycling} @@ -536,7 +536,7 @@ specify. Please see: program. \label{CompressionNotWorking} -\subsection*{Why aren't my files compressed?} +\section{Why aren't my files compressed?} \item [I Have Configured Compression On, But None of My Files Are Compressed. Why?] \index[general]{Compression} @@ -589,7 +589,7 @@ There are several reasons why Bacula will request a new tape. \end{itemize} \label{LevelChanging} -\subsection*{Incremental backups are not working} +\section{Incremental backups are not working} \item [Bacula is Not Doing the Right Thing When I Request an Incremental Backup. Why?] \index[general]{Incremental backups} @@ -622,7 +622,7 @@ The above information can allow us to analyze what happened, without it, there is not much we can do. \label{WaitForever} -\subsection*{I am waiting forever for a backup of an offsite machine} +\section{I am waiting forever for a backup of an offsite machine} \item [I am Backing Up an Offsite Machine with an Unreliable Connection. The Director Waits Forever for the Client to Contact the SD. What Can I Do?] @@ -650,7 +650,7 @@ in the FileDaemon resource. \end{itemize} \label{sshHanging} -\subsection*{SSH hangs forever after starting Bacula} +\section{SSH hangs forever after starting Bacula} \item [When I ssh into a machine and start Bacula then attempt to exit, ssh hangs forever.] \index[general]{ssh hangs} @@ -670,7 +670,7 @@ in the FileDaemon resource. and likewise for the other daemons. \label{RetentionPeriods} -\subsection*{I'm confused by retention periods} +\section{I'm confused by retention periods} \item [I'm confused by the different Retention periods: File Retention, Job Retention, Volume Retention. Why are there so many?] \index[general]{Retention Periods} @@ -690,7 +690,7 @@ and likewise for the other daemons. year, just in case. \label{MaxVolumeSize} -\subsection*{MaxVolumeSize is ignored} +\section{MaxVolumeSize is ignored} \item [Why Does Bacula Ignore the MaxVolumeSize Set in my Pool?] \index[general]{MaxVolumeSize} The MaxVolumeSize that Bacula uses comes from the Media record, so most @@ -715,7 +715,7 @@ update Volume=xxx to change it. \label{ConnectionRefused} -\subsection*{I get a Connection refused when connecting to my Client} +\section{I get a Connection refused when connecting to my Client} \item [In connecting to my Client, I get "ERR:Connection Refused. Packet Size too big from File daemon:192.168.1.4:9102" Why?] \index[general]{ERR:Connection Refused} @@ -747,7 +747,7 @@ Another solution might be to run the daemon with the debug option by: This will cause the FD to write a file {\bf bacula.trace} in the current directory, which you can examine to determine the problem. -\subsection*{Long running jobs die with Pipe Error} +\section{Long running jobs die with Pipe Error} \item [During long running jobs my File daemon dies with Pipe Error, or some other communications error. Why?] \index[general]{Communications Errors} @@ -795,7 +795,7 @@ iptables -t filter -A INPUT --dport 9103 -j ACCEPT This will ensure that any Bacula traffic will not get terminated because of high usage rates. -\subsection*{How to I tell the Job which Volume to use?} +\section{How to I tell the Job which Volume to use?} \item[I can't figure out how to tell the job which volume to use] \index[general]{What tape to mount} This is an interesting statement. I now see that a number of people new to diff --git a/docs/manual/fdl.tex b/docs/manual/fdl.tex index 37ddbce0..b46cd990 100644 --- a/docs/manual/fdl.tex +++ b/docs/manual/fdl.tex @@ -1,10 +1,10 @@ -%--------------------------------------------------------------------- -\section*{GNU Free Documentation License} +% TODO: maybe get rid of centering + +\chapter{GNU Free Documentation License} \index[general]{GNU Free Documentation License} \index[general]{License!GNU Free Documentation} -\addcontentsline{toc}{section}{GNU Free Documentation License} -%\label{label_fdl} +\label{label_fdl} \begin{center} @@ -52,7 +52,6 @@ principally for works whose purpose is instruction or reference. \begin{center} {\Large\bf 1. APPLICABILITY AND DEFINITIONS} -\addcontentsline{toc}{section}{1. APPLICABILITY AND DEFINITIONS} \end{center} This License applies to any manual or other work, in any medium, that @@ -143,7 +142,6 @@ no effect on the meaning of this License. \begin{center} {\Large\bf 2. VERBATIM COPYING} -\addcontentsline{toc}{section}{2. VERBATIM COPYING} \end{center} You may copy and distribute the Document in any medium, either @@ -162,7 +160,6 @@ you may publicly display copies. \begin{center} {\Large\bf 3. COPYING IN QUANTITY} -\addcontentsline{toc}{section}{3. COPYING IN QUANTITY} \end{center} @@ -204,7 +201,6 @@ them a chance to provide you with an updated version of the Document. \begin{center} {\Large\bf 4. MODIFICATIONS} -\addcontentsline{toc}{section}{4. MODIFICATIONS} \end{center} You may copy and distribute a Modified Version of the Document under @@ -323,7 +319,6 @@ imply endorsement of any Modified Version. \begin{center} {\Large\bf 5. COMBINING DOCUMENTS} -\addcontentsline{toc}{section}{5. COMBINING DOCUMENTS} \end{center} @@ -351,7 +346,6 @@ Entitled "Endorsements". \begin{center} {\Large\bf 6. COLLECTIONS OF DOCUMENTS} -\addcontentsline{toc}{section}{6. COLLECTIONS OF DOCUMENTS} \end{center} You may make a collection consisting of the Document and other documents @@ -368,7 +362,6 @@ other respects regarding verbatim copying of that document. \begin{center} {\Large\bf 7. AGGREGATION WITH INDEPENDENT WORKS} -\addcontentsline{toc}{section}{7. AGGREGATION WITH INDEPENDENT WORKS} \end{center} @@ -392,7 +385,6 @@ aggregate. \begin{center} {\Large\bf 8. TRANSLATION} -\addcontentsline{toc}{section}{8. TRANSLATION} \end{center} @@ -417,7 +409,6 @@ title. \begin{center} {\Large\bf 9. TERMINATION} -\addcontentsline{toc}{section}{9. TERMINATION} \end{center} @@ -432,7 +423,6 @@ parties remain in full compliance. \begin{center} {\Large\bf 10. FUTURE REVISIONS OF THIS LICENSE} -\addcontentsline{toc}{section}{10. FUTURE REVISIONS OF THIS LICENSE} \end{center} @@ -454,7 +444,7 @@ as a draft) by the Free Software Foundation. \begin{center} {\Large\bf ADDENDUM: How to use this License for your documents} -\addcontentsline{toc}{section}{ADDENDUM: How to use this License for your documents} +% TODO: this is too long for table of contents \end{center} To use this License in a document you have written, include a copy of diff --git a/docs/manual/filedconf.tex b/docs/manual/filedconf.tex index 0bc74bcb..6291bdb3 100644 --- a/docs/manual/filedconf.tex +++ b/docs/manual/filedconf.tex @@ -1,15 +1,13 @@ %% %% -\section*{Client/File daemon Configuration} +\chapter{Client/File daemon Configuration} \label{_ChapterStart25} \index[general]{Configuration!Client/File daemon } \index[general]{Client/File daemon Configuration } -\addcontentsline{toc}{section}{Client/File daemon Configuration} -\subsection*{General} +\section{General} \index[general]{General } -\addcontentsline{toc}{subsection}{General} The Client (or File Daemon) Configuration is one of the simpler ones to specify. Generally, other than changing the Client name so that error messages @@ -33,11 +31,10 @@ following Client Resource definitions must be defined: information messages are to be sent. \end{itemize} -\subsection*{The Client Resource} +\section{The Client Resource} \label{ClientResource} \index[general]{Resource!Client } \index[general]{Client Resource } -\addcontentsline{toc}{subsection}{Client Resource} The Client Resource (or FileDaemon) resource defines the name of the Client (as used by the Director) as well as the port on which the Client listens for @@ -221,11 +218,10 @@ Client { # this is me \end{verbatim} \normalsize -\subsection*{The Director Resource} +\section{The Director Resource} \label{DirectorResource} \index[general]{Director Resource } \index[general]{Resource!Director } -\addcontentsline{toc}{subsection}{Director Resource} The Director resource defines the name and password of the Directors that are permitted to contact this Client. @@ -290,11 +286,10 @@ Director { \end{verbatim} \normalsize -\subsection*{The Message Resource} +\section{The Message Resource} \label{MessagesResource} \index[general]{Message Resource } \index[general]{Resource!Message } -\addcontentsline{toc}{subsection}{Message Resource} Please see the \ilink{Messages Resource}{_ChapterStart15} Chapter of this @@ -302,11 +297,10 @@ manual for the details of the Messages Resource. There must be at least one Message resource in the Client configuration file. -\subsection*{Example Client Configuration File} +\section{Example Client Configuration File} \label{SampleClientConfiguration} \index[general]{Example Client Configuration File } \index[general]{File!Example Client Configuration } -\addcontentsline{toc}{subsection}{Example Client Configuration File} An example File Daemon configuration file might be the following: diff --git a/docs/manual/fileset.tex b/docs/manual/fileset.tex index 84b7d53e..fef847c6 100644 --- a/docs/manual/fileset.tex +++ b/docs/manual/fileset.tex @@ -1,11 +1,10 @@ -% %% -\subsection*{The FileSet Resource} +\chapter{The FileSet Resource} \label{FileSetResource} \index[general]{Resource!FileSet} \index[general]{FileSet Resource} -\addcontentsline{toc}{subsection}{FileSet Resource} The FileSet resource defines what files are to be included or excluded in a backup job. A {\bf FileSet} resource is required for each backup Job. It @@ -997,10 +996,9 @@ Include { matching. \end{itemize} -\subsubsection*{FileSet Examples} +\section{FileSet Examples} \index[general]{Examples!FileSet } \index[general]{FileSet Examples} -\addcontentsline{toc}{subsection}{FileSet Examples} The following is an example of a valid FileSet resource definition. Note, the first Include pulls in the contents of the file {\bf /etc/backup.list} @@ -1289,10 +1287,9 @@ FileSet { \end{verbatim} \normalsize -\subsubsection*{Backing up Raw Partitions} +\section{Backing up Raw Partitions} \index[general]{Backing up!Partitions } \index[general]{Backing up Raw Partitions } -\addcontentsline{toc}{subsection}{Backing up Raw Partitions} The following FileSet definition will backup a raw partition: @@ -1315,10 +1312,9 @@ mounted or is mounted read-only. If necessary, this can be done using the {\bf RunBeforeJob} directive. -\subsubsection*{Excluding Files and Directories} +\section{Excluding Files and Directories} \index[general]{Directories!Excluding Files and } \index[general]{Excluding Files and Directories } -\addcontentsline{toc}{subsubsection}{Excluding Files and Directories} You may also include full filenames or directory names in addition to using wild-cards and {\bf Exclude=yes} in the Options resource as specified above by @@ -1350,10 +1346,9 @@ FileSet { \normalsize \label{win32} -\subsubsection*{Windows FileSets} +\section{Windows FileSets} \index[general]{Windows FileSets } \index[general]{FileSets!Windows } -\addcontentsline{toc}{subsection}{Windows FileSets} If you are entering Windows file names, the directory path may be preceded by the drive and a colon (as in c:). However, the path separators must be specified in Unix convention (i.e. forward slash (/)). If you wish to include @@ -1409,7 +1404,6 @@ Full backup. \paragraph*{A Windows Example FileSet} \index[general]{FileSet!Windows Example } \index[general]{Windows Example FileSet } -\addcontentsline{toc}{paragraph}{Windows Example FileSet} The following example was contributed by Russell Howe. Please note that for presentation purposes, the lines beginning with Data and Internet @@ -1518,15 +1512,13 @@ page, they should be written on a single line in real use. \paragraph*{Windows NTFS Naming Considerations} \index[general]{Windows NTFS Naming Considerations } \index[general]{Considerations!Windows NTFS Naming } -\addcontentsline{toc}{paragraph}{Windows NTFS Naming Considerations} NTFS filenames containing Unicode characters should now be supported as of version 1.37.30 or later. -\subsubsection*{Testing Your FileSet} +\section{Testing Your FileSet} \index[general]{FileSet!Testing Your } \index[general]{Testing Your FileSet } -\addcontentsline{toc}{subsection}{Testing Your FileSet} If you wish to get an idea of what your FileSet will really backup or if your exclusion rules will work correctly, you can test it by using the {\bf diff --git a/docs/manual/firewalls.tex b/docs/manual/firewalls.tex index 3f8a9b39..be777f1c 100644 --- a/docs/manual/firewalls.tex +++ b/docs/manual/firewalls.tex @@ -1,20 +1,18 @@ %% %% -\section*{Dealing with Firewalls} +\chapter{Dealing with Firewalls} \label{_ChapterStart26} \index[general]{Dealing with Firewalls } \index[general]{Firewalls!Dealing with } -\addcontentsline{toc}{section}{Dealing with Firewalls} If you have a firewall or a DMZ installed on your computer, you may experience difficulties contacting one or more of the Clients to back them up. This is especially true if you are trying to backup a Client across the Internet. -\subsection*{Technical Details} +\section{Technical Details} \index[general]{Technical Details } \index[general]{Details!Technical } -\addcontentsline{toc}{subsection}{Technical Details} If you are attempting to do this, the sequence of network events in Bacula to do a backup are the following: @@ -59,10 +57,9 @@ initiate connections on any port. If not, you will need to allow outgoing connections on ports 9102 and 9103 on your server and 9103 on your client. Thanks to Raymond Norton for this tip. -\subsection*{A Concrete Example} +\section{A Concrete Example} \index[general]{Example!Concrete } \index[general]{Concrete Example } -\addcontentsline{toc}{subsection}{Concrete Example} The following discussion was originally written by Jesse Guardiani because he has 'internal' and 'external' requiring the @@ -179,10 +176,9 @@ Remember: \end{verbatim} \normalsize -\subsubsection*{The Bacula Configuration Files for the Above} +\subsection{The Bacula Configuration Files for the Above} \index[general]{Above!Bacula Configuration Files for the } \index[general]{Bacula Configuration Files for the Above } -\addcontentsline{toc}{subsubsection}{Bacula Configuration Files for the Above} server-sd manages a 4 tape AIT autoloader. All of my backups are written to server-sd. I have just *one* Device resource in my server-sd.conf file: @@ -305,10 +301,9 @@ I have left the Pool, Catalog, Messages, FileSet, Schedule, and Director resources out of the above server-dir.conf examples because they are not pertinent to the discussion. -\subsubsection*{How Does It Work?} +\subsection{How Does It Work?} \index[general]{How Does It Work? } \index[general]{Work!How Does It } -\addcontentsline{toc}{subsubsection}{How Does It Work?} If I want to run a backup of private1.int.mydomain.tld and store that backup using server-sd then my understanding of the order of events is this: @@ -347,20 +342,18 @@ this: files. \end{enumerate} -\subsubsection*{Important Note} +\subsection{Important Note} \index[general]{Important Note } \index[general]{Note!Important } -\addcontentsline{toc}{subsubsection}{Important Note} In order for the above 'Public1-Backup' Job to succeed, firewall.mydomain.tld:9103 MUST be forwarded using the firewall's configuration software to server.int.mydomain.tld:9103. Some firewalls call this 'Server Publication'. Others may call it 'Port Forwarding'. -\subsubsection*{Firewall Problems} +\subsection{Firewall Problems} \index[general]{Firewall Problems} \index[general]{Problems!Firewalls} -\addcontentsline{toc}{subsubsection}{Firewall Problems} Either a firewall or a router may decide to timeout and terminate open connections if they are not active for a short time. By Internet standards the period should be two hours, and should be indefinitely diff --git a/docs/manual/general.tex b/docs/manual/general.tex index 5f46992a..cf485ab3 100644 --- a/docs/manual/general.tex +++ b/docs/manual/general.tex @@ -1,11 +1,10 @@ %% %% -\section*{What is Bacula?} +\chapter{What is Bacula?} \label{_ChapterStart41} \index[general]{Bacula!What is } \index[general]{What is Bacula? } -\addcontentsline{toc}{section}{What is Bacula?} {\bf Bacula} is a set of computer programs that permits you (or the system administrator) to manage backup, recovery, and verification of computer data @@ -20,10 +19,9 @@ make it easy to find and recover lost or damaged files. Due to its modular design, Bacula is scalable from small single computer systems to systems consisting of hundreds of computers located over a large network. -\subsection*{Who Needs Bacula?} +\section{Who Needs Bacula?} \index[general]{Who Needs Bacula? } \index[general]{Bacula!Who Needs } -\addcontentsline{toc}{subsection}{Who Needs Bacula?} If you are currently using a program such as {\bf tar}, {\bf dump}, or {\bf bru} to backup your computer data, and you would like a network solution, more @@ -51,10 +49,9 @@ Networker. ARCserveIT, Arkeia, or PerfectBackup+, you may be interested in Bacula, which provides many of the same features, and is free software available under the GNU Version 2 software license. -\subsection*{Bacula Components or Services} +\section{Bacula Components or Services} \index[general]{Bacula Components or Services } \index[general]{Services!Bacula Components or } -\addcontentsline{toc}{subsection}{Bacula Components or Services} Bacula is made up of the following five major components or services: @@ -157,10 +154,9 @@ Bacula is made up of the following five major components or services: configured and running: the Director daemon, the File daemon, the Storage daemon, and MySQL, PostgreSQL or SQLite. -\subsection*{Bacula Configuration} +\section{Bacula Configuration} \index[general]{Configuration!Bacula } \index[general]{Bacula Configuration } -\addcontentsline{toc}{subsection}{Bacula Configuration} In order for Bacula to understand your system, what clients you want backed up, and how, you must create a number of configuration files containing @@ -169,10 +165,9 @@ resources (or objects). The following presents an overall picture of this: \addcontentsline{lof}{figure}{Bacula Objects} \includegraphics{./bacula-objects.eps} -\subsection*{Conventions Used in this Document} +\section{Conventions Used in this Document} \index[general]{Conventions Used in this Document } \index[general]{Document!Conventions Used in this } -\addcontentsline{toc}{subsection}{Conventions Used in this Document} {\bf Bacula} is in a state of evolution, and as a consequence, this manual will not always agree with the code. If an item in this manual is preceded by @@ -188,10 +183,9 @@ mind that this version describes the current version in development (in the CVS) that may contain features not in the released version. Just the same, it generally lags behind the code a bit. -\subsection*{Quick Start} +\section{Quick Start} \index[general]{Quick Start } \index[general]{Start!Quick } -\addcontentsline{toc}{subsection}{Quick Start} To get Bacula up and running quickly, we recommend that you first scan the Terminology section below, then quickly review the next chapter entitled @@ -204,9 +198,8 @@ proceed to the chapter on chapter on \ilink{ Running Bacula}{_ChapterStart1}. -\subsection*{Terminology} +\section{Terminology} \index[general]{Terminology } -\addcontentsline{toc}{subsection}{Terminology} To facilitate communication about this project, we provide here the definitions of the terminology that we use. @@ -470,9 +463,8 @@ NOT YET IMPLEMENTED. wrong one). \end{description} -\subsection*{What Bacula is Not} +\section{What Bacula is Not} \index[general]{What Bacula is Not} -\addcontentsline{toc}{subsection}{What Bacula is Not} {\bf Bacula} is a backup, restore and verification program and is not a complete disaster recovery system in itself, but it can be a key part of one @@ -491,10 +483,9 @@ means to save a valid bootstrap file, you will be able to use it to extract the necessary files (without using the catalog or manually searching for the files to restore). -\subsection*{Interactions Between the Bacula Services} +\section{Interactions Between the Bacula Services} \index[general]{Interactions Between the Bacula Services} \index[general]{Services!Interactions Between the Bacula} -\addcontentsline{toc}{subsection}{Interactions Between the Bacula Services} The following block diagram shows the typical interactions between the Bacula Services for a backup job. Each block represents in general a separate process diff --git a/docs/manual/gpl.tex b/docs/manual/gpl.tex index 7522bc70..c6441ab5 100644 --- a/docs/manual/gpl.tex +++ b/docs/manual/gpl.tex @@ -5,7 +5,6 @@ \label{_ChapterStart20} \index[general]{GNU General Public License } \index[general]{License!GNU General Public } -\addcontentsline{toc}{section}{GNU General Public License} \elink{image of a Philosophical GNU}{http://www.gnu.org/graphics/philosophicalgnu.html} @@ -20,10 +19,9 @@ GNU}{http://www.gnu.org/graphics/philosophicalgnu.html} \end{itemize} -\subsection*{Table of Contents} +\section{Table of Contents} \index[general]{Table of Contents } \index[general]{Contents!Table of } -\addcontentsline{toc}{subsection}{Table of Contents} \begin{itemize} \item @@ -46,12 +44,11 @@ MODIFICATION}{SEC3} \end{itemize} -\subsection*{ +\section{ \ilink{GNU GENERAL PUBLIC LICENSE}{TOC1}} \label{SEC1} \index[general]{GNU GENERAL PUBLIC LICENSE } \index[general]{LICENSE!GNU GENERAL PUBLIC } -\addcontentsline{toc}{subsection}{GNU GENERAL PUBLIC LICENSE} Version 2, June 1991 @@ -64,11 +61,10 @@ of this license document, but changing it is not allowed. \end{verbatim} \normalsize -\subsection*{ +\section{ \ilink{Preamble}{TOC2}} \label{SEC2} \index[general]{Preamble } -\addcontentsline{toc}{subsection}{Preamble} The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to @@ -115,12 +111,11 @@ everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. -\subsection*{ +\section{ \ilink{TERMS AND CONDITIONS}{TOC3}} \label{SEC3} \index[general]{CONDITIONS!TERMS AND } \index[general]{TERMS AND CONDITIONS } -\addcontentsline{toc}{subsection}{TERMS AND CONDITIONS} TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION @@ -336,12 +331,11 @@ DAMAGES. END OF TERMS AND CONDITIONS -\subsection*{ +\section{ \ilink{How to Apply These Terms to Your New Programs}{TOC4}} \label{SEC4} \index[general]{Programs!How to Apply These Terms to Your New } \index[general]{How to Apply These Terms to Your New Programs } -\addcontentsline{toc}{subsection}{How to Apply These Terms to Your New Programs} If you develop a new program, and you want it to be of the greatest possible diff --git a/docs/manual/install.tex b/docs/manual/install.tex index d56eb31e..a6119395 100644 --- a/docs/manual/install.tex +++ b/docs/manual/install.tex @@ -1,15 +1,13 @@ %% %% -\section*{Installing Bacula} +\chapter{Installing Bacula} \label{_ChapterStart17} \index[general]{Bacula!Installing} \index[general]{Installing Bacula} -\addcontentsline{toc}{section}{Installing Bacula} -\subsection*{General} +\section{General} \index[general]{General} -\addcontentsline{toc}{subsection}{General} In general, you will need the Bacula source release, and if you want to run a Windows client, you will need the Bacula Windows binary release. @@ -23,10 +21,9 @@ vastly simplify your life by providing you with all the necessary packages rather than requiring you to find them on the Web, load them, and install them. -\subsection*{Source Release Files} +\section{Source Release Files} \index[general]{Source Files} \index[general]{Release Files} -\addcontentsline{toc}{subsection}{Source Release File} Beginning with Bacula 1.38.0, the source code has been broken into four separate tar files each corresponding to a different module in the Bacula CVS. The released files are: @@ -66,10 +63,9 @@ the Bacula CVS. The released files are: \end{description} \label{upgrading1} -\subsection*{Upgrading Bacula} +\section{Upgrading Bacula} \index[general]{Bacula!Upgrading} \index[general]{Upgrading Bacula} -\addcontentsline{toc}{subsection}{Upgrading Bacula} If you are upgrading from one Bacula version to another, you should first carefully read the ReleaseNotes of all versions between your current @@ -120,10 +116,9 @@ and you must do both the {\bf make} and {\bf make install} commands, a For additional information on upgrading, please see the \ilink{Upgrading Bacula Versions}{upgrading} in the Tips chapter of this manual. -\subsection*{Releases Numbering} +\section{Releases Numbering} \index[general]{Release Numbering} \index[general]{Version Numbering} -\addcontentsline{toc}{subsection}{Release Numbering} Every Bacula release whether beta or production has a different number as well as the date of the release build. The numbering system follows traditional Open Source conventions in that it is of the form. @@ -179,9 +174,8 @@ if you always run all the components on the same minor version number (i.e. all either 1.38.x or 1.40.x but not mixed). -\subsection*{Beta Releases} +\section{Beta Releases} \index[general]{Beta Releases} -\addcontentsline{toc}{subsection}{Beta Releases} Towards the end of the development cycle, which typically runs one year from a major release to another, there will be several beta releases of the development code prior to a production release. @@ -212,10 +206,9 @@ the new code. Beta releases are made with the following considerations: \label{Dependency} -\subsection*{Dependency Packages} +\section{Dependency Packages} \index[general]{Dependency Packages} \index[general]{Packages!Dependency} -\addcontentsline{toc}{subsection}{Dependency Packages} As discussed above, we have combined a number of third party packages that Bacula might need into the {\bf depkgs} release. You can, @@ -288,21 +281,19 @@ systems using cross-compiling. All the tools and third party libraries are automatically downloaded by executing the appropriate scripts. See src/win32/README.mingw32 for more details. -\subsection*{Supported Operating Systems} +\section{Supported Operating Systems} \label{Systems} \index[general]{Systems!Supported Operating} \index[general]{Supported Operating Systems} -\addcontentsline{toc}{subsection}{Supported Operating Systems} Please see the \ilink{ Supported Operating Systems}{SupportedOSes} section of the QuickStart chapter of this manual. -\subsection*{Building Bacula from Source} +\section{Building Bacula from Source} \label{Building} \index[general]{Source!Building Bacula from} \index[general]{Building Bacula from Source} -\addcontentsline{toc}{subsection}{Building Bacula from Source} The basic installation is rather simple. @@ -404,8 +395,8 @@ continue on. (if using MySQL) \ilink{Installing and Configuring MySQL Phase II}{mysql_phase2} or create the Bacula PostgreSQL database and tables - \ilink{Installing and Configuring PostgreSQL Phase - II}{PostgreSQL_phase2} or alternatively if you are using + \ilink{Configuring PostgreSQL + II}{PostgreSQL_configure} or alternatively if you are using SQLite \ilink{Installing and Configuring SQLite Phase II}{phase2}. @@ -547,11 +538,10 @@ readline seems to be incompatible with previous versions, and that there are significant differences between systems, we can no longer afford to support it. -\subsection*{What Database to Use?} +\section{What Database to Use?} \label{DB} \index[general]{What Database to Use?} \index[general]{Use!What Database to} -\addcontentsline{toc}{subsection}{What Database to Use?} Before building Bacula you need to decide if you want to use SQLite, MySQL, or PostgreSQL. If you are not already running MySQL or PostgreSQL, you might @@ -584,10 +574,9 @@ If you wish to use SQLite as the Bacula catalog, please see \ilink{Installing and Configuring SQLite}{_ChapterStart33} chapter of this manual. -\subsection*{Quick Start} +\section{Quick Start} \index[general]{Quick Start} \index[general]{Start!Quick} -\addcontentsline{toc}{subsection}{Quick Start} There are a number of options and important considerations given below that you can skip for the moment if you have not had any problems building @@ -608,11 +597,10 @@ example can be installed into a single directory (for easy removal) and run as non-root. If you have any problems or when you want to do a real installation, come back to this chapter and read the details presented below. -\subsection*{Configure Options} +\section{Configure Options} \label{Options} \index[general]{Options!Configure} \index[general]{Configure Options} -\addcontentsline{toc}{subsection}{Configure Options} The following command line options are available for {\bf configure} to customize your installation. @@ -1062,10 +1050,9 @@ customize your installation. Note, many other options are presented when you do a {\bf ./configure \verb:--:help}, but they are not implemented. -\subsection*{Recommended Options for most Systems} -\index[general]{Systems!Recommended Options for most} -\index[general]{Recommended Options for most Systems} -\addcontentsline{toc}{subsection}{Recommended Options for most Systems} +\section{Recommended Options for Most Systems} +\index[general]{Systems!Recommended Options for Most} +\index[general]{Recommended Options for Most Systems} For most systems, we recommend starting with the following options: @@ -1092,9 +1079,8 @@ pid-dir, subsys-dir, or working-dir, so you must ensure that they exist before running Bacula for the first time. See below for an example of how Kern does it. -\subsection*{Red Hat} +\section{Red Hat} \index[general]{Red Hat} -\addcontentsline{toc}{subsection}{Red Hat} Using SQLite: @@ -1160,9 +1146,8 @@ bad code that causes Bacula to segment fault. Typically you will see this in the Storage daemon first. The solution is to compile Bacula ensuring that no optimization is turned on (normally it is -O2). -\subsection*{Solaris} +\section{Solaris} \index[general]{Solaris} -\addcontentsline{toc}{subsection}{Solaris} To build Bacula from source, you will need the following installed on your system (they are not by default): libiconv, gcc 3.3.2, stdc++, libgcc (for @@ -1214,9 +1199,8 @@ PATH=/usr/bin::/usr/ccs/bin:/etc:/usr/openwin/bin:/usr/local/bin:/usr/sfw/bin:/o \end{verbatim} \normalsize -\subsection*{FreeBSD} +\section{FreeBSD} \index[general]{FreeBSD} -\addcontentsline{toc}{subsection}{FreeBSD} Please see: \elink{The FreeBSD Diary}{http://www.freebsddiary.org/bacula.php} for a @@ -1232,17 +1216,15 @@ FreeBSD native threads rather than LinuxThreads, since Bacula is normally built with FreeBSD native threads rather than LinuxTreads. Mixing the two will probably not work. -\subsection*{Win32} +\section{Win32} \index[general]{Win32} -\addcontentsline{toc}{subsection}{Win32} To install the binary Win32 version of the File daemon please see the \ilink{Win32 Installation Chapter}{_ChapterStart7} in this document. -\subsection*{Kern's Configure Script} +\section{Kern's Configure Script} \index[general]{Script!Kern's Configure} \index[general]{Kern's Configure Script} -\addcontentsline{toc}{subsection}{Kern's Configure Script} The script that I use for building on my "production" Linux machines is: @@ -1282,10 +1264,9 @@ bacula-sd 9103/tcp \end{verbatim} \normalsize -\subsection*{Installing Bacula} +\section{Installing Bacula} \index[general]{Bacula!Installing} \index[general]{Installing Bacula} -\addcontentsline{toc}{subsection}{Installing Bacula} Before setting up your configuration files, you will want to install Bacula in its final location. Simply enter: @@ -1302,10 +1283,9 @@ configuration files will be appended with a {\bf .new}. Generally if you have previously installed and run Bacula you will want to discard or ignore the configuration files with the appended {\bf .new}. -\subsection*{Building a File Daemon or Client} +\section{Building a File Daemon or Client} \index[general]{Client!Building a File Daemon or} \index[general]{Building a File Daemon or Client} -\addcontentsline{toc}{subsection}{Building a File Daemon or Client} If you run the Director and the Storage daemon on one machine and you wish to back up another machine, you must have a copy of the File daemon for that @@ -1330,10 +1310,9 @@ daemon. With the above option, you simply enter {\bf make} and just the client will be built. \label{autostart} -\subsection*{Auto Starting the Daemons} +\section{Auto Starting the Daemons} \index[general]{Daemons!Auto Starting the} \index[general]{Auto Starting the Daemons} -\addcontentsline{toc}{subsection}{Auto Starting the Daemons} If you wish the daemons to be automatically started and stopped when your system is booted (a good idea), one more step is necessary. First, the @@ -1366,10 +1345,9 @@ make install-autostart-fd \end{verbatim} \normalsize -\subsection*{Other Make Notes} +\section{Other Make Notes} \index[general]{Notes!Other Make} \index[general]{Other Make Notes} -\addcontentsline{toc}{subsection}{Other Make Notes} To simply build a new executable in any directory, enter: @@ -1481,10 +1459,9 @@ wx-console.conf \label{monitor} -\subsection*{Installing Tray Monitor} +\section{Installing Tray Monitor} \index[general]{Monitor!Installing Tray} \index[general]{Installing Tray Monitor} -\addcontentsline{toc}{subsection}{Installing Tray Monitor} The Tray Monitor is already installed if you used the {\bf \verb:--:enable-tray-monitor} configure option and ran {\bf make install}. @@ -1500,35 +1477,31 @@ somewhere on the screen, usually on the task bar. If it doesn't, follow the instructions below related to your environment or window manager. -\subsubsection*{GNOME} +\subsection{GNOME} \index[general]{GNOME} -\addcontentsline{toc}{subsubsection}{GNOME} System tray, or notification area if you use the GNOME terminology, has been supported in GNOME since version 2.2. To activate it, right-click on one of your panels, open the menu {\bf Add to this Panel}, then {\bf Utility} and finally click on {\bf Notification Area}. -\subsubsection*{KDE} +\subsection{KDE} \index[general]{KDE} -\addcontentsline{toc}{subsubsection}{KDE} System tray has been supported in KDE since version 3.1. To activate it, right-click on one of your panels, open the menu {\bf Add}, then {\bf Applet} and finally click on {\bf System Tray}. -\subsubsection*{Other window managers} +\subsection{Other window managers} \index[general]{Managers!Other window} \index[general]{Other window managers} -\addcontentsline{toc}{subsubsection}{Other window managers} Read the documentation to know if the Freedesktop system tray standard is supported by your window manager, and if applicable, how to activate it. -\subsection*{Modifying the Bacula Configuration Files} +\section{Modifying the Bacula Configuration Files} \index[general]{Modifying the Bacula Configuration Files} \index[general]{Files!Modifying the Bacula Configuration} -\addcontentsline{toc}{subsection}{Modifying the Bacula Configuration Files} See the chapter \ilink{Configuring Bacula}{_ChapterStart16} in this manual for diff --git a/docs/manual/internaldb.tex b/docs/manual/internaldb.tex index 16e7d890..514d4f03 100644 --- a/docs/manual/internaldb.tex +++ b/docs/manual/internaldb.tex @@ -8,13 +8,11 @@ use it.} do not } \index[general]{Bacula internal database is no longer supported, please do not use it. } -\addcontentsline{toc}{section}{Bacula internal database is no longer supported, please do not use it.} -\subsection*{Internal Bacula Database} +\section{Internal Bacula Database} \index[general]{Internal Bacula Database } \index[general]{Database!Internal Bacula } -\addcontentsline{toc}{subsection}{Internal Bacula Database} Previously it was intended to be used primarily by Bacula developers for testing; although SQLite is also a good choice for this. We do not recommend diff --git a/docs/manual/kaboom.tex b/docs/manual/kaboom.tex index 424dd11f..164b0ba6 100644 --- a/docs/manual/kaboom.tex +++ b/docs/manual/kaboom.tex @@ -1,11 +1,10 @@ %% %% -\section*{What To Do When Bacula Crashes (Kaboom)} +\chapter{What To Do When Bacula Crashes (Kaboom)} \label{_ChapterStart47} \index[general]{Kaboom!What To Do When Bacula Crashes } \index[general]{What To Do When Bacula Crashes (Kaboom) } -\addcontentsline{toc}{section}{What To Do When Bacula Crashes (Kaboom)} If you are running on a Linux system, and you have a set of working configuration files, it is very unlikely that {\bf Bacula} will crash. As with @@ -25,9 +24,8 @@ crashing, Bacula will normally display a message indicating why. For more details, please read on. -\subsection*{Traceback} +\section{Traceback} \index[general]{Traceback } -\addcontentsline{toc}{subsection}{Traceback} Each of the three Bacula daemons has a built-in exception handler which, in case of an error, will attempt to produce a traceback. If successful the @@ -71,10 +69,9 @@ gdb -quiet -batch -x /home/kern/bacula/bin/btraceback.gdb \ Since each daemon has the same traceback code, a single btraceback file is sufficient if you are running more than one daemon on a machine. -\subsection*{Testing The Traceback} +\section{Testing The Traceback} \index[general]{Traceback!Testing The } \index[general]{Testing The Traceback } -\addcontentsline{toc}{subsection}{Testing The Traceback} To "manually" test the traceback feature, you simply start {\bf Bacula} then obtain the {\bf PID} of the main daemon thread (there are multiple threads). @@ -119,10 +116,9 @@ the proper syntax for your smtp server. If you use the {\bf mail} program and it is not on the default path, it will also fail. On some systems, it is preferable to use {\bf Mail} rather than {\bf mail}. -\subsection*{Getting A Traceback On Other Systems} +\section{Getting A Traceback On Other Systems} \index[general]{Getting A Traceback On Other Systems } \index[general]{Systems!Getting A Traceback On Other } -\addcontentsline{toc}{subsection}{Getting A Traceback On Other Systems} It should be possible to produce a similar traceback on systems other than Linux, either using {\bf gdb} or some other debugger. Solaris with {\bf dbx} @@ -133,10 +129,9 @@ anyone succeeds in making this work with another debugger, please send us a copy of what you modified. \label{ManuallyDebugging} -\subsection*{Manually Running Bacula Under The Debugger} +\section{Manually Running Bacula Under The Debugger} \index[general]{Manually Running Bacula Under The Debugger } \index[general]{Debugger!Manually Running Bacula Under The } -\addcontentsline{toc}{subsection}{Manually Running Bacula Under The Debugger} If for some reason you cannot get the automatic traceback, or if you want to interactively examine the variable contents after a crash, you can run Bacula @@ -198,9 +193,8 @@ daemon's configuration file. After that you can issue any debugging command. \end{enumerate} -\subsection*{Getting Debug Output from Bacula} +\section{Getting Debug Output from Bacula} \index[general]{Getting Debug Output from Bacula } -\addcontentsline{toc}{subsection}{Getting Debug Output from Bacula} Each of the daemons normally has debug compiled into the program, but disabled. There are two ways to enable the debug output. One is to add the diff --git a/docs/manual/lesser.tex b/docs/manual/lesser.tex index 4c038707..2f58cb26 100644 --- a/docs/manual/lesser.tex +++ b/docs/manual/lesser.tex @@ -5,7 +5,6 @@ \label{_ChapterStart49} \index[general]{GNU Lesser General Public License } \index[general]{License!GNU Lesser General Public } -\addcontentsline{toc}{section}{GNU Lesser General Public License} \elink{image of a Philosophical GNU}{http://www.gnu.org/graphics/philosophicalgnu.html} [ @@ -35,10 +34,9 @@ necessary, read the \elink{Why you shouldn't use the Lesser GPL for your next library}{http://www.gnu.org/philosophy/why-not-lgpl.html} article. -\subsection*{Table of Contents} +\section{Table of Contents} \index[general]{Table of Contents } \index[general]{Contents!Table of } -\addcontentsline{toc}{subsection}{Table of Contents} \begin{itemize} \item @@ -61,12 +59,11 @@ MODIFICATION}{SEC34} \end{itemize} -\subsection*{ +\section{ \ilink{GNU LESSER GENERAL PUBLIC LICENSE}{TOC12}} \label{SEC12} \index[general]{LICENSE!GNU LESSER GENERAL PUBLIC } \index[general]{GNU LESSER GENERAL PUBLIC LICENSE } -\addcontentsline{toc}{subsection}{GNU LESSER GENERAL PUBLIC LICENSE} Version 2.1, February 1999 @@ -82,11 +79,10 @@ of this license document, but changing it is not allowed. \end{verbatim} \normalsize -\subsection*{ +\section{ \ilink{Preamble}{TOC23}} \label{SEC23} \index[general]{Preamble } -\addcontentsline{toc}{subsection}{Preamble} The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to @@ -182,12 +178,11 @@ library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. -\subsection*{ +\section{ \ilink{TERMS AND CONDITIONS}{TOC34}} \label{SEC34} \index[general]{CONDITIONS!TERMS AND } \index[general]{TERMS AND CONDITIONS } -\addcontentsline{toc}{subsection}{TERMS AND CONDITIONS} TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION @@ -508,12 +503,11 @@ DAMAGES. END OF TERMS AND CONDITIONS -\subsection*{ +\section{ \ilink{How to Apply These Terms to Your New Libraries}{TOC45}} \label{SEC45} \index[general]{Libraries!How to Apply These Terms to Your New } \index[general]{How to Apply These Terms to Your New Libraries } -\addcontentsline{toc}{subsection}{How to Apply These Terms to Your New Libraries} If you develop a new library, and you want it to be of the greatest possible diff --git a/docs/manual/license.tex b/docs/manual/license.tex index 4a024176..b67c8270 100644 --- a/docs/manual/license.tex +++ b/docs/manual/license.tex @@ -1,24 +1,22 @@ %% %% -\section*{Bacula Copyright, Trademark, and Licenses} +\chapter{Bacula Copyright, Trademark, and Licenses} \label{_ChapterStart29} \index[general]{Licenses!Bacula Copyright Trademark} \index[general]{Bacula Copyright, Trademark, and Licenses} -\addcontentsline{toc}{section}{Bacula Copyright, Trademark, and Licenses} There are a number of different licenses that are used in Bacula. -\subsection*{FDL} +\section{FDL} \index[general]{FDL } -\addcontentsline{toc}{subsection}{FDL} The GNU Free Documentation License (FDL) is used for this manual. +% TODO: Point to appendix that has it -\subsection*{GPL} +\section{GPL} \index[general]{GPL } -\addcontentsline{toc}{subsection}{GPL} The vast bulk of the source code is released under a modified version of the \ilink{GNU General Public License version 2.}{_ChapterStart20} The @@ -37,26 +35,23 @@ Portions may be copyrighted by other people (ATT, the Free Software Foundation, ...). Generally these portions are released under a non-modified GPL 2 license. -\subsection*{LGPL} +\section{LGPL} \index[general]{LGPL } -\addcontentsline{toc}{subsection}{LGPL} Some of the Bacula library source code is released under the \ilink{GNU Lesser General Public License.}{_ChapterStart49} This permits third parties to use these parts of our code in their proprietary programs to interface to Bacula. -\subsection*{Public Domain} +\section{Public Domain} \index[general]{Domain!Public } \index[general]{Public Domain } -\addcontentsline{toc}{subsection}{Public Domain} Some of the Bacula code, or code that Bacula references, has been released to the public domain. E.g. md5.c, SQLite. -\subsection*{Trademark} +\section{Trademark} \index[general]{Trademark } -\addcontentsline{toc}{subsection}{Trademark} Bacula\raisebox{.6ex}{\textsuperscript{\textregistered}} is a registered trademark of John Walker. @@ -66,9 +61,8 @@ name Bacula will be exactly compatible with the program that we have released. The use of the name Bacula is restricted to software systems that agree exactly with the program presented here. -\subsection*{Fiduciary License Agreement} +\section{Fiduciary License Agreement} \index[general]{Fiduciary License Agreement } -\addcontentsline{toc}{subsection}{Fiduciary License Agreement} Developers who have contributed significant changes to the Bacula code should have signed a Fiduciary License Agreement (FLA), which guarantees them the right to use the code they have developed, and also @@ -93,9 +87,8 @@ registered office mentioned in the document. When you send in such a complete document, please notify me: kern at sibbald dot com. -\subsection*{Disclaimer} +\section{Disclaimer} \index[general]{Disclaimer } -\addcontentsline{toc}{subsection}{Disclaimer} NO WARRANTY diff --git a/docs/manual/messagesres.tex b/docs/manual/messagesres.tex index f36f74ad..225e9c8d 100644 --- a/docs/manual/messagesres.tex +++ b/docs/manual/messagesres.tex @@ -1,17 +1,15 @@ %% %% -\section*{Messages Resource} +\chapter{Messages Resource} \label{_ChapterStart15} \index[general]{Resource!Messages} \index[general]{Messages Resource} -\addcontentsline{toc}{section}{Messages Resource} -\subsection*{The Messages Resource} +\section{The Messages Resource} \label{MessageResource} \index[general]{Resource!Messages} \index[general]{Messages Resource} -\addcontentsline{toc}{subsection}{Messages Resource} The Messages resource defines how messages are to be handled and destinations to which they should be sent. diff --git a/docs/manual/migration.tex b/docs/manual/migration.tex index 88e5f7fb..1a5d87c1 100644 --- a/docs/manual/migration.tex +++ b/docs/manual/migration.tex @@ -1,8 +1,7 @@ -\section*{Migration} +\chapter{Migration} \label{_MigrationChapter} \index[general]{Migration} -\addcontentsline{toc}{section}{Migration} The term Migration, as used in the context of Bacula, means moving data from one Volume to another. In particular it refers to a Job (similar to a backup @@ -73,8 +72,7 @@ a number of volumes for migration, you may have a large number of Jobs that start. Because each job must read the same Volume, they will run consecutively (not simultaneously). -\subsection*{Migration Job Resource Directives} -\addcontentsline{toc}{section}{Migration Job Resource Directives} +\section{Migration Job Resource Directives} The following directives can appear in a Director's Job resource, and they are used to define a Migration job. @@ -192,8 +190,7 @@ database \end{description} -\subsection*{Migration Pool Resource Directives} -\addcontentsline{toc}{section}{Migration Pool Resource Directives} +\section{Migration Pool Resource Directives} The following directives can appear in a Director's Pool resource, and they are used to define a Migration job. @@ -242,9 +239,8 @@ are used to define a Migration job. than elsewhere (job, schedule run, ...). \end{description} -\subsection*{Important Migration Considerations} +\section{Important Migration Considerations} \index[general]{Important Migration Considerations} -\addcontentsline{toc}{subsection}{Important Migration Considerations} \begin{itemize} \item Each Pool into which you migrate Jobs or Volumes {\bf must} contain Volumes of only one Media Type. @@ -314,9 +310,8 @@ are used to define a Migration job. \end{itemize} -\subsection*{Example Migration Jobs} +\section{Example Migration Jobs} \index[general]{Example Migration Jobs} -\addcontentsline{toc}{subsection}{Example Migration Jobs} When you specify a Migration Job, you must specify all the standard directives as for a Job. However, certain such as the Level, Client, and diff --git a/docs/manual/monitorconf.tex b/docs/manual/monitorconf.tex index f35a8ef1..13b86108 100644 --- a/docs/manual/monitorconf.tex +++ b/docs/manual/monitorconf.tex @@ -1,15 +1,13 @@ %% %% -\section*{Monitor Configuration} +\chapter{Monitor Configuration} \label{_MonitorChapter} \index[general]{Monitor Configuration } \index[general]{Configuration!Monitor } -\addcontentsline{toc}{section}{Monitor Configuration} -\subsection*{General} +\section{General} \index[general]{General } -\addcontentsline{toc}{subsection}{General} The Monitor configuration file is a stripped down version of the Director configuration file, mixed with a Console configuration file. It simply @@ -35,11 +33,10 @@ the Monitor configuration file. daemons to monitor. \end{itemize} -\subsection*{The Monitor Resource} +\section{The Monitor Resource} \label{MonitorResource} \index[general]{Monitor Resource } \index[general]{Resource!Monitor } -\addcontentsline{toc}{subsection}{Monitor Resource} The Monitor resource defines the attributes of the Monitor running on the network. The parameters you define here must be configured as a Director @@ -70,13 +67,15 @@ record is required if you wish to monitor Directors. Specifies the time to wait between status requests to each daemon. It can't be set to less than 1 second, or more than 10 minutes, and the default value is 5 seconds. +% TODO: what is format of the time? +% TODO: should the digits in this definition be spelled out? should +% TODO: this say "time-period-specification" above??) \end{description} -\subsection*{The Director Resource} +\section{The Director Resource} \label{DirectorResource2} \index[general]{Director Resource } \index[general]{Resource!Director } -\addcontentsline{toc}{subsection}{Director Resource} The Director resource defines the attributes of the Directors that are monitored by this Monitor. @@ -120,11 +119,10 @@ default is 9101 so this record is not normally specified. address used to connect to the Director. This record is required. \end{description} -\subsection*{The Client Resource} +\section{The Client Resource} \label{ClientResource1} \index[general]{Resource!Client } \index[general]{Client Resource } -\addcontentsline{toc}{subsection}{Client Resource} The Client resource defines the attributes of the Clients that are monitored by this Monitor. @@ -169,11 +167,10 @@ must have the same password defined for this Director. This record is required. \end{description} -\subsection*{The Storage Resource} +\section{The Storage Resource} \label{StorageResource1} \index[general]{Resource!Storage } \index[general]{Storage Resource } -\addcontentsline{toc}{subsection}{Storage Resource} The Storage resource defines the attributes of the Storages that are monitored by this Monitor. @@ -219,9 +216,8 @@ resource of the Storage daemon's configuration file. This record is required. \end{description} -\subsection*{Tray Monitor Security} +\section{Tray Monitor Security} \index[general]{Tray Monitor Security} -\addcontentsline{toc}{subsection}{Tray Monitor Security} There is no security problem in relaxing the permissions on tray-monitor.conf as long as FD, SD and DIR are configured properly, so @@ -246,10 +242,9 @@ if a command is valid for a Monitor (this is very unlikely as the code is pretty simple). -\subsection*{Sample Tray Monitor configuration} +\section{Sample Tray Monitor configuration} \label{SampleConfiguration1} \index[general]{Sample Tray Monitor configuration} -\addcontentsline{toc}{subsection}{Sample Tray Monitor configuration} An example Tray Monitor configuration file might be the following: @@ -284,10 +279,9 @@ Director { \end{verbatim} \normalsize -\subsubsection*{Sample File daemon's Director record.} +\subsection{Sample File daemon's Director record.} \index[general]{Sample File daemon's Director record. } \index[general]{Record!Sample File daemon's Director } -\addcontentsline{toc}{subsubsection}{Sample File daemon's Director record.} Click \ilink{here to see the full example.}{SampleClientConfiguration} @@ -307,10 +301,9 @@ Director { \end{verbatim} \normalsize -\subsubsection*{Sample Storage daemon's Director record.} +\subsection{Sample Storage daemon's Director record.} \index[general]{Record!Sample Storage daemon's Director } \index[general]{Sample Storage daemon's Director record. } -\addcontentsline{toc}{subsubsection}{Sample Storage daemon's Director record.} Click \ilink{here to see the full example.}{SampleConfiguration} @@ -329,10 +322,9 @@ Director { \end{verbatim} \normalsize -\subsubsection*{Sample Director's Console record.} +\subsection{Sample Director's Console record.} \index[general]{Record!Sample Director's Console } \index[general]{Sample Director's Console record. } -\addcontentsline{toc}{subsubsection}{Sample Director's Console record.} Click \ilink{here to see the full diff --git a/docs/manual/mysql.tex b/docs/manual/mysql.tex index ae81bc66..6ab5ec5a 100644 --- a/docs/manual/mysql.tex +++ b/docs/manual/mysql.tex @@ -1,16 +1,14 @@ %% %% -\section*{Installing and Configuring MySQL} +\chapter{Installing and Configuring MySQL} \label{_ChapterStart} \index[general]{MySQL!Installing and Configuring } \index[general]{Installing and Configuring MySQL } -\addcontentsline{toc}{section}{Installing and Configuring MySQL} -\subsection*{Installing and Configuring MySQL -- Phase I} +\section{Installing and Configuring MySQL -- Phase I} \index[general]{Installing and Configuring MySQL -- Phase I } \index[general]{Phase I!Installing and Configuring MySQL -- } -\addcontentsline{toc}{subsection}{Installing and Configuring MySQL -- Phase I} If you use the ./configure \verb:--:with-mysql=mysql-directory statement for configuring {\bf Bacula}, you will need MySQL version 3.23.53 or later @@ -118,10 +116,9 @@ second phase of the MySQL installation are created during the Bacula Installation. \label{mysql_phase2} -\subsection*{Installing and Configuring MySQL -- Phase II} +\section{Installing and Configuring MySQL -- Phase II} \index[general]{Installing and Configuring MySQL -- Phase II } \index[general]{Phase II!Installing and Configuring MySQL -- } -\addcontentsline{toc}{subsection}{Installing and Configuring MySQL -- Phase II} At this point, you should have built and installed MySQL, or already have a @@ -189,10 +186,9 @@ select * from user; \end{verbatim} \normalsize -\subsection*{Re-initializing the Catalog Database} +\section{Re-initializing the Catalog Database} \index[general]{Database!Re-initializing the Catalog } \index[general]{Re-initializing the Catalog Database } -\addcontentsline{toc}{subsection}{Re-initializing the Catalog Database} After you have done some initial testing with {\bf Bacula}, you will probably want to re-initialize the catalog database and throw away all the test Jobs @@ -221,10 +217,9 @@ end of file mark on the volume so that Bacula can reuse it. Do so with: Where you should replace {\bf /dev/nst0} with the appropriate tape drive device name for your machine. -\subsection*{Linking Bacula with MySQL} +\section{Linking Bacula with MySQL} \index[general]{Linking Bacula with MySQL } \index[general]{MySQL!Linking Bacula with } -\addcontentsline{toc}{subsection}{Linking Bacula with MySQL} After configuring Bacula with @@ -266,10 +261,9 @@ LDFLAGS="-lssl -lcyrpto" \ \end{verbatim} \normalsize -\subsection*{Installing MySQL from RPMs} +\section{Installing MySQL from RPMs} \index[general]{MySQL!Installing from RPMs} \index[general]{Installing MySQL from RPMs} -\addcontentsline{toc}{subsection}{Installing MySQL from RPMs} If you are installing MySQL from RPMs, you will need to install both the MySQL binaries and the client libraries. The client libraries are usually found in a devel package, so you must @@ -284,10 +278,9 @@ install: This will be the same with most other package managers too. -\subsection*{Upgrading MySQL} +\section{Upgrading MySQL} \index[general]{Upgrading MySQL } \index[general]{Upgrading!MySQL } -\addcontentsline{toc}{subsection}{Upgrading MySQL} If you upgrade MySQL, you must reconfigure, rebuild, and re-install Bacula otherwise you are likely to get bizarre failures. If you install from rpms and you upgrade MySQL, you must also rebuild Bacula. diff --git a/docs/manual/oldfileset.tex b/docs/manual/oldfileset.tex index 8771d92f..2197fd57 100644 --- a/docs/manual/oldfileset.tex +++ b/docs/manual/oldfileset.tex @@ -1,12 +1,11 @@ %% %% -\section*{The Old FileSet Resource} +\chapter{The Old FileSet Resource} \label{_ChapterStart} \label{FileSetResource} \index[general]{Resource!Old FileSet } \index[general]{Old FileSet Resource } -\addcontentsline{toc}{section}{Old FileSet Resource} Note, this form of the FileSet resource still works but has been replaced by a new more flexible form in Bacula version 1.34.3. As a consequence, you are @@ -570,10 +569,9 @@ precaution, you are strongly urged to ensure that the raw partition is not mounted or is mounted read-only. If necessary, this can be done using the {\bf RunBeforeJob} record. -\subsection*{Additional Considerations for Using Excludes on Windows} +\section{Additional Considerations for Using Excludes on Windows} \index[general]{Additional Considerations for Using Excludes on Windows } \index[general]{Windows!Additional Considerations for Using Excludes on } -\addcontentsline{toc}{subsection}{Additional Considerations for Using Excludes on Windows} For exclude lists to work correctly on Windows, you must observe the following @@ -596,10 +594,9 @@ try using the {\bf estimate job=xxx listing} command documented in the \ilink{Console chapter}{console.tex#estimate} of this manual. \label{win32} -\subsection*{Windows Considerations for FileSets} +\section{Windows Considerations for FileSets} \index[general]{FileSets!Windows Considerations for } \index[general]{Windows Considerations for FileSets } -\addcontentsline{toc}{subsection}{Windows Considerations for FileSets} If you are entering Windows file names, the directory path may be preceded by the drive and a colon (as in c:). However, the path separators must be @@ -633,10 +630,9 @@ drive letter in exclusions on Win32 systems, you can do so by specifying: where in this case, the {\bf /cygdrive/d} is Cygwin's way of referring to drive {\bf d:} (thanks to Mathieu Arnold for this tip). -\subsection*{A Windows Example FileSet} +\section{A Windows Example FileSet} \index[general]{FileSet!Windows Example } \index[general]{Windows Example FileSet } -\addcontentsline{toc}{subsection}{Windows Example FileSet} The following example was contributed by Phil Stracchino: diff --git a/docs/manual/pools.tex b/docs/manual/pools.tex index 60d512b1..e4451519 100644 --- a/docs/manual/pools.tex +++ b/docs/manual/pools.tex @@ -1,14 +1,12 @@ %% %% -\section*{Automated Disk Backup} +\chapter{Automated Disk Backup} \label{_ChapterStart11} \index[general]{Volumes!Using Pools to Manage} \index[general]{Disk!Automated Backup} \index[general]{Using Pools to Manage Volumes} \index[general]{Automated Disk Backup} -\addcontentsline{toc}{section}{Using Pools to Manage Volumes} -\addcontentsline{toc}{section}{Automated Disk Backup} If you manage five or ten machines and have a nice tape backup, you don't need Pools, and you may wonder what they are good for. In this chapter, you will @@ -20,9 +18,8 @@ The rest of this chapter will give an example involving backup to disk Volumes, but most of the information applies equally well to tape Volumes. \label{TheProblem} -\subsection*{The Problem} +\section{The Problem} \index[general]{Problem} -\addcontentsline{toc}{subsection}{Problem} A site that I administer (a charitable organization) had a tape DDS-3 tape drive that was failing. The exact reason for the failure is still unknown. @@ -31,9 +28,8 @@ broken DDS-3 was at best 8GB (rated 6/12). A new DDS-4 tape drive and the necessary cassettes was more expensive than their budget could handle. \label{TheSolution} -\subsection*{The Solution} +\section{The Solution} \index[general]{Solution} -\addcontentsline{toc}{subsection}{Solution} They want to maintain six months of backup data, and be able to access the old files on a daily basis for a week, a weekly basis for a month, then monthly @@ -52,15 +48,15 @@ The rest of this chapter will explain how to setup Bacula so that it would automatically manage a set of disk files with the minimum intervention on my part. The system has been running since 22 January 2004 until today (17 September 2006) with no intervention, with the exception that I had to +% TODO: is this relevant for book? rewrite this part? add a second 120GB hard disk after a year because their needs grew over that time to more than the 120GB (168GB to be exact). The only other intervention I have made is a periodic (about once a year) Bacula upgrade. \label{OverallDesign} -\subsection*{Overall Design} +\section{Overall Design} \index[general]{Overall Design} \index[general]{Design!Overall} -\addcontentsline{toc}{subsection}{Overall Design} Getting Bacula to write to disk rather than tape in the simplest case is rather easy, and is documented in the previous chapter. In addition, all the @@ -101,10 +97,9 @@ saves, and one for Incremental saves, and each would have a different number of volumes and a different Retention period to accomplish the requirements. \label{FullPool} -\subsubsection*{Full Pool} +\subsection{Full Pool} \index[general]{Pool!Full} \index[general]{Full Pool} -\addcontentsline{toc}{subsubsection}{Full Pool} Putting a single Full backup on each Volume, will require six Full save Volumes, and a retention period of six months. The Pool needed to do that is: @@ -132,10 +127,9 @@ labeled Full-0001, ... Full-0006 automatically. One could have labeled these manual from the start, but why not use the features of Bacula. \label{DiffPool} -\subsubsection*{Differential Pool} +\subsection{Differential Pool} \index[general]{Pool!Differential} \index[general]{Differential Pool} -\addcontentsline{toc}{subsubsection}{Differential Pool} For the Differential backup Pool, we choose a retention period of a bit longer than a month and ensure that there is at least one Volume for each of the @@ -162,10 +156,9 @@ there is one job per volume. This, of course, could be tightened up a lot, but the expense here is a few GB which is not too serious. \label{IncPool} -\subsubsection*{Incremental Pool} +\subsection{Incremental Pool} \index[general]{Incremental Pool} \index[general]{Pool!Incremental} -\addcontentsline{toc}{subsubsection}{Incremental Pool} Finally, here is the resource for the Incremental Pool: @@ -193,10 +186,9 @@ full steady state, we can adjust these values so that the total disk usage doesn't exceed the disk capacity. \label{Example} -\subsection*{The Actual Conf Files} +\section{The Actual Conf Files} \index[general]{Files!Actual Conf} \index[general]{Actual Conf Files} -\addcontentsline{toc}{subsection}{Actual Conf Files} The following example shows you the actual files used, with only a few minor modifications to simplify things. diff --git a/docs/manual/postgresql.tex b/docs/manual/postgresql.tex index cdf177f3..211d8632 100644 --- a/docs/manual/postgresql.tex +++ b/docs/manual/postgresql.tex @@ -1,11 +1,10 @@ %% %% -\section*{Installing and Configuring PostgreSQL} +\chapter{Installing and Configuring PostgreSQL} \label{_ChapterStart10} \index[general]{PostgreSQL!Installing and Configuring } \index[general]{Installing and Configuring PostgreSQL } -\addcontentsline{toc}{section}{Installing and Configuring PostgreSQL} Warning!!! If you are considering using PostreSQL, you should be aware of their philosophy of upgrades, which could be @@ -18,11 +17,8 @@ If you forget to do the ASCII dump, your database may become totally useless because none of the new tools can access it due to the format change, and the PostgreSQL server will not be able to start. -\subsection*{Installing and Configuring PostgreSQL -- Phase I} -\index[general]{Installing and Configuring PostgreSQL -- Phase I } -\index[general]{Phase I!Installing and Configuring PostgreSQL -- } -\addcontentsline{toc}{subsection}{Installing and Configuring PostgreSQL -- -Phase I} +\section{Installing PostgreSQL} +\index[general]{PostgreSQL!Installing } If you use the {\bf ./configure \verb:--:with-postgresql=PostgreSQL-Directory} statement for configuring {\bf Bacula}, you will need PostgreSQL version 7.3 @@ -56,12 +52,9 @@ PostgreSQL installation even if you installed binaries (e.g. rpm, deb, ...). -\label{PostgreSQL_phase2} -\subsection*{Installing and Configuring PostgreSQL -- Phase II} -\index[general]{Phase II!Installing and Configuring PostgreSQL -- } -\index[general]{Installing and Configuring PostgreSQL -- Phase II } -\addcontentsline{toc}{subsection}{Installing and Configuring PostgreSQL -- -Phase II} +\label{PostgreSQL_configure} +\section{Configuring PostgreSQL} +\index[general]{PostgreSQL!Configuring PostgreSQL -- } At this point, you should have built and installed PostgreSQL, or already have a running PostgreSQL, and you should have configured, built and installed {\bf @@ -238,10 +231,9 @@ programs. The files must then have the owner and group set to match the user (so root:root for the copy in ~root, and so on), and the mode set to 600, limiting access to the owner of the file. -\subsection*{Re-initializing the Catalog Database} +\section{Re-initializing the Catalog Database} \index[general]{Database!Re-initializing the Catalog } \index[general]{Re-initializing the Catalog Database } -\addcontentsline{toc}{subsection}{Re-initializing the Catalog Database} After you have done some initial testing with {\bf Bacula}, you will probably want to re-initialize the catalog database and throw away all the test Jobs @@ -271,10 +263,9 @@ end of file mark on the volume so that Bacula can reuse it. Do so with: Where you should replace {\bf /dev/nst0} with the appropriate tape drive device name for your machine. -\subsection*{Installing PostgreSQL from RPMs} +\section{Installing PostgreSQL from RPMs} \index[general]{PostgreSQL!Installing from RPMs} \index[general]{Installing PostgreSQL from RPMs} -\addcontentsline{toc}{subsection}{Installing PostgreSQL from RPMs} If you are installing PostgreSQL from RPMs, you will need to install both the PostgreSQL binaries and the client libraries. The client libraries are usually found in a devel package, so you must @@ -292,10 +283,9 @@ installing from rpms, you will still need to run the scripts that set up the database and create the tables as described above. -\subsection*{Converting from MySQL to PostgreSQL} +\section{Converting from MySQL to PostgreSQL} \index[general]{PostgreSQL!Converting from MySQL to } \index[general]{Converting from MySQL to PostgreSQL } -\addcontentsline{toc}{subsection}{Converting from MySQL to PostgreSQL} The conversion procedure presented here was worked out by Norm Dressler \lt{}ndressler at dinmar dot com\gt{} @@ -418,10 +408,9 @@ SELECT SETVAL('pool_poolid_seq', (SELECT MAX(poolid) FROM pool)); a test backup to make sure everything is working properly. \end{enumerate} -\subsection*{Upgrading PostgreSQL} +\section{Upgrading PostgreSQL} \index[general]{Upgrading PostgreSQL } \index[general]{Upgrading!PostgreSQL } -\addcontentsline{toc}{subsection}{Upgrading PostgreSQL} If you upgrade PostgreSQL, you must reconfigure, rebuild, and re-install Bacula otherwise you are likely to get bizarre failures. If you to modify the bacula.spec file to account for the new PostgreSQL version. @@ -429,8 +418,7 @@ You can do so by rebuilding from the source rpm. To do so, you may need install from rpms and you upgrade PostgreSQL, you must also rebuild Bacula. -\subsection*{Credits} +\section{Credits} \index[general]{Credits } -\addcontentsline{toc}{subsection}{Credits} Many thanks to Dan Langille for writing the PostgreSQL driver. This will surely become the most popular database that Bacula supports. diff --git a/docs/manual/progs.tex b/docs/manual/progs.tex index ee4d9387..1e71dce1 100644 --- a/docs/manual/progs.tex +++ b/docs/manual/progs.tex @@ -1,18 +1,16 @@ %% %% -\section*{Volume Utility Tools} +\chapter{Volume Utility Tools} \label{_UtilityChapter} \index[general]{Volume Utility Tools} \index[general]{Tools!Volume Utility} -\addcontentsline{toc}{section}{Volume Utility Tools} This document describes the utility programs written to aid Bacula users and developers in dealing with Volumes external to Bacula. -\subsection*{Specifying the Configuration File} +\section{Specifying the Configuration File} \index[general]{Specifying the Configuration File} -\addcontentsline{toc}{subsection}{Specifying the Configuration File} Starting with version 1.27, each of the following programs requires a valid Storage daemon configuration file (actually, the only part of the @@ -23,10 +21,9 @@ bacula-sd.conf} in the current directory, but you may specify a different configuration file using the {\bf -c} option. -\subsection*{Specifying a Device Name For a Tape} +\section{Specifying a Device Name For a Tape} \index[general]{Tape!Specifying a Device Name For a} \index[general]{Specifying a Device Name For a Tape} -\addcontentsline{toc}{subsection}{Specifying a Device Name For a Tape} Each of these programs require a {\bf device-name} where the Volume can be found. In the case of a tape, this is the physical device name such as {\bf @@ -40,10 +37,9 @@ one of these programs, you will either need to stop the Storage daemon, or will {\bf busy} because Bacula is using it. -\subsection*{Specifying a Device Name For a File} +\section{Specifying a Device Name For a File} \index[general]{File!Specifying a Device Name For a} \index[general]{Specifying a Device Name For a File} -\addcontentsline{toc}{subsection}{Specifying a Device Name For a File} If you are attempting to read or write an archive file rather than a tape, the {\bf device-name} should be the full path to the archive location including @@ -53,10 +49,9 @@ must have the same entry in the configuration file. So, the path is equivalent to the archive device name, and the filename is equivalent to the volume name. -\subsection*{Specifying Volumes} +\section{Specifying Volumes} \index[general]{Volumes!Specifying} \index[general]{Specifying Volumes} -\addcontentsline{toc}{subsection}{Specifying Volumes} In general, you must specify the Volume name to each of the programs below (with the exception of {\bf btape}). The best method to do so is to specify a @@ -112,11 +107,10 @@ accept any volume. For example: \end{verbatim} \normalsize -\subsection*{bls} +\section{bls} \label{bls} \index[general]{bls} \index[general]{program!bls} -\addcontentsline{toc}{subsection}{bls} {\bf bls} can be used to do an {\bf ls} type listing of a {\bf Bacula} tape or file. It is called: @@ -190,10 +184,9 @@ bls: Got EOF on device /tmp \end{verbatim} \normalsize -\subsubsection*{Listing Jobs} +\subsection{Listing Jobs} \index[general]{Listing Jobs with bls} \index[general]{bls!Listing Jobs} -\addcontentsline{toc}{subsubsection}{bls Listing Jobs} If you are listing a Volume to determine what Jobs to restore, normally the {\bf -j} option provides you with most of what you will need as long as you @@ -227,10 +220,9 @@ shows a full save followed by two incremental saves. Adding the {\bf -v} option will display virtually all information that is available for each record: -\subsubsection*{Listing Blocks} +\subsection{Listing Blocks} \index[general]{Listing Blocks with bls} \index[general]{bls!Listing Blocks} -\addcontentsline{toc}{subsubsection}{bls Listing Blocks} Normally, except for debugging purposes, you will not need to list Bacula blocks (the "primitive" unit of Bacula data on the Volume). However, you can @@ -317,11 +309,10 @@ bls: block.c:92 Rec: VId=1 VT=1035062102 FI=6 Strm=MD5 len=16 p=8101841 \end{verbatim} \normalsize -\subsection*{bextract} +\section{bextract} \label{bextract} \index[general]{Bextract} \index[general]{program!bextract} -\addcontentsline{toc}{subsection}{bextract} If you find yourself using {\bf bextract}, you probably have done something wrong. For example, if you are trying to recover a file @@ -365,10 +356,9 @@ d:/tmp/My Documents}. That is, the original drive specification will be stripped. If no prefix is specified, the file will be restored to the original drive. -\subsubsection*{Extracting with Include or Exclude Lists} +\subsection{Extracting with Include or Exclude Lists} \index[general]{Lists!Extracting with Include or Exclude} \index[general]{Extracting with Include or Exclude Lists} -\addcontentsline{toc}{subsubsection}{Extracting with Include or Exclude Lists} Using the {\bf -e} option, you can specify a file containing a list of files to be excluded. Wildcards can be used in the exclusion list. This option will @@ -408,10 +398,9 @@ restored files will be placed in a file of the original name under the directory {\bf /tmp} (i.e. /tmp/home/kern/bacula/... and /tmp/usr/local/bin/...). -\subsubsection*{Extracting With a Bootstrap File} +\subsection{Extracting With a Bootstrap File} \index[general]{File!Extracting With a Bootstrap} \index[general]{Extracting With a Bootstrap File} -\addcontentsline{toc}{subsubsection}{Extracting With a Bootstrap File} The {\bf -b} option is used to specify a {\bf bootstrap} file containing the information needed to restore precisely the files you want. Specifying a {\bf @@ -434,10 +423,9 @@ exclude files at the same time. The bootstrap conditions will first be applied, and then each file record seen will be compared to the include and exclude lists. -\subsubsection*{Extracting From Multiple Volumes} +\subsection{Extracting From Multiple Volumes} \index[general]{Volumes!Extracting From Multiple} \index[general]{Extracting From Multiple Volumes} -\addcontentsline{toc}{subsubsection}{Extracting From Multiple Volumes} If you wish to extract files that span several Volumes, you can specify the Volume names in the bootstrap file or you may specify the Volume names on the @@ -446,11 +434,10 @@ under the {\bf bls} program entitled {\bf Listing Multiple Volumes} for more information. The same techniques apply equally well to the {\bf bextract} program. -\subsection*{bscan} +\section{bscan} \label{bscan} \index[general]{bscan} \index[general]{program!bscan} -\addcontentsline{toc}{subsection}{bscan} If you find yourself using this program, you have probably done something wrong. For example, the best way to recover a lost or damaged Bacula @@ -571,10 +558,9 @@ not restored by bscan. The results of bscanning are, however, perfectly valid, and will permit restoration of any or all the files in the catalog using the normal Bacula console commands. -\subsubsection*{Using bscan to Compare a Volume to an existing Catalog} +\subsection{Using bscan to Compare a Volume to an existing Catalog} \index[general]{Catalog!Using bscan to Compare a Volume to an existing} \index[general]{Using bscan to Compare a Volume to an existing Catalog} -\addcontentsline{toc}{subsubsection}{Using bscan to Compare a Volume to an existing Catalog} If you wish to compare the contents of a Volume to an existing catalog without @@ -584,10 +570,9 @@ specify either the {\bf -m} or the {\bf -s} options. However, at this time as they should be, so we don't particularly recommend this mode other than for testing. -\subsubsection*{Using bscan to Recreate a Catalog from a Volume} +\subsection{Using bscan to Recreate a Catalog from a Volume} \index[general]{Volume!Using bscan to Recreate a Catalog from a} \index[general]{Using bscan to Recreate a Catalog from a Volume} -\addcontentsline{toc}{subsubsection}{Using bscan to Recreate a Catalog from a Volume} This is the mode for which {\bf bscan} is most useful. You can either {\bf @@ -702,10 +687,9 @@ contained in the database is not saved to the tape. Nevertheless, the reconstruction is sufficiently complete, that you can run {\bf restore} against it and get valid results. -\subsubsection*{Using bscan to Correct the Volume File Count} +\subsection{Using bscan to Correct the Volume File Count} \index[general]{Using bscan to Correct the Volume File Count} \index[general]{Count!Using bscan to Correct the Volume File} -\addcontentsline{toc}{subsubsection}{Using bscan to Correct the Volume File Count} If the Storage daemon crashes during a backup Job, the catalog will not be @@ -718,10 +702,9 @@ from what is in the catalog. To correct this situation, you may run a {\bf bscan} with the {\bf -m} option (but {\bf without} the {\bf -s} option) to update only the final Media record for the Volumes read. -\subsubsection*{After bscan} +\subsection{After bscan} \index[general]{After bscan} \index[general]{Bscan!After} -\addcontentsline{toc}{subsubsection}{After bscan} If you use {\bf bscan} to enter the contents of the Volume into an existing catalog, you should be aware that the records you entered may be immediately @@ -733,11 +716,10 @@ having it immediately purged. When you have restored and backed up the data, you can reset the VolStatus to {\bf Used} and the Volume will be purged from the catalog. -\subsection*{bcopy} +\section{bcopy} \label{bcopy} \index[general]{Bcopy} \index[general]{program!bcopy} -\addcontentsline{toc}{subsection}{bcopy} The {\bf bcopy} program can be used to copy one {\bf Bacula} archive file to another. For example, you may copy a tape to a file, a file to a tape, a file @@ -749,10 +731,9 @@ contains valid backup data, cannot be accessed directly from existing catalog entries. If you wish to be able to use the Volume with the Console restore command, for example, you must first bscan the new Volume into the catalog. -\subsubsection*{bcopy Command Options} +\subsection{bcopy Command Options} \index[general]{Options!bcopy Command} \index[general]{Bcopy Command Options} -\addcontentsline{toc}{subsubsection}{bcopy Command Options} \footnotesize \begin{verbatim} @@ -780,11 +761,10 @@ As this is a new program, any feedback on its use would be appreciated. In addition, I only have a single tape drive, so I have never been able to test this program with two tape drives. -\subsection*{btape} +\section{btape} \label{btape} \index[general]{Btape} \index[general]{program!btape} -\addcontentsline{toc}{subsection}{btape} This program permits a number of elementary tape operations via a tty command interface. It works only with tapes and not with other kinds of Bacula @@ -820,10 +800,9 @@ Usage: btape \end{verbatim} \normalsize -\subsubsection*{Using btape to Verify your Tape Drive} +\subsection{Using btape to Verify your Tape Drive} \index[general]{Using btape to Verify your Tape Drive} \index[general]{Drive!Using btape to Verify your Tape} -\addcontentsline{toc}{subsubsection}{Using btape to Verify your Tape Drive} An important reason for this program is to ensure that a Storage daemon configuration file is defined so that Bacula will correctly read and write @@ -837,10 +816,9 @@ reasonably self explanatory. Please see the \ilink{Tape Testing}{_ChapterStart27} Chapter of this manual for the details. -\subsubsection*{btape Commands} +\subsection{btape Commands} \index[general]{Btape Commands} \index[general]{Commands!btape} -\addcontentsline{toc}{subsubsection}{btape Commands} The full list of commands are: @@ -901,19 +879,17 @@ In the event that you want to relabel a {\bf Bacula}, you can simply use the note for labeling tapes, we recommend that you use the {\bf label} command in the {\bf Console} program since it will never overwrite a valid Bacula tape. -\subsection*{Other Programs} +\section{Other Programs} \index[general]{Programs!Other} \index[general]{Other Programs} -\addcontentsline{toc}{subsection}{Other Programs} The following programs are general utility programs and in general do not need a configuration file nor a device name. -\subsection*{bsmtp} +\section{bsmtp} \label{bsmtp} \index[general]{Bsmtp} \index[general]{program!bsmtp} -\addcontentsline{toc}{subsection}{bsmtp} {\bf bsmtp} is a simple mail transport program that permits more flexibility than the standard mail programs typically found on Unix systems. It can even @@ -985,16 +961,16 @@ syntax of the from part of the message. Please test. When running {\bf bsmtp} by hand, you will need to terminate the message by entering a ctl-d in column 1 of the last line. +% TODO: is "column" the correct terminology for this? 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. -\subsection*{dbcheck} +\section{dbcheck} \label{dbcheck} \index[general]{Dbcheck} \index[general]{program!dbcheck} -\addcontentsline{toc}{subsection}{dbcheck} {\bf dbcheck} is a simple program that will search for logical inconsistencies in the Bacula tables in your database, and optionally fix them. It is a database maintenance routine, in the sense that it can @@ -1140,11 +1116,10 @@ you should never need to run dbcheck in spite of the recommendations given above, which are given so that users don't waste their time running dbcheck too often. -\subsection*{bregex} +\section{bregex} \label{regex} \index[general]{bregex} \index[general]{program!bregex} -\addcontentsline{toc}{subsection}{bregex} {\bf bregex} is a simple program that will allow you to test regular expressions against a file of data. This can be useful @@ -1177,11 +1152,10 @@ and you can suppress printing of line numbers with the -l option. This program can be useful for testing regex expressions to be applied against a list of filenames. -\subsection*{bwild} +\section{bwild} \label{wild} \index[general]{bwild} \index[general]{program!bwild} -\addcontentsline{toc}{subsection}{bwild} {\bf bwild} is a simple program that will allow you to test wild-card expressions against a file of data. @@ -1212,11 +1186,10 @@ and you can suppress printing of line numbers with the -l option. This program can be useful for testing wild expressions to be applied against a list of filenames. -\subsection*{testfind} +\section{testfind} \label{testfind} \index[general]{Testfind} \index[general]{program!testfind} -\addcontentsline{toc}{subsection}{testfind} {\bf testfind} permits listing of files using the same search engine that is used for the {\bf Include} resource in Job resources. Note, much of the diff --git a/docs/manual/projects.tex b/docs/manual/projects.tex index 5e7b901e..761a36f7 100644 --- a/docs/manual/projects.tex +++ b/docs/manual/projects.tex @@ -1,11 +1,10 @@ %% %% -\section*{Bacula Projects} +\chapter{Bacula Projects} \label{_ChapterStart28} \index[general]{Projects!Bacula } \index[general]{Bacula Projects } -\addcontentsline{toc}{section}{Bacula Projects} Once a new major version of Bacula is released, the Bacula users will vote on a list of new features. This vote is used diff --git a/docs/manual/python.tex b/docs/manual/python.tex index a87d950a..45e3533e 100644 --- a/docs/manual/python.tex +++ b/docs/manual/python.tex @@ -1,11 +1,10 @@ %% %% -\section*{Python Scripting} +\chapter{Python Scripting} \label{_ChapterStart60} \index[general]{Python Scripting} \index[general]{Scripting!Python} -\addcontentsline{toc}{section}{Python Scripting} You may be asking what Python is and why a scripting language is needed in Bacula. The answer to the first question is that Python @@ -17,10 +16,9 @@ the simplest example is when Bacula needs a new Volume name, with a scripting language such as Python, you can generate any name you want, based on the current state of Bacula. -\subsection*{Python Configuration} +\section{Python Configuration} \index[general]{Python Configuration} \index[general]{Configuration!Python} -\addcontentsline{toc}{subsection}{Python Configuration} Python must be enabled during the configuration process by adding a \verb:--:with-python, and possibly specifying an alternate @@ -61,10 +59,9 @@ you will not need, but you should keep all the Bacula Event and Job Event definitions. If you do not want a particular event, simply replace the existing code with a {\bf noop = 1}. -\subsection*{Bacula Events} +\section{Bacula Events} \index[general]{Bacula Events} \index[general]{Events} -\addcontentsline{toc}{subsection}{Bacula Events} A Bacula event is a point in the Bacula code where Bacula will call a subroutine (actually a method) that you have defined in the Python StartUp script. Events correspond @@ -76,10 +73,9 @@ it can even call some of the Job methods (subroutines) or set new values in the Job attributes, such as the Priority. You will see below how the events are used. -\subsection*{Python Objects} +\section{Python Objects} \index[general]{Python Objects} \index[general]{Objects!Python} -\addcontentsline{toc}{subsection}{Python Objects} There are four Python objects that you will need to work with: \begin{description} @@ -330,10 +326,9 @@ Director: NewVolume event. \end{description} -\subsection*{Python Console Command} +\section{Python Console Command} \index[general]{Python Console Command} \index[general]{Console Command!Python} -\addcontentsline{toc}{subsection}{Python Console Command} There is a new Console command named {\bf python}. It takes a single argument {\bf restart}. Example: @@ -346,9 +341,8 @@ This can be useful when you are modifying the DirStartUp script, because normally Python will cache it, and thus the script will be read one time. -\subsection*{Debugging Python Scripts} +\section{Debugging Python Scripts} \index[general]{Debugging Python Scripts} -\addcontentsline{toc}{subsection}{Debugging Python Scripts} In general, you debug your Python scripts by using print statements. You can also develop your script or important parts of it as a separate file using the Python interpreter to run it. Once you @@ -389,10 +383,9 @@ it all should work as you expect. -\subsection*{Python Example} +\section{Python Example} \index[general]{Python Example} \index[general]{Example!Python} -\addcontentsline{toc}{subsection}{Python Example} An example script for the Director startup file is provided in {\bf examples/python/DirStartup.py} as follows: diff --git a/docs/manual/quickstart.tex b/docs/manual/quickstart.tex index 94a7628c..ce600ef4 100644 --- a/docs/manual/quickstart.tex +++ b/docs/manual/quickstart.tex @@ -1,10 +1,10 @@ %% %% -\section*{Getting Started with Bacula} +\chapter{Getting Started with Bacula} \label{_ChapterStart37} +% TODO: cleanup these labels to use descriptions not numbers \index[general]{Getting Started with Bacula } -\addcontentsline{toc}{section}{Getting Started with Bacula} If you are like me, you want to get Bacula running immediately to get a feel for it, then later you want to go back and read about all the details. This @@ -20,10 +20,9 @@ want to first look at the this manual. \label{JobsandSchedules} -\subsection*{Understanding Jobs and Schedules} +\section{Understanding Jobs and Schedules} \index[general]{Jobs!Understanding} \index[general]{Schedules!Understanding} -\addcontentsline{toc}{subsection}{Understanding Jobs and Schedules} In order to make Bacula as flexible as possible, the directions given to Bacula are specified in several pieces. The main instruction is the @@ -51,10 +50,9 @@ Finally, be aware that in addition to the backup jobs there are restore, verify, and admin jobs, which have different requirements. \label{PoolsVolsLabels} -\subsection*{Understanding Pools, Volumes and Labels} +\section{Understanding Pools, Volumes and Labels} \index[general]{Labels!Understanding Pools Volumes and } \index[general]{Understanding Pools, Volumes and Labels } -\addcontentsline{toc}{subsection}{Understanding Pools, Volumes and Labels} If you have been using a program such as {\bf tar} to backup your system, Pools, Volumes, and labeling may be a bit confusing at first. A Volume is a @@ -63,6 +61,7 @@ your backup data. Pools group together Volumes so that a backup is not restricted to the length of a single Volume (tape). Consequently, rather than explicitly naming Volumes in your Job, you specify a Pool, and Bacula will select the next appendable Volume from the Pool and request you to mount it. +% TODO: can't it mount it itself if already available? Although the basic Pool options are specified in the Director's Pool resource, the {\bf real} Pool is maintained in the Bacula Catalog. It contains @@ -96,12 +95,12 @@ For more on Pools, see the Configuration chapter, or simply read on, and we will come back to this subject later. -\subsection*{Setting Up Bacula Configuration Files} +\section{Setting Up Bacula Configuration Files} \label{config} \index[general]{Setting Up Bacula Configuration Files } \index[general]{Files!Setting Up Bacula Configuration } -\addcontentsline{toc}{subsection}{Setting Up Bacula Configuration Files} +% TODO: this assumes installation from source: After running the appropriate {\bf ./configure} command and doing a {\bf make}, and a {\bf make install}, if this is the first time you are running Bacula, you must create valid configuration files @@ -121,11 +120,10 @@ right. Please do not despair. Once you have created your configuration files, you will rarely need to change them nor will you stop and start Bacula very often. Most of the work will simply be in changing the tape when it is full. -\subsubsection*{ +\subsection{ \ilink{Configuring the Console Program}{_ChapterStart36}} \index[general]{Configuring the Console Program } \index[general]{Program!Configuring the Console } -\addcontentsline{toc}{subsubsection}{Configuring the Console Program} The Console program is used by the administrator to interact with the Director and to manually start/stop Jobs or to obtain Job status information. @@ -148,11 +146,10 @@ is, in this case, {\bf wx-console.conf}. Normally, for first time users, no change is needed to these files. Reasonable defaults are set. -\subsubsection*{ +\subsection{ \ilink{Configuring the Monitor Program}{_MonitorChapter}} \index[general]{Program!Configuring the Monitor } \index[general]{Configuring the Monitor Program } -\addcontentsline{toc}{subsubsection}{Configuring the Monitor Program} The Monitor program is typically an icon in the system tray. However, once the icon is expanded into a full window, the administrator or user can obtain @@ -162,6 +159,7 @@ workstation or any other Bacula daemon that is configured. \addcontentsline{lof}{figure}{Bacula Tray Monitor} \includegraphics{./Bacula-tray-monitor.eps} +% TODO: image may be too wide for 6" wide printed page. The image shows a tray-monitor configured for three daemons. By clicking on the radio buttons in the upper left corner of the image, you can see the status for each of the daemons. The image shows the status for the Storage @@ -177,11 +175,10 @@ graphical environment (don't forget to allow non-root users to execute {\bf bacula-tray-monitor}). This is not a security problem as long as you use the default settings. -\subsubsection*{ +\subsection{ \ilink{Configuring the File daemon}{_ChapterStart25}} \index[general]{Daemon!Configuring the File } \index[general]{Configuring the File daemon } -\addcontentsline{toc}{subsubsection}{Configuring the File daemon} The File daemon is a program that runs on each (Client) machine. At the request of the Director, finds the files to be backed up and sends them (their @@ -195,12 +192,13 @@ file. Reasonable defaults are set. However, if you are going to back up more than one machine, you will need to install the File daemon with a unique configuration file on each machine to be backed up. The information about each File daemon must appear in the Director's configuration file. +% TODO: point to section about how to install just the File daemon +% TODO: and creating the unique configuration file. -\subsubsection*{ +\subsection{ \ilink{Configuring the Director}{_ChapterStart40}} \index[general]{Director!Configuring the } \index[general]{Configuring the Director } -\addcontentsline{toc}{subsubsection}{Configuring the Director} The Director is the central control program for all the other daemons. It schedules and monitors all jobs to be backed up. @@ -213,6 +211,7 @@ In general, the only change you must make is modify the FileSet resource so that the {\bf Include} configuration directive contains at least one line with a valid name of a directory (or file) to be saved. +% TODO: is DLT still the default config? If you do not have a DLT tape drive, you will probably want to edit the Storage resource to contain names that are more representative of your actual storage device. You can always use the existing names as you are free to @@ -224,7 +223,14 @@ default {\bf root} to your email address. Finally, if you have multiple systems to be backed up, you will need a separate File daemon or Client specification for each system, specifying its +% TODO: I don't see any example "File" configuraton in the default +% TODO: bacula-dir.conf; I do see FileDaemon config in the default +% TODO: bacula-fd.conf. Be more clear about this or point to explanation +% TODO: about this. name, address, and password. We have found that giving your daemons the same +% TODO: what passwords should I use? I have different ones in the +% TODO: different configs on different systems. Point to explanation of +% this. name as your system but post fixed with {\bf -fd} helps a lot in debugging. That is, if your system name is {\bf foobaz}, you would give the File daemon the name {\bf foobaz-fd}. For the Director, you should use {\bf foobaz-dir}, @@ -234,12 +240,12 @@ make them all the same, aside from the fact that you will not know what daemon is sending what message, if they share the same working directory, the daemons temporary file names will not be unique, and you will get many strange failures. +% TODO: why not check for that and not allow sharing working directory? -\subsubsection*{ +\subsection{ \ilink{Configuring the Storage daemon}{_ChapterStart31}} \index[general]{Daemon!Configuring the Storage } \index[general]{Configuring the Storage daemon } -\addcontentsline{toc}{subsubsection}{Configuring the Storage daemon} The Storage daemon is responsible, at the Director's request, for accepting data from a File daemon and placing it on Storage media, or in the case of a @@ -257,16 +263,18 @@ instead of a tape, the Archive device must point to a directory in which the Volumes will be created as files when you label the Volume. \label{ConfigTesting} -\subsection*{Testing your Configuration Files} +\section{Testing your Configuration Files} \index[general]{Testing your Configuration Files } \index[general]{Files!Testing your Configuration } -\addcontentsline{toc}{subsection}{Testing your Configuration Files} You can test if your configuration file is syntactically correct by running the appropriate daemon with the {\bf -t} option. The daemon will process the configuration file and print any error messages then terminate. For example, assuming you have installed your binaries and configuration files in the same directory. +% TODO: why assume that? common default install has the executable +% TODO: is in ./sbin and the configs are in ./etc. So maybe just have +% TODO: example correct or change default install to be same. \footnotesize \begin{verbatim} @@ -291,10 +299,9 @@ appropriately (no ./ in front of the command name, and a path in front of the conf file name). \label{TapeTesting} -\subsection*{Testing Bacula Compatibility with Your Tape Drive} +\section{Testing Compatibility with Your Tape Drive} \index[general]{Drive!Testing Bacula Compatibility with Your Tape } \index[general]{Testing Bacula Compatibility with Your Tape Drive } -\addcontentsline{toc}{subsection}{Testing Bacula Compatibility with Your Tape Drive} Before spending a lot of time on Bacula only to find that it doesn't work @@ -305,16 +312,20 @@ but better test than be sorry. For FreeBSD (and probably other xBSD flavors), reading the above mentioned tape testing chapter is a must. Also, for FreeBSD, please see \elink{The FreeBSD Diary}{http://www.freebsddiary.org/bacula.php} for a detailed description +%TODO: fix elink so it shows URL in PDF on how to make Bacula work on your system. In addition, users of FreeBSD prior to 4.9-STABLE dated Mon Dec 29 15:18:01 2003 UTC who plan to use tape devices, please see the file {\bf platforms/freebsd/pthreads-fix.txt} in the main Bacula directory concerning important information concerning compatibility of Bacula and your system. \label{notls} -\subsection*{Get Rid of the /lib/tls Directory} +\section{Get Rid of the /lib/tls Directory} \index[general]{Directory!Get Rid of the /lib/tls } \index[general]{Get Rid of the /lib/tls Directory } -\addcontentsline{toc}{subsection}{Get Rid of the /lib/tls Directory} + +% TODO: this seems dangerous -- how do you know if they don't use +% TODO: /lib/tls for something mission critical? Reword this or point to +% TODO: appropriate documentation. The new pthreads library {\bf /lib/tls} installed by default on recent Red Hat systems running Linux kernel 2.4.x is defective. You must remove it or rename it, @@ -329,10 +340,9 @@ This problem does not occur on systems running Linux 2.6.x kernels. \label{Running1} -\subsection*{Running Bacula} +\section{Running Bacula} \index[general]{Bacula!Running } \index[general]{Running Bacula } -\addcontentsline{toc}{subsection}{Running Bacula} Probably the most important part of running Bacula is being able to restore files. If you haven't tried recovering files at least once, when you actually @@ -344,10 +354,9 @@ recommend that you follow the example in the \ilink{Running Bacula Chapter}{_ChapterStart1} of this manual where you will get detailed instructions on how to run Bacula. -\subsection*{Log Rotation} +\section{Log Rotation} \index[general]{Rotation!Log } \index[general]{Log Rotation } -\addcontentsline{toc}{subsection}{Log Rotation} If you use the default {\bf bacula-dir.conf} or some variation of it, you will note that it logs all the Bacula output to a file. To avoid that this file grows without limit, we recommend that you copy the file {\bf logrotate} from @@ -355,10 +364,9 @@ the {\bf scripts/logrotate} to {\bf /etc/logrotate.d/bacula}. This will cause the log file to be rotated once a month and kept for a maximum of five months. You may want to edit this file to change the default log rotation preferences. -\subsection*{Log Watch} +\section{Log Watch} \index[general]{Watch!Log} \index[general]{Log Watch} -\addcontentsline{toc}{subsection}{Log Watch} Some systems such as Red Hat and Fedora run the logwatch program every night, which does an analysis of your log file and sends an email report. If you wish to include the output from your Bacula @@ -367,10 +375,9 @@ directory. The {\bf README} file in that directory gives a brief explanation on how to install it and what kind of output to expect. -\subsection*{Disaster Recovery} +\section{Disaster Recovery} \index[general]{Recovery!Disaster } \index[general]{Disaster Recovery } -\addcontentsline{toc}{subsection}{Disaster Recovery} If you intend to use Bacula as a disaster recovery tool rather than simply a program to restore lost or damaged files, you will want to read the diff --git a/docs/manual/recycling.tex b/docs/manual/recycling.tex index 9b44f07e..951b59b7 100644 --- a/docs/manual/recycling.tex +++ b/docs/manual/recycling.tex @@ -1,11 +1,10 @@ %% %% -\section*{Automatic Volume Recycling} +\chapter{Automatic Volume Recycling} \label{_ChapterStart22} \index[general]{Recycling!Automatic Volume } \index[general]{Automatic Volume Recycling } -\addcontentsline{toc}{section}{Automatic Volume Recycling} By default, once Bacula starts writing a Volume, it can append to the volume, but it will not overwrite the existing data thus destroying it. @@ -82,10 +81,9 @@ overwriting it. There are also a number of directives such as Used} and thus no longer appendable. \label{AutoPruning} -\subsection*{Automatic Pruning} +\section{Automatic Pruning} \index[general]{Automatic Pruning} \index[general]{Pruning!Automatic} -\addcontentsline{toc}{subsection}{Automatic Pruning} As Bacula writes files to tape, it keeps a list of files, jobs, and volumes in a database called the catalog. Among other things, the database helps @@ -107,10 +105,9 @@ starting to get too big, you could prune the oldest jobs to save space. Manual pruning is done with the \ilink{ prune command}{ManualPruning} in the console. (thanks to Bryce Denney for the above explanation). -\subsection*{Pruning Directives} +\section{Pruning Directives} \index[general]{Pruning Directives } \index[general]{Directives!Pruning } -\addcontentsline{toc}{subsection}{Pruning Directives} There are three pruning durations. All apply to catalog database records and not to the actual data in a Volume. The pruning (or retention) durations are @@ -207,6 +204,7 @@ volume. The Pool records that control the pruning are described below. additional details of time specification. The default is 1 year. +% TODO: if that is the format, should it be in quotes? decide on a style \item [Recycle = \lt{}yes|no\gt{}] \index[fd]{Recycle } @@ -225,10 +223,9 @@ The default is 1 year. \label{Recycling} \label{RecyclingAlgorithm} -\subsection*{Recycling Algorithm} +\section{Recycling Algorithm} \index[general]{Algorithm!Recycling } \index[general]{Recycling Algorithm } -\addcontentsline{toc}{subsection}{Recycling Algorithm} After all Volumes of a Pool have been pruned (as mentioned above, this happens when a Job needs a new Volume and no appendable Volumes are available), Bacula @@ -333,10 +330,9 @@ A few points from Alan Brown to keep in mind: \end{enumerate} -\subsection*{Recycle Status} +\section{Recycle Status} \index[general]{Status!Recycle } \index[general]{Recycle Status } -\addcontentsline{toc}{subsection}{Recycle Status} Each Volume inherits the Recycle status (yes or no) from the Pool resource record when the Media record is created (normally when the Volume is labeled). @@ -417,11 +413,10 @@ A typical volume life cycle is like this: \normalsize -\subsection*{Making Bacula Use a Single Tape} +\section{Making Bacula Use a Single Tape} \label{singletape} \index[general]{Tape!Making Bacula Use a Single} \index[general]{Making Bacula Use a Single Tape} -\addcontentsline{toc}{subsection}{Making Bacula Use a Single Tape} Most people will want Bacula to fill a tape and when it is full, a new tape will be mounted, and so on. However, as an extreme example, it is possible for @@ -450,11 +445,10 @@ Pool { \end{verbatim} \normalsize -\subsection*{A Daily, Weekly, Monthly Tape Usage Example} +\section{Daily, Weekly, Monthly Tape Usage Example} \label{usageexample} \index[general]{Daily, Weekly, Monthly Tape Usage Example } \index[general]{Example!Daily Weekly Monthly Tape Usage } -\addcontentsline{toc}{subsection}{Daily, Weekly, Monthly Tape Usage Example} This example is meant to show you how one could define a fixed set of volumes that Bacula will rotate through on a regular schedule. There are an infinite @@ -478,6 +472,7 @@ We start with the following assumptions: backup. \item Incremental backups are done Monday - Friday (actually Tue-Fri mornings). +% TODO: why this "actually"? does this need to be explained? \end{itemize} We start the system by doing a Full save to one of the weekly volumes or one @@ -566,11 +561,10 @@ Pool { \end{verbatim} \normalsize -\subsection*{ Automatic Pruning and Recycling Example} +\section{ Automatic Pruning and Recycling Example} \label{PruningExample} \index[general]{Automatic Pruning and Recycling Example } \index[general]{Example!Automatic Pruning and Recycling } -\addcontentsline{toc}{subsection}{Automatic Pruning and Recycling Example} Perhaps the best way to understand the various resource records that come into play during automatic pruning and recycling is to run a Job that goes through @@ -658,11 +652,10 @@ create the Volumes (Files) the first time it uses them. To turn it off, either delete all the resources you've added, or simply comment out the {\bf Schedule} record in the {\bf Job} resource. -\subsection*{Manually Recycling Volumes} +\section{Manually Recycling Volumes} \label{manualrecycling} \index[general]{Volumes!Manually Recycling } \index[general]{Manually Recycling Volumes } -\addcontentsline{toc}{subsection}{Manually Recycling Volumes} Although automatic recycling of Volumes is implemented in version 1.20 and later (see the diff --git a/docs/manual/requirements.tex b/docs/manual/requirements.tex index 460d9a86..ae6799e7 100644 --- a/docs/manual/requirements.tex +++ b/docs/manual/requirements.tex @@ -1,18 +1,16 @@ %% %% -\section*{System Requirements} +\chapter{System Requirements} \label{_ChapterStart51} \index[general]{System Requirements } \index[general]{Requirements!System } -\addcontentsline{toc}{section}{System Requirements} \label{SysReqs} -\subsection*{System Requirements} +\section{System Requirements} \index[general]{System Requirements } \index[general]{Requirements!System } -\addcontentsline{toc}{subsection}{System Requirements} \begin{itemize} \item {\bf Bacula} has been compiled and run on Red Hat Linux, FreeBSD, and diff --git a/docs/manual/restore.tex b/docs/manual/restore.tex index 40227e6a..1e838154 100644 --- a/docs/manual/restore.tex +++ b/docs/manual/restore.tex @@ -5,11 +5,9 @@ \label{RestoreChapter} \index[general]{Command!Bacula Console Restore } \index[general]{Bacula Console Restore Command } -\addcontentsline{toc}{section}{Bacula Console Restore Command} -\subsection*{General} +\section{General} \index[general]{General } -\addcontentsline{toc}{subsection}{General} Below, we will discuss restoring files with the Console {\bf restore} command, which is the recommended way of doing it. However, there is a standalone @@ -45,10 +43,9 @@ restore command prompts you to run the job by selecting the {\bf mod} option. \label{Example1} -\subsection*{The Restore Command} +\section{The Restore Command} \index[general]{Command!Restore } \index[general]{Restore Command } -\addcontentsline{toc}{subsection}{Restore Command} Since Bacula maintains a catalog of your files and on which Volumes (disk or tape), they are stored, it can do most of the bookkeeping work, allowing you @@ -423,10 +420,9 @@ daemon will first request Volume {\bf DLT-19Jul02} and after the appropriate files have been restored from that volume, it will request Volume {\bf DLT-04Aug02}. -\subsection*{Selecting Files by Filename} +\section{Selecting Files by Filename} \index[general]{Selecting Files by Filename } \index[general]{Filename!Selecting Files by } -\addcontentsline{toc}{subsection}{Selecting Files by Filename} If you have a small number of files to restore, and you know the filenames, you can either put the list of filenames in a file to be read by Bacula, or @@ -540,10 +536,9 @@ either a Job number or a Bootstrap file. Simply entering zero will allow you to continue and to select another option to be modified. \label{CommandArguments} -\subsection*{Command Line Arguments} +\section{Command Line Arguments} \index[general]{Arguments!Command Line } \index[general]{Command Line Arguments } -\addcontentsline{toc}{subsection}{Command Line Arguments} If all the above sounds complicated, you will probably agree that it really isn't after trying it a few times. It is possible to do everything that was @@ -594,10 +589,9 @@ The full list of possible command line arguments are: modifications (most useful in batch scripts). \end{itemize} -\subsection*{Restoring Directory Attributes} +\section{Restoring Directory Attributes} \index[general]{Attributes!Restoring Directory } \index[general]{Restoring Directory Attributes } -\addcontentsline{toc}{subsection}{Restoring Directory Attributes} Depending how you do the restore, you may or may not get the directory entries back to their original state. Here are a few of the problems you can @@ -641,10 +635,9 @@ encounter, and for same machine restores, how to avoid them. \end{itemize} \label{Windows} -\subsection*{Restoring on Windows} +\section{Restoring on Windows} \index[general]{Restoring on Windows } \index[general]{Windows!Restoring on } -\addcontentsline{toc}{subsection}{Restoring on Windows} If you are restoring on WinNT/2K/XP systems, Bacula will restore the files with the original ownerships and permissions as would be expected. This is @@ -673,10 +666,9 @@ Bacula (bacula-fd.exe) runs, from SYSTEM to a Domain Admin userid, resolves the problem. -\subsection*{Restoring Files Can Be Slow} +\section{Restoring Files Can Be Slow} \index[general]{Slow!Restoring Files Can Be } \index[general]{Restoring Files Can Be Slow } -\addcontentsline{toc}{subsection}{Restoring Files Can Be Slow} Restoring files is generally {\bf much} slower than backing them up for several reasons. The first is that during a backup the tape is normally already @@ -698,10 +690,9 @@ the file as Bacula is restoring it. For all the above reasons the restore process is generally much slower than backing up (sometimes it takes three times as long). -\subsection*{Problems Restoring Files} +\section{Problems Restoring Files} \index[general]{Files!Problems Restoring } \index[general]{Problems Restoring Files } -\addcontentsline{toc}{subsection}{Problems Restoring Files} The most frequent problems users have restoring files are error messages such as: @@ -756,10 +747,9 @@ what it is now after each individual test: created (at the Run yes/mod/no) prompt but before you start the restore. \end{enumerate} -\subsection*{Restore Errors} +\section{Restore Errors} \index[general]{Errors!Restore} \index[general]{Restore Errors} -\addcontentsline{toc}{subsection}{Restore Errors} There are a number of reasons why there may be restore errors or warning messages. Some of the more common ones are: @@ -793,10 +783,9 @@ warning messages. Some of the more common ones are: -\subsection*{Example Restore Job Resource} +\section{Example Restore Job Resource} \index[general]{Example Restore Job Resource } \index[general]{Resource!Example Restore Job } -\addcontentsline{toc}{subsection}{Example Restore Job Resource} \footnotesize \begin{verbatim} @@ -817,10 +806,9 @@ If {\bf Where} is not specified, the default location for restoring files will be their original locations. \label{Selection} -\subsection*{File Selection Commands} +\section{File Selection Commands} \index[general]{Commands!File Selection } \index[general]{File Selection Commands } -\addcontentsline{toc}{subsection}{File Selection Commands} After you have selected the Jobs to be restored and Bacula has created the in-memory directory tree, you will enter file selection mode as indicated by @@ -962,11 +950,10 @@ job. \end{description} \label{database_restore} -\subsection*{Restoring When Things Go Wrong} +\section{Restoring When Things Go Wrong} \index[general]{Restoring When Things Go Wrong } \index[general]{Restoring Your Database} \index[general]{Database!Restoring} -\addcontentsline{toc}{subsection}{Restoring When Things Go Wrong} This and the following sections will try to present a few of the kinds of problems that can come up making restoring more difficult. I'll try to diff --git a/docs/manual/rpm-faq.tex b/docs/manual/rpm-faq.tex index f7ce568b..2b196685 100644 --- a/docs/manual/rpm-faq.tex +++ b/docs/manual/rpm-faq.tex @@ -1,12 +1,10 @@ %% %% -\section*{Bacula\raisebox{.6ex}{{\footnotesize -\textsuperscript{\textregistered}}} - RPM Packaging FAQ} +\chapter{Bacula RPM Packaging FAQ} \label{_ChapterStart34} \index[general]{FAQ!Bacula\textsuperscript{\textregistered} - RPM Packaging } \index[general]{Bacula\textsuperscript{\textregistered} - RPM Packaging FAQ } -\addcontentsline{toc}{section}{Bacula\textsuperscript{\textregistered} - RPM Packaging FAQ} \begin{enumerate} @@ -33,9 +31,8 @@ Packaging FAQ} \ilink{I just upgraded from 1.36.x to 1.38.x and now my director daemon won't start. It appears to start but dies silently and I get a "connection refused" error when starting the console. What is wrong?}{faq8} \end{enumerate} -\subsection*{Answers} +\section{Answers} \index[general]{Answers } -\addcontentsline{toc}{subsection}{Answers} \begin{enumerate} \item @@ -248,9 +245,8 @@ For 64 bit support add '--define "build_x86_64 1"' \end{verbatim} \normalsize -\subsection*{Build Options} +\section{Build Options} \index[general]{Build Options} -\addcontentsline{toc}{subsection}{Build Options} The spec file currently supports building on the following platforms: \footnotesize \begin{verbatim} @@ -324,9 +320,8 @@ Modify the Packager tag for third party packages: \end{verbatim} \normalsize -\subsection*{RPM Install Problems} +\section{RPM Install Problems} \index[general]{RPM Install Problems} -\addcontentsline{toc}{subsection}{RPM Install Options} In general the RPMs, once properly built should install correctly. However, when attempting to run the daemons, a number of problems can occur: diff --git a/docs/manual/security.tex b/docs/manual/security.tex index 30db7d9f..cba37381 100644 --- a/docs/manual/security.tex +++ b/docs/manual/security.tex @@ -1,12 +1,11 @@ %% %% -\section*{Bacula Security Issues} +\chapter{Bacula Security Issues} \label{_ChapterStart14} \index[general]{Bacula Security Issues} \index[general]{Security} \index[general]{Issues!Bacula Security} -\addcontentsline{toc}{section}{Bacula Security Issues} \begin{itemize} \item Security means being able to restore your files, so read the @@ -53,9 +52,8 @@ \end{itemize} -\subsection*{Backward Compatibility} +\section{Backward Compatibility} \index[general]{Backward Compatibility} -\addcontentsline{toc}{subsection}{Backward Compatibility} One of the major goals of Bacula is to ensure that you can restore tapes (I'll use the word tape to include disk Volumes) that you wrote years ago. This means that each new version of Bacula should be able to read old @@ -95,12 +93,11 @@ save you someday. \label{wrappers} -\subsection*{Configuring and Testing TCP Wrappers} +\section{Configuring and Testing TCP Wrappers} \index[general]{Configuring and Testing TCP Wrappers} \index[general]{TCP Wrappers} \index[general]{Wrappers!TCP} \index[general]{libwrappers} -\addcontentsline{toc}{subsection}{Configuring and Testing TCP Wrappers} TCP Wrappers are implemented if you turn them on when configuring ({\bf ./configure \verb:--:with-tcp-wrappers}). @@ -242,11 +239,15 @@ access: delegated \end{verbatim} \normalsize -\subsection*{Running as non-root} +\section{Running as non-root} \index[general]{Running as non-root } -\addcontentsline{toc}{subsection}{Running as non-root} Security advice from Dan Langille: +% TODO: don't use specific name + +% TODO: don't be too specific on operating system + +% TODO: maybe remove personalization? It is a good idea to run daemons with the lowest possible privileges. In other words, if you can, don't run applications as root which do not have to @@ -256,9 +257,8 @@ In order to run as non-root, you need to create a user and a group. Choosing {\tt bacula} as both the user name and the group name sounds like a good idea to me. -The FreeBSD port creates this user and group for you (actually, as I write -this, the port doesn't do that, but it soon will). Here is what those entries -looked like on my FreeBSD laptop: +The FreeBSD port creates this user and group for you. +Here is what those entries looked like on my FreeBSD laptop: \footnotesize \begin{verbatim} diff --git a/docs/manual/spooling.tex b/docs/manual/spooling.tex index a72908e4..b6611bbf 100644 --- a/docs/manual/spooling.tex +++ b/docs/manual/spooling.tex @@ -1,11 +1,10 @@ %% %% -\section*{Data Spooling} +\chapter{Data Spooling} \label{SpoolingChapter} \index[general]{Data Spooling } \index[general]{Spooling!Data } -\addcontentsline{toc}{section}{Data Spooling} Bacula allows you to specify that you want the Storage daemon to initially write your data to disk and then subsequently to tape. This serves several @@ -45,10 +44,9 @@ The remainder of this chapter explains the various directives that you can use in the spooling process. \label{directives} -\subsection*{Data Spooling Directives} +\section{Data Spooling Directives} \index[general]{Directives!Data Spooling } \index[general]{Data Spooling Directives } -\addcontentsline{toc}{subsection}{Data Spooling Directives} The following directives can be used to control data spooling. @@ -87,10 +85,10 @@ The following directives can be used to control data spooling. \label{warning} -\subsection*{!!! MAJOR WARNING !!!} +% TODO: fix this section name +\section{!!! MAJOR WARNING !!!} \index[general]{WARNING! MAJOR } \index[general]{ MAJOR WARNING } -\addcontentsline{toc}{subsection}{MAJOR WARNING !!!} Please be very careful to exclude the spool directory from any backup, otherwise, your job will write enormous amounts of data to the Volume, and @@ -107,10 +105,9 @@ directory is on the same partition as the spool directory, then Bacula jobs will fail possibly in bizarre ways when the spool fills. \label{points} -\subsection*{Other Points} +\section{Other Points} \index[general]{Points!Other } \index[general]{Other Points } -\addcontentsline{toc}{subsection}{Other Points} \begin{itemize} \item When data spooling is enabled, Bacula automatically turns on attribute diff --git a/docs/manual/sqlite.tex b/docs/manual/sqlite.tex index c365b503..ac87d0e1 100644 --- a/docs/manual/sqlite.tex +++ b/docs/manual/sqlite.tex @@ -1,16 +1,14 @@ %% %% -\section*{Installing and Configuring SQLite} +\chapter{Installing and Configuring SQLite} \label{_ChapterStart33} \index[general]{Installing and Configuring SQLite } \index[general]{SQLite!Installing and Configuring } -\addcontentsline{toc}{section}{Installing and Configuring SQLite} -\subsection*{Installing and Configuring SQLite -- Phase I} +\section{Installing and Configuring SQLite -- Phase I} \index[general]{Phase I!Installing and Configuring SQLite -- } \index[general]{Installing and Configuring SQLite -- Phase I } -\addcontentsline{toc}{subsection}{Installing and Configuring SQLite -- Phase I} If you use the {\bf ./configure \verb:--:with-sqlite} statement for configuring {\bf @@ -54,11 +52,10 @@ Bacula}. Please note that the {\bf ./configure} used to build {\bf Bacula} will need to include {\bf \verb:--:with-sqlite}. -\subsection*{Installing and Configuring SQLite -- Phase II} +\section{Installing and Configuring SQLite -- Phase II} \label{phase2} \index[general]{Phase II!Installing and Configuring SQLite -- } \index[general]{Installing and Configuring SQLite -- Phase II } -\addcontentsline{toc}{subsection}{Installing and Configuring SQLite -- Phase II} This phase is done {\bf after} you have run the {\bf ./configure} command to @@ -88,18 +85,16 @@ At this point, you can create the SQLite database and tables: directory. \end{enumerate} -\subsection*{Linking Bacula with SQLite} +\section{Linking Bacula with SQLite} \index[general]{SQLite!Linking Bacula with } \index[general]{Linking Bacula with SQLite } -\addcontentsline{toc}{subsection}{Linking Bacula with SQLite} If you have followed the above steps, this will all happen automatically and the SQLite libraries will be linked into {\bf Bacula}. -\subsection*{Testing SQLite} +\section{Testing SQLite} \index[general]{SQLite!Testing } \index[general]{Testing SQLite } -\addcontentsline{toc}{subsection}{Testing SQLite} We have much less "production" experience using SQLite than using MySQL. SQLite has @@ -126,10 +121,9 @@ the current directory, then you may get this errr. The solution is to start Bacula in a current directory where it has write permission. -\subsection*{Re-initializing the Catalog Database} +\section{Re-initializing the Catalog Database} \index[general]{Database!Re-initializing the Catalog } \index[general]{Re-initializing the Catalog Database } -\addcontentsline{toc}{subsection}{Re-initializing the Catalog Database} After you have done some initial testing with {\bf Bacula}, you will probably want to re-initialize the catalog database and throw away all the test Jobs diff --git a/docs/manual/state.tex b/docs/manual/state.tex index 0343f685..6fdb965d 100644 --- a/docs/manual/state.tex +++ b/docs/manual/state.tex @@ -1,17 +1,15 @@ %% %% -\section*{The Current State of Bacula -- \input{version}} +\chapter{The Current State of Bacula} \label{_ChapterStart2} \index[general]{Current State of Bacula } -\addcontentsline{toc}{section}{Current State of Bacula} In other words, what is and what is not currently implemented and functional. -\subsection*{What is Implemented} +\section{What is Implemented} \index[general]{Implemented!What} \index[general]{What is Implemented} -\addcontentsline{toc}{subsection}{What is Implemented} \begin{itemize} \item Job Control @@ -137,10 +135,9 @@ In other words, what is and what is not currently implemented and functional. \end{itemize} \end{itemize} -\subsection*{Advantages of Bacula Over Other Backup Programs} +\section{Advantages Over Other Backup Programs} \index[general]{Advantages of Bacula Over Other Backup Programs } \index[general]{Programs!Advantages of Bacula Over Other Backup } -\addcontentsline{toc}{subsection}{Advantages of Bacula Over Other Backup Programs} \begin{itemize} @@ -197,10 +194,9 @@ In other words, what is and what is not currently implemented and functional. \end{itemize} -\subsection*{Current Implementation Restrictions} +\section{Current Implementation Restrictions} \index[general]{Current Implementation Restrictions } \index[general]{Restrictions!Current Implementation } -\addcontentsline{toc}{subsection}{Current Implementation Restrictions} \begin{itemize} \item If you have over 4 billion file entries stored in your database, the @@ -221,10 +217,9 @@ In other words, what is and what is not currently implemented and functional. files) are not yet implemented. \end{itemize} -\subsection*{Design Limitations or Restrictions} +\section{Design Limitations or Restrictions} \index[general]{Restrictions!Design Limitations or } \index[general]{Design Limitations or Restrictions } -\addcontentsline{toc}{subsection}{Design Limitations or Restrictions} \begin{itemize} \item Names (resource names, Volume names, and such) defined in Bacula diff --git a/docs/manual/storedconf.tex b/docs/manual/storedconf.tex index 823ddf48..1252746f 100644 --- a/docs/manual/storedconf.tex +++ b/docs/manual/storedconf.tex @@ -1,15 +1,13 @@ %% %% -\section*{Storage Daemon Configuration} +\chapter{Storage Daemon Configuration} \label{_ChapterStart31} \index[general]{Storage Daemon Configuration} \index[general]{Configuration!Storage Daemon} -\addcontentsline{toc}{section}{Storage Daemon Configuration} -\subsection*{General} +\section{General} \index[general]{General} -\addcontentsline{toc}{subsection}{General} The Storage Daemon configuration file has relatively few resource definitions. However, due to the great variation in backup media and system capabilities, @@ -44,11 +42,10 @@ following Storage Resource definitions must be defined: information messages are to be sent. \end{itemize} -\subsection*{Storage Resource} +\section{Storage Resource} \label{StorageResource} \index[general]{Resource!Storage} \index[general]{Storage Resource} -\addcontentsline{toc}{subsection}{Storage Resource} In general, the properties specified under the Storage resource define global properties of the Storage daemon. Each Storage daemon configuration file must @@ -194,11 +191,10 @@ Storage { \end{verbatim} \normalsize -\subsection*{Director Resource} +\section{Director Resource} \label{DirectorResource1} \index[general]{Director Resource} \index[general]{Resource!Director} -\addcontentsline{toc}{subsection}{Director Resource} The Director resource specifies the Name of the Director which is permitted to use the services of the Storage daemon. There may be multiple Director @@ -245,10 +241,9 @@ Director { \normalsize \label{DeviceResource} -\subsection*{Device Resource} +\section{Device Resource} \index[general]{Resource!Device} \index[general]{Device Resource} -\addcontentsline{toc}{subsection}{Device Resource} The Device Resource specifies the details of each device (normally a tape drive) that can be used by the Storage daemon. There may be multiple @@ -517,6 +512,8 @@ bacula-sd Alert: TapeAlert[32]: Interface: Problem with SCSI interface Bacula will invalidate the Volume slot number stored in the catalog and try again. If no additional changer volumes exist, Bacula will ask the operator to intervene. The default is 5 minutes. +% TODO: if this is the format, then maybe "5 minutes" should be in +% TODO: quotes? define style. see others. \item [Maximum Rewind Wait = {\it time}] \index[sd]{Maximum Rewind Wait} @@ -1014,10 +1011,9 @@ default, Bacula will only write one end of file to terminate the tape. \end{description} \label{mountcodes} -\subsection*{Edit Codes for Mount and Unmount Directives} +\section{Edit Codes for Mount and Unmount Directives} \index[general]{Directives!Edit Codes} \index[general]{Edit Codes for Mount and Unmount Directives } -\addcontentsline{toc}{subsection}{Edit Codes for Mount and Unmount Directives} Before submitting the {\bf Mount Command}, {\bf Unmount Command}, {\bf Write Part Command}, or {\bf Free Space Command} directives @@ -1036,10 +1032,9 @@ following characters: \normalsize -\subsection*{Devices that require a mount (DVD)} +\section{Devices that require a mount (DVD)} \index[general]{Devices that require a mount (DVD)} \index[general]{DVD!Devices that require a mount} -\addcontentsline{toc}{subsection}{Devices that require a mount (DVD)} All the directives in this section are implemented only in Bacula version 1.37 and later and hence are available in version 1.38.6. @@ -1156,9 +1151,8 @@ apply to removable filesystems such as USB in addition to DVD. -\subsection*{Capabilities} +\section{Capabilities} \index[general]{Capabilities} -\addcontentsline{toc}{subsection}{Capabilities} \begin{description} @@ -1186,21 +1180,19 @@ apply to removable filesystems such as USB in addition to DVD. \end{description} -\subsection*{Messages Resource} +\section{Messages Resource} \label{MessagesResource1} \index[general]{Resource!Messages} \index[general]{Messages Resource} -\addcontentsline{toc}{subsection}{Messages Resource} For a description of the Messages Resource, please see the \ilink{Messages Resource}{_ChapterStart15} Chapter of this manual. -\subsection*{Sample Storage Daemon Configuration File} +\section{Sample Storage Daemon Configuration File} \label{SampleConfiguration} \index[general]{File!Sample Storage Daemon Configuration} \index[general]{Sample Storage Daemon Configuration File} -\addcontentsline{toc}{subsection}{Sample Storage Daemon Configuration File} A example Storage Daemon configuration file might be the following: diff --git a/docs/manual/strategies.tex b/docs/manual/strategies.tex index a3a34667..e32043ca 100644 --- a/docs/manual/strategies.tex +++ b/docs/manual/strategies.tex @@ -1,28 +1,25 @@ %% %% -\section*{Backup Strategies} +\chapter{Backup Strategies} \label{_ChapterStart3} \index[general]{Strategies!Backup } \index[general]{Backup Strategies } -\addcontentsline{toc}{section}{Backup Strategies} Although Recycling and Backing Up to Disk Volume have been discussed in previous chapters, this chapter is meant to give you an overall view of possible backup strategies and to explain their advantages and disadvantages. \label{Simple} -\subsection*{Simple One Tape Backup} +\section{Simple One Tape Backup} \index[general]{Backup!Simple One Tape } \index[general]{Simple One Tape Backup } -\addcontentsline{toc}{subsection}{Simple One Tape Backup} Probably the simplest strategy is to back everything up to a single tape and insert a new (or recycled) tape when it fills and Bacula requests a new one. -\subsubsection*{Advantages} +\subsection{Advantages} \index[general]{Advantages } -\addcontentsline{toc}{subsubsection}{Advantages} \begin{itemize} \item The operator intervenes only when a tape change is needed. (once a @@ -36,9 +33,8 @@ insert a new (or recycled) tape when it fills and Bacula requests a new one. time. \end{itemize} -\subsubsection*{Disadvantages} +\subsection{Disadvantages} \index[general]{Disadvantages } -\addcontentsline{toc}{subsubsection}{Disadvantages} \begin{itemize} \item If your site burns down, you will lose your current backups, and in my @@ -47,10 +43,9 @@ insert a new (or recycled) tape when it fills and Bacula requests a new one. continue, and this will generally happen during working hours. \end{itemize} -\subsubsection*{Practical Details} +\subsection{Practical Details} \index[general]{Details!Practical } \index[general]{Practical Details } -\addcontentsline{toc}{subsubsection}{Practical Details} This system is very simple. When the tape fills and Bacula requests a new tape, you {\bf unmount} the tape from the Console program, insert a new tape @@ -65,10 +60,9 @@ month, a Differential backup on the 2nd-5th Sunday of the month, and incremental backups the rest of the week. \label{Manual} -\subsection*{Manually Changing Tapes} +\section{Manually Changing Tapes} \index[general]{Tapes!Manually Changing } \index[general]{Manually Changing Tapes } -\addcontentsline{toc}{subsection}{Manually Changing Tapes} If you use the strategy presented above, Bacula will ask you to change the tape, and you will {\bf unmount} it and then remount it when you have inserted @@ -125,10 +119,9 @@ autochangers because Bacula will still keep the drive open. \label{Daily} -\subsection*{Daily Tape Rotation} +\section{Daily Tape Rotation} \index[general]{Rotation!Daily Tape } \index[general]{Daily Tape Rotation } -\addcontentsline{toc}{subsection}{Daily Tape Rotation} This scheme is quite different from the one mentioned above in that a Full backup is done to a different tape every day of the week. Generally, the @@ -139,9 +132,8 @@ tapes, and by having two Friday tapes, you need a total of six tapes. Many sites run this way, or using modifications of it based on two week cycles or longer. -\subsubsection*{Advantages} +\subsection{Advantages} \index[general]{Advantages } -\addcontentsline{toc}{subsubsection}{Advantages} \begin{itemize} \item All the data is stored on a single tape, so recoveries are simple and @@ -150,9 +142,8 @@ run this way, or using modifications of it based on two week cycles or longer. of one days data will be lost if the site burns down. \end{itemize} -\subsubsection*{Disadvantages} +\subsection{Disadvantages} \index[general]{Disadvantages } -\addcontentsline{toc}{subsubsection}{Disadvantages} \begin{itemize} \item The tape must be changed every day requiring a lot of operator @@ -169,10 +160,9 @@ run this way, or using modifications of it based on two week cycles or longer. reasons of tape capacity. \end{itemize} -\subsubsection*{Practical Details} +\subsection{Practical Details} \index[general]{Details!Practical } \index[general]{Practical Details } -\addcontentsline{toc}{subsubsection}{Practical Details} The simplest way to "force" Bacula to use a different tape each day is to define a different Pool for each day of the the week a backup is done. In diff --git a/docs/manual/stunnel.tex b/docs/manual/stunnel.tex index 23d495d8..461421c5 100644 --- a/docs/manual/stunnel.tex +++ b/docs/manual/stunnel.tex @@ -1,11 +1,9 @@ %% %% -\section*{Using stunnel to Encrypt Communications to Clients} +\chapter{Using Stunnel to Encrypt Communications} \label{_ChapterStart6} -\index[general]{Clients!Using Bacula to Encrypt Communications to } -\index[general]{Using Bacula to Encrypt Communications to Clients } -\addcontentsline{toc}{section}{Using Bacula to Encrypt Communications to +\index[general]{Using Stunnel to Encrypt Communications to Clients } Clients} Prior to version 1.37, Bacula did not have built-in communications encryption. @@ -22,10 +20,9 @@ principles apply whether you are encrypting between Unix, Linux, or Win32 machines. This example was developed between two Linux machines running stunnel version 4.04-4 on a Red Hat Enterprise 3.0 system. -\subsection*{Communications Ports Used} +\section{Communications Ports Used} \index[general]{Used!Communications Ports } \index[general]{Communications Ports Used } -\addcontentsline{toc}{subsection}{Communications Ports Used} First, you must know that with the standard Bacula configuration, the Director will contact the File daemon on port 9102. The File daemon then contacts the @@ -35,9 +32,8 @@ the world, the File daemon is a server to the Director (i.e. listens for the Director to contact it), and the Storage daemon is a server to the File daemon. -\subsection*{Encryption} +\section{Encryption} \index[general]{Encryption } -\addcontentsline{toc}{subsection}{Encryption} The encryption is accomplished between the Director and the File daemon by using an stunnel on the Director's machine (server) to encrypt the data and to @@ -54,9 +50,8 @@ isn't. To accomplish this, we will need to construct four separate conf files for stunnel, and we will need to make some minor modifications to the Director's conf file. None of the other conf files need to be changed. -\subsection*{A Picture} +\section{A Picture} \index[general]{Picture } -\addcontentsline{toc}{subsection}{Picture} Since pictures usually help a lot, here is an overview of what we will be doing. Don't worry about all the details of the port numbers and such for the @@ -85,9 +80,8 @@ moment. \end{verbatim} \normalsize -\subsection*{Certificates} +\section{Certificates} \index[general]{Certificates } -\addcontentsline{toc}{subsection}{Certificates} In order for stunnel to function as a server, which it does in our diagram for Stunnel 1 and Stunnel 4, you must have a certificate and the key. It is @@ -106,10 +100,9 @@ middle attack and hence loss of your data. See below for how to create a self-signed certificate. -\subsection*{Securing the Data Channel} +\section{Securing the Data Channel} \index[general]{Channel!Securing the Data } \index[general]{Securing the Data Channel } -\addcontentsline{toc}{subsection}{Securing the Data Channel} To simplify things a bit, let's for the moment consider only the data channel. That is the connection between the File daemon and the Storage daemon, which @@ -128,11 +121,9 @@ Storage daemon, which doesn't understand encrypted data. On the server machine, we run Stunnel 4, which listens on port 29103, decrypts the data and sends it to the Storage daemon, which is listening on port 9103. -\subsection*{Modification of bacula-dir.conf for the Data Channel} +\section{Data Channel Configuration} \index[general]{Modification of bacula-dir.conf for the Data Channel } -\index[general]{Channel!Modification of bacula-dir.conf for the Data } -\addcontentsline{toc}{subsection}{Modification of bacula-dir.conf for the Data -Channel} +\index[general]{baculoa-dir.conf!Modification for the Data Channel } The Storage resource of the bacula-dir.conf normally looks something like the following: @@ -171,10 +162,8 @@ This causes the File daemon to send the data to the stunnel running on localhost (the client machine). We could have used client as the address as well. -\subsection*{config Files for stunnel to Encrypt the Data Channel} -\index[general]{Config Files for stunnel to Encrypt the Data Channel } -\index[general]{Channel!config Files for stunnel to Encrypt the Data } -\addcontentsline{toc}{subsection}{config Files for stunnel to Encrypt the Data +\section{Stunnel Configuration for the Data Channel} +\index[general]{Stunnel Configuration for the Data Channel } Channel} In the diagram above, we see above Stunnel 2 that we use stunnel-fd2.conf on the @@ -257,10 +246,9 @@ connect = 9103 \end{verbatim} \normalsize -\subsection*{Starting and Testing the Data Encryption} +\section{Starting and Testing the Data Encryption} \index[general]{Starting and Testing the Data Encryption } \index[general]{Encryption!Starting and Testing the Data } -\addcontentsline{toc}{subsection}{Starting and Testing the Data Encryption} It will most likely be the simplest to implement the Data Channel encryption in the following order: @@ -294,10 +282,9 @@ in the following order: the stunnels, rerun the job, repeat until it works. \end{itemize} -\subsection*{Encrypting the Control Channel} +\section{Encrypting the Control Channel} \index[general]{Channel!Encrypting the Control } \index[general]{Encrypting the Control Channel } -\addcontentsline{toc}{subsection}{Encrypting the Control Channel} The Job control channel is between the Director and the File daemon, and as mentioned above, it is not really necessary to encrypt, but it is good @@ -309,11 +296,8 @@ client:29102. Again we use port 29102 so that the stunnel on the client machine can decrypt the data before passing it on to port 9102 where the File daemon is listening. -\subsection*{Modification of bacula-dir.conf for the Control Channel} -\index[general]{Channel!Modification of bacula-dir.conf for the Control } -\index[general]{Modification of bacula-dir.conf for the Control Channel } -\addcontentsline{toc}{subsection}{Modification of bacula-dir.conf for the -Control Channel} +\section{Control Channel Configuration} +\index[general]{Control Channel Configuration } We need to modify the standard Client resource, which would normally look something like: @@ -347,10 +331,8 @@ Client { This will cause the Director to send the control information to localhost:29102 instead of directly to the client. -\subsection*{config Files for stunnel to Encrypt the Control Channel} +\section{Stunnel Configuration for the Control Channel} \index[general]{Config Files for stunnel to Encrypt the Control Channel } -\index[general]{Channel!config Files for stunnel to Encrypt the Control } -\addcontentsline{toc}{subsection}{config Files for stunnel to Encrypt the Control Channel} The stunnel config file, stunnel-dir.conf, for the Director's machine would @@ -407,10 +389,9 @@ connect = client:29102 \end{verbatim} \normalsize -\subsection*{Starting and Testing the Control Channel} +\section{Starting and Testing the Control Channel} \index[general]{Starting and Testing the Control Channel } \index[general]{Channel!Starting and Testing the Control } -\addcontentsline{toc}{subsection}{Starting and Testing the Control Channel} It will most likely be the simplest to implement the Control Channel encryption in the following order: @@ -442,10 +423,9 @@ encryption in the following order: the stunnels, rerun the job, repeat until it works. \end{itemize} -\subsection*{Using stunnel to Encrypt to a Second Client} +\section{Using stunnel to Encrypt to a Second Client} \index[general]{Using stunnel to Encrypt to a Second Client } \index[general]{Client!Using stunnel to Encrypt to a Second } -\addcontentsline{toc}{subsection}{Using stunnel to Encrypt to a Second Client} On the client machine, you can just duplicate the setup that you have on the first client file for file and it should work fine. @@ -516,10 +496,9 @@ connect = client2:29102 There are no changes necessary to the Storage daemon or the other stunnel so that this new client can talk to our Storage daemon. -\subsection*{Creating a Self-signed Certificate} +\section{Creating a Self-signed Certificate} \index[general]{Creating a Self-signed Certificate } \index[general]{Certificate!Creating a Self-signed } -\addcontentsline{toc}{subsection}{Creating a Self-signed Certificate} You may create a self-signed certificate for use with stunnel that will permit you to make it function, but will not allow certificate validation. The .pem @@ -550,10 +529,9 @@ The above script will ask you a number of questions. You may simply answer each of them by entering a return, or if you wish you may enter your own data. -\subsection*{Getting a CA Signed Certificate} +\section{Getting a CA Signed Certificate} \index[general]{Certificate!Getting a CA Signed } \index[general]{Getting a CA Signed Certificate } -\addcontentsline{toc}{subsection}{Getting a CA Signed Certificate} The process of getting a certificate that is signed by a CA is quite a bit more complicated. You can purchase one from quite a number of PKI vendors, but @@ -570,10 +548,9 @@ http://ospkibook.sourceforge.net/docs/OSPKI-2.4.7/OSPKI-html/ospki-book.htm} {http://ospkibook.sourceforge.net/docs/OSPKI-2.4.7/OSPKI-html/ospki-book.htm}. Note, this link may change. -\subsection*{Using ssh to Secure the Communications} +\section{Using ssh to Secure the Communications} \index[general]{Communications!Using ssh to Secure the } \index[general]{Using ssh to Secure the Communications } -\addcontentsline{toc}{subsection}{Using ssh to Secure the Communications} Please see the script {\bf ssh-tunnel.sh} in the {\bf examples} directory. It was contributed by Stephan Holl. diff --git a/docs/manual/supportedchangers.tex b/docs/manual/supportedchangers.tex index 706a8214..29d94bd4 100644 --- a/docs/manual/supportedchangers.tex +++ b/docs/manual/supportedchangers.tex @@ -1,15 +1,13 @@ %% %% -\section*{Supported Autochangers} +\chapter{Supported Autochangers} \label{_ChapterStart21} -\addcontentsline{toc}{section}{Supported Autochangers} -\subsection*{Supported Autochanger Models} +\section{Supported Autochanger Models} \label{Models} \index[general]{Supported Autochanger Models} \index[general]{Autochangers!Supported} -\addcontentsline{toc}{subsection}{Supported Autochanger Models} I hesitate to call these "supported" autochangers because the only autochangers that I have in my possession and am able to test are the HP diff --git a/docs/manual/supporteddrives.tex b/docs/manual/supporteddrives.tex index 4d1038cc..6322ef48 100644 --- a/docs/manual/supporteddrives.tex +++ b/docs/manual/supporteddrives.tex @@ -1,17 +1,15 @@ %% %% -\section*{Supported Tape Drives} +\chapter{Supported Tape Drives} \label{_ChapterStart19} \index[general]{Drives!Supported Tape } \index[general]{Supported Tape Drives } -\addcontentsline{toc}{section}{Supported Tape Drives} -\subsection*{Supported Tape Drives} +\section{Supported Tape Drives} \label{SupportedDrives} \index[general]{Drives!Supported Tape } \index[general]{Supported Tape Drives } -\addcontentsline{toc}{subsection}{Supported Tape Drives} Even if your drive is on the list below, please check the \ilink{Tape Testing Chapter}{btape1} of this manual for @@ -65,11 +63,10 @@ There is a list of \ilink{supported autochangers}{Models} in the Supported Autochangers chapter of this document, where you will find other tape drives that work with Bacula. -\subsection*{Unsupported Tape Drives} +\section{Unsupported Tape Drives} \label{UnSupportedDrives} \index[general]{Unsupported Tape Drives } \index[general]{Drives!Unsupported Tape } -\addcontentsline{toc}{subsection}{Unsupported Tape Drives} Previously OnStream IDE-SCSI tape drives did not work with Bacula. As of Bacula version 1.33 and the osst kernel driver version 0.9.14 or later, they @@ -80,10 +77,9 @@ one EOF rather than two to terminate the tape). As a consequence, you will need to take a lot of care in configuring them to make them work correctly with Bacula. -\subsection*{FreeBSD Users Be Aware!!!} +\section{FreeBSD Users Be Aware!!!} \index[general]{FreeBSD Users Be Aware } \index[general]{Aware!FreeBSD Users Be } -\addcontentsline{toc}{subsection}{FreeBSD Users Be Aware!!!} Unless you have patched the pthreads library on FreeBSD 4.11 systems, you will lose data when Bacula spans tapes. This is because the unpatched pthreads @@ -93,19 +89,17 @@ near. This problem is fixed in FreeBSD systems released after 4.11. Please see t {\bf important} information on how to configure your tape drive for compatibility with Bacula. -\subsection*{Supported Autochangers} +\section{Supported Autochangers} \index[general]{Autochangers!Supported } \index[general]{Supported Autochangers } -\addcontentsline{toc}{subsection}{Supported Autochangers} For information on supported autochangers, please see the \ilink{Autochangers Known to Work with Bacula}{Models} section of the Supported Autochangers chapter of this manual. -\subsection*{Tape Specifications} +\section{Tape Specifications} \index[general]{Specifications!Tape} \index[general]{Tape Specifications} -\addcontentsline{toc}{subsection}{Tape Specifications} If you want to know what tape drive to buy that will work with Bacula, we really cannot tell you. However, we can say that if you are going to buy a drive, you should try to avoid DDS drives. The technology is diff --git a/docs/manual/supportedoses.tex b/docs/manual/supportedoses.tex index 7ff178d7..6252eefe 100644 --- a/docs/manual/supportedoses.tex +++ b/docs/manual/supportedoses.tex @@ -1,17 +1,15 @@ %% %% -\section*{Supported Operating Systems} +\chapter{Supported Operating Systems} \label{_ChapterStart46} \index[general]{Systems!Supported Operating } \index[general]{Supported Operating Systems } -\addcontentsline{toc}{section}{Supported Operating Systems} -\subsection*{Supported Operating Systems} +\section{Supported Operating Systems} \label{SupportedOSes} \index[general]{Systems!Supported Operating } \index[general]{Supported Operating Systems } -\addcontentsline{toc}{subsection}{Supported Operating Systems} \begin{itemize} \item Linux systems (built and tested on SuSE 10.1). diff --git a/docs/manual/tapetesting.tex b/docs/manual/tapetesting.tex index 9deebe7f..cb9475a0 100644 --- a/docs/manual/tapetesting.tex +++ b/docs/manual/tapetesting.tex @@ -1,20 +1,15 @@ %% %% -\section*{Testing Your Tape Drive With Bacula} +\chapter{Testing Your Tape Drive With Bacula} \label{_ChapterStart27} \index[general]{Testing Your Tape Drive With Bacula} -\addcontentsline{toc}{section}{Testing Your Tape Drive With Bacula} This chapter is concerned with testing and configuring your tape drive to make sure that it will work properly with Bacula using the {\bf btape} program. \label{summary} -\subsection*{Summary of Steps to Take to Get Your Tape Drive Working} -\index[general]{Working!Summary of Steps to Take to Get Your Tape Drive} -\index[general]{Summary of Steps to Take to Get Your Tape Drive Working} -\addcontentsline{toc}{subsection}{Summary of Steps to Take to Get Your Tape -Drive Working} +\section{Get Your Tape Drive Working} In general, you should follow the following steps to get your tape drive to work with Bacula. Start with a tape mounted in your drive. If you have an @@ -113,9 +108,8 @@ completed. In particular, you may want to look at the \ilink{ Tips for Resolving Problems}{problems1} section below. \label{NoTapeInDrive} -\subsubsection*{Problems When no Tape in Drive} +\subsection{Problems When no Tape in Drive} \index[general]{Problems When no Tape in Drive} -\addcontentsline{toc}{subsubsection}{Problems When no Tape in Drive} When Bacula was first written the Linux 2.4 kernel permitted opening the drive whether or not there was a tape in the drive. Thus the Bacula code is based on the concept that if the drive cannot be opened, there is a serious @@ -139,10 +133,9 @@ failures, you can also increase the {\bf Maximum Open Wait} time interval, which will give you more time to mount the next tape before the job is failed. -\subsubsection*{Specifying the Configuration File} +\subsection{Specifying the Configuration File} \index[general]{File!Specifying the Configuration} \index[general]{Specifying the Configuration File} -\addcontentsline{toc}{subsubsection}{Specifying the Configuration File} Starting with version 1.27, each of the tape utility programs including the {\bf btape} program requires a valid Storage daemon configuration file @@ -154,10 +147,9 @@ properly read and write your drive. By default, they use {\bf bacula-sd.conf} in the current directory, but you may specify a different configuration file using the {\bf -c} option. -\subsubsection*{Specifying a Device Name For a Tape} +\subsection{Specifying a Device Name For a Tape} \index[general]{Tape!Specifying a Device Name For a} \index[general]{Specifying a Device Name For a Tape} -\addcontentsline{toc}{subsubsection}{Specifying a Device Name For a Tape} {\bf btape} {\bf device-name} where the Volume can be found. In the case of a tape, this is the physical device name such as {\bf /dev/nst0} or {\bf @@ -177,10 +169,9 @@ behavior. See below for specifying Volume names. -\subsubsection*{Specifying a Device Name For a File} +\subsection{Specifying a Device Name For a File} \index[general]{File!Specifying a Device Name For a} \index[general]{Specifying a Device Name For a File} -\addcontentsline{toc}{subsubsection}{Specifying a Device Name For a File} If you are attempting to read or write an archive file rather than a tape, the {\bf device-name} should be the full path to the archive location including @@ -190,10 +181,9 @@ must have the same entry in the configuration file. So, the path is equivalent to the archive device name, and the filename is equivalent to the volume name. -\subsection*{btape} +\section{btape} \label{btape1} \index[general]{Btape} -\addcontentsline{toc}{subsection}{btape} This program permits a number of elementary tape operations via a tty command interface. The {\bf test} command, described below, can be very useful for @@ -228,10 +218,9 @@ Usage: btape [options] device_name \end{verbatim} \normalsize -\subsubsection*{Using btape to Verify your Tape Drive} +\subsection{Using btape to Verify your Tape Drive} \index[general]{Using btape to Verify your Tape Drive} \index[general]{Drive!Using btape to Verify your Tape} -\addcontentsline{toc}{subsubsection}{Using btape to Verify your Tape Drive} An important reason for this program is to ensure that a Storage daemon configuration file is defined so that Bacula will correctly read and write @@ -333,10 +322,9 @@ See the section above on setting your {\bf Archive device} correctly. For FreeBSD users, please see the notes below for doing further testing of your tape drive. -\subsubsection*{Linux SCSI Tricks} +\subsection{Linux SCSI Tricks} \index[general]{Tricks!Linux SCSI} \index[general]{Linux SCSI Tricks} -\addcontentsline{toc}{subsubsection}{Linux SCSI Tricks} You can find out what SCSI devices you have by doing: @@ -418,16 +406,14 @@ the control channel for those two drives is /dev/sg3. \label{problems1} -\subsection*{Tips for Resolving Problems} +\section{Tips for Resolving Problems} \index[general]{Problems!Tips for Resolving} \index[general]{Tips for Resolving Problems} -\addcontentsline{toc}{subsection}{Tips for Resolving Problems} \label{CannotRestore} -\subsubsection*{Bacula Saves But Cannot Restore Files} +\subsection{Bacula Saves But Cannot Restore Files} \index[general]{Files!Bacula Saves But Cannot Restore} \index[general]{Bacula Saves But Cannot Restore Files} -\addcontentsline{toc}{subsubsection}{Bacula Saves But Cannot Restore Files} If you are getting error messages such as: @@ -501,10 +487,9 @@ one of the following things: \label{opendevice} -\subsubsection*{Bacula Cannot Open the Device} +\subsection{Bacula Cannot Open the Device} \index[general]{Device!Bacula Cannot Open the} \index[general]{Bacula Cannot Open the Device} -\addcontentsline{toc}{subsubsection}{Bacula Cannot Open the Device} If you get an error message such as: @@ -527,10 +512,9 @@ driver module (or add it to the local startup script). Thanks to Alan Brown for this tip. \label{IncorrectFiles} -\subsubsection*{Incorrect File Number} +\subsection{Incorrect File Number} \index[general]{Number!Incorrect File} \index[general]{Incorrect File Number} -\addcontentsline{toc}{subsubsection}{Incorrect File Number} When Bacula moves to the end of the medium, it normally uses the {\bf ioctl(MTEOM)} function. Then Bacula uses the {\bf ioctl(MTIOCGET)} function to @@ -561,13 +545,12 @@ medium, and Bacula will keep track of the file number itself. \end{itemize} \label{IncorrectBlocks} -\subsubsection*{Incorrect Number of Blocks or Positioning Errors during btape +\subsection{Incorrect Number of Blocks or Positioning Errors during btape Testing} \index[general]{Testing!Incorrect Number of Blocks or Positioning Errors during btape} \index[general]{Incorrect Number of Blocks or Positioning Errors during btape Testing} -\addcontentsline{toc}{subsubsection}{Incorrect Number of Blocks or Positioning Errors during btape Testing} {\bf Bacula's} preferred method of working with tape drives (sequential @@ -623,11 +606,10 @@ below for the details on checking and setting the default drive block size. To recover files from tapes written in fixed block mode, see below. \label{TapeModes} -\subsubsection*{Ensuring that the Tape Modes Are Properly Set -- {\bf Linux +\subsection{Ensuring that the Tape Modes Are Properly Set -- {\bf Linux Only}} \index[general]{Ensuring that the Tape Modes Are Properly Set -- Linux Only} \index[general]{Only!Ensuring that the Tape Modes Are Properly Set -- Linux} -\addcontentsline{toc}{subsubsection}{Ensuring that the Tape Modes Are Properly Set -- Linux Only} If you have a modern SCSI tape drive and you are having problems with the {\bf @@ -705,13 +687,12 @@ OSes permit setting variable block mode, but some OSes do not permit setting the other modes that Bacula needs to function properly. \label{compression} -\subsubsection*{Checking and Setting Tape Hardware Compression and Blocking +\subsection{Checking and Setting Tape Hardware Compression and Blocking Size} \index[general]{Checking and Setting Tape Hardware Compression and Blocking Size} \index[general]{Size!Checking and Setting Tape Hardware Compression and Blocking} -\addcontentsline{toc}{subsubsection}{Checking and Setting Tape Hardware Compression and Blocking Size} As far as I can tell, there is no way with the {\bf mt} program to check if @@ -809,10 +790,9 @@ ignore that field as well as the {\bf Attached Changer} field. To recover files from tapes written in fixed block mode, see below. \label{FreeBSDTapes} -\subsubsection*{Tape Modes on FreeBSD} +\subsection{Tape Modes on FreeBSD} \index[general]{FreeBSD!Tape Modes on} \index[general]{Tape Modes on FreeBSD} -\addcontentsline{toc}{subsubsection}{Tape Modes on FreeBSD} On most FreeBSD systems such as 4.9 and most tape drives, Bacula should run with: @@ -936,10 +916,9 @@ Backward Space Record = yes. -\subsubsection*{Finding your Tape Drives and Autochangers on FreeBSD} +\subsection{Finding your Tape Drives and Autochangers on FreeBSD} \index[general]{FreeBSD!Finding your Tape Drives and Autochangers} \index[general]{Finding your Tape Drives and Autochangers on FreeBSD} -\addcontentsline{toc}{subsubsection}{Finding your Tape Drives and Autochangers on FreeBSD} On FreeBSD, you can do a {\bf camcontrol devlist} as root to determine what @@ -968,10 +947,9 @@ tapeinfo -f /dev/pass2 \label{onstream} -\subsubsection*{Using the OnStream driver on Linux Systems} +\subsection{Using the OnStream driver on Linux Systems} \index[general]{Using the OnStream driver on Linux Systems} \index[general]{Systems!Using the OnStream driver on Linux} -\addcontentsline{toc}{subsubsection}{Using the OnStream driver on Linux Systems} Bacula version 1.33 (not 1.32x) is now working and ready for testing with the @@ -1020,10 +998,9 @@ Device { \end{verbatim} \normalsize -\subsection*{Hardware Compression on EXB-8900} +\section{Hardware Compression on EXB-8900} \index[general]{Hardware Compression on EXB-8900} \index[general]{EXB-8900!Hardware Compression} -\addcontentsline{to}{subsection}{Hardware Compression on EXB-8900} To active, check, or disable the hardware compression feature on an EXB-8900, use the exabyte MammothTool. You can get it here: \elink{http://www.exabyte.com/support/online/downloads/index.cfm} @@ -1033,10 +1010,9 @@ can disable or activate compression. Start this tool without any options for a small reference. \label{fill} -\subsubsection*{Using btape to Simulate Filling a Tape} +\subsection{Using btape to Simulate Filling a Tape} \index[general]{Using btape to Simulate Filling a Tape} \index[general]{Tape!Using btape to Simulate Filling a} -\addcontentsline{toc}{subsubsection}{Using btape to Simulate Filling a Tape} Because there are often problems with certain tape drives or systems when end @@ -1063,10 +1039,8 @@ tape option does not succeed, you should correct the problem before using Bacula. \label{RecoveringFiles} -\subsection*{Recovering Files Written to Tape With Fixed Block Sizes} +\section{Recovering Files Written With Fixed Block Sizes} \index[general]{Recovering Files Written to Tape With Fixed Block Sizes} -\index[general]{Sizes!Recovering Files Written to Tape With Fixed Block} -\addcontentsline{toc}{subsection}{Recovering Files Written to Tape With Fixed Block Sizes} If you have been previously running your tape drive in fixed block mode @@ -1088,10 +1062,9 @@ and Bacula will run without using block positioning, and it should recover your files. \label{BlockModes} -\subsection*{Tape Blocking Modes} +\section{Tape Blocking Modes} \index[general]{Modes!Tape Blocking} \index[general]{Tape Blocking Modes} -\addcontentsline{toc}{subsection}{Tape Blocking Modes} SCSI tapes may either be written in {\bf variable} or {\bf fixed} block sizes. Newer drives support both modes, but some drives such as the QIC devices @@ -1127,10 +1100,9 @@ assumes that each write causes a single record to be written, and that it can sequentially recover each of the blocks it has written by using the same number of sequential reads as it had written. -\subsection*{Details of Tape Modes} +\section{Details of Tape Modes} \index[general]{Modes!Details} \index[general]{Details of Tape Modes} -\addcontentsline{toc}{subsection}{Details of Tape Modes} Rudolf Cejka has provided the following information concerning certain tape modes and MTEOM. @@ -1199,10 +1171,9 @@ certain tape modes and MTEOM. \end{description} -\subsection*{Autochanger Errors} +\section{Autochanger Errors} \index[general]{Errors!Autochanger} \index[general]{Autochanger Errors} -\addcontentsline{toc}{subsection}{Autochanger Errors} If you are getting errors such as: @@ -1220,10 +1191,9 @@ all access to the proper control device, and if you don't have any SCSI disk drives (including SATA drives), you might want to change the permissions on /dev/sg*. -\subsection*{Syslog Errors} +\section{Syslog Errors} \index[general]{Errors!Syslog} \index[general]{Syslog Errors} -\addcontentsline{toc}{subsection}{Syslog Errors} If you are getting errors such as: diff --git a/docs/manual/thanks.tex b/docs/manual/thanks.tex index 34b2cdd1..02250d02 100644 --- a/docs/manual/thanks.tex +++ b/docs/manual/thanks.tex @@ -1,10 +1,9 @@ %% %% -\section*{Thanks} +\chapter{Thanks} \label{_ChapterStart44} \index[general]{Thanks } -\addcontentsline{toc}{section}{Thanks} I thank everyone who has helped this project. Unfortunately, I cannot thank everyone (bad memory). However, the AUTHORS file in the main source code directory should include the names of all persons who have contributed @@ -81,10 +80,10 @@ contribution. Thanks to the Free Software Foundation Europe e.V. for assuming the responsibilities of protecting the Bacula copyright. -\subsection*{Copyrights and Trademarks} +% TODO: remove this from the book? +\section*{Copyrights and Trademarks} \index[general]{Trademarks!Copyrights and } \index[general]{Copyrights and Trademarks } -\addcontentsline{toc}{subsection}{Copyrights and Trademarks} Certain words and/or products are Copyrighted or Trademarked such as Windows (by Microsoft). Since they are numerous, and we are not necessarily aware of diff --git a/docs/manual/tips.tex b/docs/manual/tips.tex index 41af1b30..cf60b9a2 100644 --- a/docs/manual/tips.tex +++ b/docs/manual/tips.tex @@ -1,26 +1,23 @@ %% %% -\section*{Tips and Suggestions} +\chapter{Tips and Suggestions} \label{_ChapterStart8} \index[general]{Tips and Suggestions } \index[general]{Suggestions!Tips and } -\addcontentsline{toc}{section}{Tips and Suggestions} -\subsection*{Examples} +\section{Examples} \label{examples} \index[general]{Examples } -\addcontentsline{toc}{subsection}{Examples} There are a number of example scripts for various things that can be found in the {\bf example} subdirectory and its subdirectories of the Bacula source distribution. -\subsection*{Upgrading Bacula Versions} +\section{Upgrading Bacula Versions} \label{upgrading} \index[general]{Upgrading Bacula Versions } \index[general]{Versions!Upgrading Bacula } -\addcontentsline{toc}{subsection}{Upgrading Bacula Versions} The first thing to do before upgrading from one version to another is to ensure that you don't overwrite or delete your production (current) version of Bacula until @@ -55,11 +52,10 @@ will be installed in your scripts directory (default {\bf /etc/bacula}), or alternatively, you can find it in the {\bf \lt{}bacula-source\gt{}/src/cats} directory. -\subsection*{Getting Notified of Job Completion} +\section{Getting Notified of Job Completion} \label{notification} \index[general]{Getting Notified of Job Completion } \index[general]{Completion!Getting Notified of Job } -\addcontentsline{toc}{subsection}{Getting Notified of Job Completion} One of the first things you should do is to ensure that you are being properly notified of the status of each Job run by Bacula, or at a minimum of each Job @@ -124,11 +120,10 @@ only if the Job terminates in error. If the Job terminates normally, no email message will be sent, but the output will still be appended to the log file as well as sent to the Console program. -\subsection*{Getting Email Notification to Work} +\section{Getting Email Notification to Work} \label{email} \index[general]{Work!Getting Email Notification to } \index[general]{Getting Email Notification to Work } -\addcontentsline{toc}{subsection}{Getting Email Notification to Work} The section above describes how to get email notification of job status. Occasionally, however, users have problems receiving any email at all. In that @@ -172,11 +167,10 @@ mailcommand = "/home/bacula/bin/bsmtp -f \"root@localhost\" %r" \end{itemize} -\subsection*{Getting Notified that Bacula is Running} +\section{Getting Notified that Bacula is Running} \label{JobNotification} \index[general]{Running!Getting Notified that Bacula is } \index[general]{Getting Notified that Bacula is Running } -\addcontentsline{toc}{subsection}{Getting Notified that Bacula is Running} If like me, you have setup Bacula so that email is sent only when a Job has errors, as described in the previous section of this chapter, inevitably, one @@ -268,11 +262,10 @@ END-OF-DATA \end{verbatim} \normalsize -\subsection*{Maintaining a Valid Bootstrap File} +\section{Maintaining a Valid Bootstrap File} \label{bootstrap} \index[general]{Maintaining a Valid Bootstrap File } \index[general]{File!Maintaining a Valid Bootstrap } -\addcontentsline{toc}{subsection}{Maintaining a Valid Bootstrap File} By using a \ilink{ WriteBootstrap}{writebootstrap} record in each of your @@ -377,11 +370,10 @@ cp ../working/restore.bsr /mnt/deuter/files/backup/rufus.bsr \end{verbatim} \normalsize -\subsection*{Rejected Volumes After a Crash} +\section{Rejected Volumes After a Crash} \label{RejectedVolumes} \index[general]{Crash!Rejected Volumes After a } \index[general]{Rejected Volumes After a Crash } -\addcontentsline{toc}{subsection}{Rejected Volumes After a Crash} Bacula keeps a count of the number of files on each Volume in its Catalog database so that before appending to a tape, it can verify that the number of @@ -577,11 +569,10 @@ probably be better off using a new tape. In fact, you might want to see what files the catalog claims are actually stored on that Volume, and back them up to another tape and recycle this tape. -\subsection*{Security Considerations} +\section{Security Considerations} \label{security} \index[general]{Considerations!Security } \index[general]{Security Considerations } -\addcontentsline{toc}{subsection}{Security Considerations} Only the File daemon needs to run with root permission (so that it can access all files). As a consequence, you may run your Director, Storage daemon, and @@ -609,11 +600,10 @@ setup procedure leaves the database open to anyone. At a minimum, you should assign the user {\bf bacula} a userid and add it to your Director's configuration file in the appropriate Catalog resource. -\subsection*{Creating Holiday Schedules} +\section{Creating Holiday Schedules} \label{holiday} \index[general]{Schedules!Creating Holiday } \index[general]{Creating Holiday Schedules } -\addcontentsline{toc}{subsection}{Creating Holiday Schedules} If you normally change tapes every day or at least every Friday, but Thursday is a holiday, you can use a trick proposed by Lutz Kittler to ensure that no @@ -623,11 +613,10 @@ returns zero, so that the Bacula job will normally continue. You can then modify the script to return non-zero on any day when you do not want Bacula to run the job. -\subsection*{Automatic Labeling Using Your Autochanger} +\section{Automatic Labeling Using Your Autochanger} \label{autolabel} \index[general]{Automatic Labeling Using Your Autochanger } \index[general]{Autochanger!Automatic Labeling Using Your } -\addcontentsline{toc}{subsection}{Automatic Labeling Using Your Autochanger} If you have an autochanger but it does not support barcodes, using a "trick" you can make Bacula automatically label all the volumes in your autochanger's @@ -697,11 +686,10 @@ If it seems to work, when it finishes, enter: and you should see all the volumes nicely created. -\subsection*{Backing Up Portables Using DHCP} +\section{Backing Up Portables Using DHCP} \label{DNS} \index[general]{DHCP!Backing Up Portables Using } \index[general]{Backing Up Portables Using DHCP } -\addcontentsline{toc}{subsection}{Backing Up Portables Using DHCP} You may want to backup laptops or portables that are not always connected to the network. If you are using DHCP to assign an IP address to those machines @@ -709,11 +697,10 @@ when they connect, you will need to use the Dynamic Update capability of DNS to assign a name to those machines that can be used in the Address field of the Client resource in the Director's conf file. -\subsection*{Going on Vacation} +\section{Going on Vacation} \label{Vacation} \index[general]{Vacation!Going on } \index[general]{Going on Vacation } -\addcontentsline{toc}{subsection}{Going on Vacation} At some point, you may want to be absent for a week or two and you want to make sure Bacula has enough tape left so that the backups will complete. You @@ -758,12 +745,12 @@ tape would fill shortly. Consequently, I manually marked it as {\bf Used} and replaced it with a fresh tape that I labeled as DLT-28Jun03, thus assuring myself that the backups would all complete without my intervention. -\subsection*{How to Exclude File on Windows Regardless of Case} +\section{Exclude Files on Windows Regardless of Case} \label{Case} -\index[general]{How to Exclude File on Windows Regardless of Case } -\index[general]{Case!How to Exclude File on Windows Regardless of } -\addcontentsline{toc}{subsection}{How to Exclude File on Windows Regardless of +\index[general]{Exclude Files on Windows Regardless of Case } Case} +% TODO: should this be put in the win32 chapter? +% TODO: should all these tips be placed in other chapters? This tip was submitted by Marc Brueckner who wasn't sure of the case of some of his files on Win32, which is case insensitive. The problem is that Bacula @@ -782,11 +769,10 @@ As a consequence, the above exclude works for files of any case. Please note that this works only in Bacula Exclude statement and not in Include. -\subsection*{Executing Scripts on a Remote Machine} +\section{Executing Scripts on a Remote Machine} \label{RemoteExecution} \index[general]{Machine!Executing Scripts on a Remote } \index[general]{Executing Scripts on a Remote Machine } -\addcontentsline{toc}{subsection}{Executing Scripts on a Remote Machine} This tip also comes from Marc Brueckner. (Note, this tip is probably outdated by the addition of {\bf ClientRunBeforJob} and {\bf ClientRunAfterJob} Job @@ -852,11 +838,10 @@ Even though Bacula version 1.32 has a ClientRunBeforeJob, the ssh method still could be useful for updating all the Bacula clients on several remote machines in a single script. -\subsection*{Recycling All Your Volumes} +\section{Recycling All Your Volumes} \label{recycle} \index[general]{Recycling All Your Volumes } \index[general]{Volumes!Recycling All Your } -\addcontentsline{toc}{subsection}{Recycling All Your Volumes} This tip comes from Phil Stracchino. @@ -877,11 +862,10 @@ update Media set VolStatus = "Recycle"; Bacula will then ignore the data already stored on the tapes and just re-use each tape without further objection. -\subsection*{Backing up ACLs on ext3 or XFS filesystems} +\section{Backing up ACLs on ext3 or XFS filesystems} \label{ACLs} \index[general]{Filesystems!Backing up ACLs on ext3 or XFS } \index[general]{Backing up ACLs on ext3 or XFS filesystems } -\addcontentsline{toc}{subsection}{Backing up ACLs on ext3 or XFS filesystems} This tip comes from Volker Sauer. @@ -918,11 +902,10 @@ setfacl --restore/root/acl-backup \end{verbatim} \normalsize -\subsection*{Total Automation of Bacula Tape Handling} +\section{Total Automation of Bacula Tape Handling} \label{automate} \index[general]{Handling!Total Automation of Bacula Tape } \index[general]{Total Automation of Bacula Tape Handling } -\addcontentsline{toc}{subsection}{Total Automation of Bacula Tape Handling} This tip was provided by Alexander Kuehn. @@ -982,12 +965,11 @@ volume "VOL-0002" is located in slot 2 and so on.. The script also maintains a logfile (/var/log/mtx.log) where you can monitor its operation. -\subsection*{Running Concurrent Jobs} +\section{Running Concurrent Jobs} \label{ConcurrentJobs} \index[general]{Jobs!Running Concurrent} \index[general]{Running Concurrent Jobs} \index[general]{Concurrent Jobs} -\addcontentsline{toc}{subsection}{Running Concurrent Jobs} Bacula can run multiple concurrent jobs, but the default configuration files are not set to do so. Using the {\bf Maximum Concurrent Jobs} directive, you diff --git a/docs/manual/tls.tex b/docs/manual/tls.tex index f80b6d6c..bdf75381 100644 --- a/docs/manual/tls.tex +++ b/docs/manual/tls.tex @@ -1,5 +1,5 @@ -\section*{Bacula TLS -- Communications Encryption} +\chapter{Bacula TLS -- Communications Encryption} \label{CommEncryption} \index[general]{TLS -- Communications Encryption} \index[general]{Communications Encryption} @@ -7,7 +7,6 @@ \index[general]{Encryption!Transport} \index[general]{Transport Encryption} \index[general]{TLS} -\addcontentsline{toc}{section}{TLS -- Communications Encryption} Bacula TLS (Transport Layer Security) is built-in network encryption code to provide secure network transport similar to @@ -38,8 +37,7 @@ considerably less secure than PKI certificate-based authentication. Appropriate autoconf macros have been added to detect and use OpenSSL if enabled on the {\bf ./configure} line with {\bf \verb?--?enable-openssl} -\subsection*{TLS Configuration Directives} -\addcontentsline{toc}{section}{TLS Configuration Directives} +\section{TLS Configuration Directives} Additional configuration directives have been added to all the daemons (Director, File daemon, and Storage daemon) as well as the various different Console programs. @@ -119,10 +117,9 @@ may use openssl: \end{description} -\subsection*{Creating a Self-signed Certificate} +\section{Creating a Self-signed Certificate} \index[general]{Creating a Self-signed Certificate } \index[general]{Certificate!Creating a Self-signed } -\addcontentsline{toc}{subsection}{Creating a Self-signed Certificate} You may create a self-signed certificate for use with the Bacula TLS that will permit you to make it function, but will not allow certificate @@ -171,10 +168,9 @@ TinyCA can be found at \elink{http://tinyca.sm-zone.net/}{http://tinyca.sm-zone.net/}. -\subsection*{Getting a CA Signed Certificate} +\section{Getting a CA Signed Certificate} \index[general]{Certificate!Getting a CA Signed } \index[general]{Getting a CA Signed Certificate } -\addcontentsline{toc}{subsection}{Getting a CA Signed Certificate} The process of getting a certificate that is signed by a CA is quite a bit more complicated. You can purchase one from quite a number of PKI vendors, but @@ -189,10 +185,9 @@ http://ospkibook.sourceforge.net/docs/OSPKI-2.4.7/OSPKI-html/ospki-book.htm} {http://ospkibook.sourceforge.net/docs/OSPKI-2.4.7/OSPKI-html/ospki-book.htm}. Note, this link may change. -\subsection*{Example TLS Configuration Files} +\section{Example TLS Configuration Files} \index[general]{Example!TLS Configuration Files} \index[general]{TLS Configuration Files} -\addcontentsline{toc}{subsection}{Example TLS Configuration Files} Landon has supplied us with the TLS portions of his configuration files, which should help you setting up your own. diff --git a/docs/manual/tutorial.tex b/docs/manual/tutorial.tex index 79f4714b..9c0efd9b 100644 --- a/docs/manual/tutorial.tex +++ b/docs/manual/tutorial.tex @@ -1,11 +1,10 @@ %% %% -\section*{A Brief Tutorial} +\chapter{A Brief Tutorial} \label{_ChapterStart1} \index[general]{Brief Tutorial } \index[general]{Tutorial!Brief } -\addcontentsline{toc}{section}{Brief Tutorial} This chapter will guide you through running Bacula. To do so, we assume you have installed Bacula, possibly in a single file as shown in the previous @@ -19,6 +18,9 @@ you built Bacula. As a consequence, you can run all the Bacula daemons for these tests as non-root. Please note, in production, your File daemon(s) must run as root. See the Security chapter for more information on this subject. +% TODO: use crossreferences above +% TODO: add a section here + The general flow of running Bacula is: \begin{enumerate} @@ -38,10 +40,12 @@ The general flow of running Bacula is: Each of these steps is described in more detail below. -\subsection*{Before Running Bacula} +\section{Before Running Bacula} \index[general]{Bacula!Before Running } \index[general]{Before Running Bacula } -\addcontentsline{toc}{subsection}{Before Running Bacula} + +% TODO: some of this content is already covered once or twice critical +% TODO: or quickstart. Consolidate! Before running Bacula for the first time in production, we recommend that you run the {\bf test} command in the {\bf btape} program as described in the @@ -55,11 +59,10 @@ attempts to duplicate what Bacula does when filling a tape and writing on the next tape. You should consider trying this command as well, but be forewarned, it can take hours (about four hours on my drive) to fill a large capacity tape. -\subsection*{Starting the Database} +\section{Starting the Database} \label{StartDB} \index[general]{Starting the Database } \index[general]{Database!Starting the } -\addcontentsline{toc}{subsection}{Starting the Database} If you are using MySQL or PostgreSQL as the Bacula database, you should start it before you attempt to run a job to avoid getting error messages from Bacula @@ -73,11 +76,10 @@ If you are using SQLite (i.e. you specified the {\bf \verb:--:with-sqlite=xxx} o on the {\bf ./configure} command, you need do nothing. SQLite is automatically started by {\bf Bacula}. -\subsection*{Starting the Daemons} +\section{Starting the Daemons} \label{StartDaemon} \index[general]{Starting the Daemons } \index[general]{Daemons!Starting the } -\addcontentsline{toc}{subsection}{Starting the Daemons} Assuming you have built from source or have installed the rpms, to start the three daemons, from your installation directory, simply enter: @@ -118,11 +120,11 @@ The explains how you can install scripts that will automatically restart the daemons when the system starts. -\subsection*{Interacting with the Director to Query or Start Jobs} +\section{Using the Director to Query and Start Jobs} \index[general]{Jobs!Interacting with the Director to Query or Start } \index[general]{Interacting with the Director to Query or Start Jobs } -\addcontentsline{toc}{subsection}{Interacting with the Director to Query or Start Jobs} +% TODO: section name is too long; maybe use "Using the Console Program" ?? To communicate with the director and to query the state of Bacula or run jobs, from the top level directory, simply enter: @@ -206,11 +208,10 @@ Type {\bf help} to see a list of available commands: Details of the console program's commands are explained in the \ilink{Console Chapter}{_ConsoleChapter} of this manual. -\subsection*{Running a Job} +\section{Running a Job} \label{Running} \index[general]{Job!Running a } \index[general]{Running a Job } -\addcontentsline{toc}{subsection}{Running a Job} At this point, we assume you have done the following: @@ -551,10 +552,9 @@ If you would like to try restoring the files that you just backed up, read the following section. \label{restoring} -\subsection*{Restoring Your Files} +\section{Restoring Your Files} \index[general]{Files!Restoring Your } \index[general]{Restoring Your Files } -\addcontentsline{toc}{subsection}{Restoring Your Files} If you have run the default configuration and the save of the Bacula source code as demonstrated above, you can restore the backed up files in the Console @@ -710,18 +710,16 @@ rm -rf /tmp/bacula-restore \end{verbatim} \normalsize -\subsection*{Quitting the Console Program} +\section{Quitting the Console Program} \index[general]{Program!Quitting the Console } \index[general]{Quitting the Console Program } -\addcontentsline{toc}{subsection}{Quitting the Console Program} Simply enter the command {\bf quit}. \label{SecondClient} -\subsection*{Adding a Second Client} +\section{Adding a Second Client} \index[general]{Client!Adding a Second } \index[general]{Adding a Second Client } -\addcontentsline{toc}{subsection}{Adding a Second Client} If you have gotten the example shown above to work on your system, you may be ready to add a second Client (File daemon). That is you have a second machine @@ -813,6 +811,7 @@ Then make sure that the Address parameter in the Storage resource is set to the fully qualified domain name and not to something like "localhost". The address specified is sent to the File daemon (client) and it must be a fully qualified domain name. If you pass something like "localhost" it will not +% TODO: s/will/may/ ?? resolve correctly and will result in a time out when the File daemon fails to connect to the Storage daemon. @@ -842,11 +841,10 @@ names and passwords must match, please see \ilink{Authorization Errors}{AuthorizationErrors} in the FAQ chapter of this manual. -\subsection*{When The Tape Fills} +\section{When The Tape Fills} \label{FullTape} \index[general]{Fills!When The Tape } \index[general]{When The Tape Fills } -\addcontentsline{toc}{subsection}{When The Tape Fills} If you have scheduled your job, typically nightly, there will come a time when the tape fills up and {\bf Bacula} cannot continue. In this case, Bacula will @@ -956,10 +954,9 @@ To manually relabel the Volume use the following additional steps: done, so that Bacula starts using your newly labeled tape. \end{itemize} -\subsection*{Other Useful Console Commands} +\section{Other Useful Console Commands} \index[general]{Commands!Other Useful Console } \index[general]{Other Useful Console Commands } -\addcontentsline{toc}{subsection}{Other Useful Console Commands} \begin{description} @@ -1032,10 +1029,9 @@ or writing the new volume. Most of the commands given above, with the exception of {\bf list}, will prompt you for the necessary arguments if you simply enter the command name. -\subsection*{Debug Daemon Output} +\section{Debug Daemon Output} \index[general]{Debug Daemon Output } \index[general]{Output!Debug Daemon } -\addcontentsline{toc}{subsection}{Debug Daemon Output} If you want debug output from the daemons as they are running, start the daemons from the install directory as follows: @@ -1070,12 +1066,7 @@ the Storage daemon as root, or change the permissions on the tape devices to permit non-root access. MySQL and PostgreSQL can be installed and run with any userid; root privilege is not necessary. -\subsection*{Have Patience When Starting the Daemons or Mounting Blank Tapes} -\index[general]{Have Patience When Starting the Daemons or Mounting Blank -Tapes } -\index[general]{Tapes!Have Patience When Starting the Daemons or Mounting -Blank } -\addcontentsline{toc}{subsection}{Have Patience When Starting the Daemons or +\section{Patience When Starting Daemons or Mounting Blank Tapes} Mounting Blank Tapes} When you start the Bacula daemons, the Storage daemon attempts to open all @@ -1095,10 +1086,9 @@ you will hang your SCSI driver (at least on my Red Hat Linux system). As a consequence, you are again urged to have patience when inserting blank tapes. Let the device settle down before attempting to access it. -\subsection*{Difficulties Connecting from the FD to the SD} +\section{Difficulties Connecting from the FD to the SD} \index[general]{Difficulties Connecting from the FD to the SD } \index[general]{SD!Difficulties Connecting from the FD to the } -\addcontentsline{toc}{subsection}{Difficulties Connecting from the FD to the SD} If you are having difficulties getting one or more of your File daemons to @@ -1119,10 +1109,9 @@ some HP printers do use these port numbers. A {\bf netstat -a} on the Storage daemon's machine can determine who is using the 9103 port (used for FD to SD communications in Bacula). -\subsection*{Daemon Command Line Options} +\section{Daemon Command Line Options} \index[general]{Daemon Command Line Options } \index[general]{Options!Daemon Command Line } -\addcontentsline{toc}{subsection}{Daemon Command Line Options} Each of the three daemons (Director, File, Storage) accepts a small set of options on the command line. In general, each of the daemons as well as the @@ -1185,11 +1174,10 @@ The Storage daemon has no Storage daemon specific options. The Console program has no console specific options. -\subsection*{Creating a Pool} +\section{Creating a Pool} \label{Pool} \index[general]{Pool!Creating a } \index[general]{Creating a Pool } -\addcontentsline{toc}{subsection}{Creating a Pool} Creating the Pool is automatically done when {\bf Bacula} starts, so if you understand Pools, you can skip to the next section. @@ -1247,10 +1235,9 @@ modify many of the values in the Pool record. \label{Labeling} -\subsection*{Labeling Your Volumes} +\section{Labeling Your Volumes} \index[general]{Volumes!Labeling Your } \index[general]{Labeling Your Volumes } -\addcontentsline{toc}{subsection}{Labeling Your Volumes} Bacula requires that each Volume contains a software label. There are several strategies for labeling volumes. The one I use is to label them as they are @@ -1274,10 +1261,9 @@ will inform you, and you can create them "on-the-fly" so to speak. In my case, I label my tapes with the date, for example: {\bf DLT-18April02}. See below for the details of using the {\bf label} command. -\subsection*{Labeling Volumes with the Console Program} +\section{Labeling Volumes with the Console Program} \index[general]{Labeling Volumes with the Console Program } \index[general]{Program!Labeling Volumes with the Console } -\addcontentsline{toc}{subsection}{Labeling Volumes with the Console Program} Labeling volumes is normally done by using the console program. diff --git a/docs/manual/vars.tex b/docs/manual/vars.tex index dc01842b..8adffbdf 100644 --- a/docs/manual/vars.tex +++ b/docs/manual/vars.tex @@ -1,11 +1,12 @@ %% %% -\section*{Variable Expansion} +\chapter{Variable Expansion} \label{_ChapterStart50} \index[general]{Variable Expansion } \index[general]{Expansion!Variable } -\addcontentsline{toc}{section}{Variable Expansion} + +% TODO: does the following mean that this should not be in book? Please note that as of version 1.37, the Variable Expansion is deprecated and replaced by Python scripting (not yet @@ -15,10 +16,9 @@ Variable expansion is somewhat similar to Unix shell variable expansion. Currently (version 1.31), it is used only in format labels, but in the future, it will most likely be used in more places. -\subsection*{General Functionality} +\section{General Functionality} \index[general]{Functionality!General } \index[general]{General Functionality } -\addcontentsline{toc}{subsection}{General Functionality} This is basically a string expansion capability that permits referencing variables, indexing arrays, conditional replacement of variables, case @@ -36,10 +36,9 @@ defined in the environment. If you have defined the variable {\bf xxx} to be contents of {\bf xxx} to a length of seven characters filling with the character {\bf Y} giving {\bf YYYTest}. -\subsection*{Bacula Variables} +\section{Bacula Variables} \index[general]{Bacula Variables } \index[general]{Variables!Bacula } -\addcontentsline{toc}{subsection}{Bacula Variables} Within Bacula, there are three main classes of variables with some minor variations within the classes. The classes are: @@ -96,10 +95,9 @@ set Months="Jan|Feb|Mar|Apr|..."} defines an environment variable named differing lengths. \end{description} -\subsection*{Full Syntax} +\section{Full Syntax} \index[general]{Syntax!Full } \index[general]{Full Syntax } -\addcontentsline{toc}{subsection}{Full Syntax} Since the syntax is quite extensive, below, you will find the pseudo BNF. The special characters have the following meaning: @@ -175,9 +173,8 @@ And the pseudo BNF describing the syntax is: \end{verbatim} \normalsize -\subsection*{Semantics} +\section{Semantics} \index[general]{Semantics } -\addcontentsline{toc}{subsection}{Semantics} The items listed in {\bf command} above, which always follow a colon ({\bf :}) have the following meanings: @@ -207,9 +204,8 @@ The {\bf loop\_limits} are start, step, and end values. A counter variable name followed immediately by a plus ({\bf +}) will cause the counter to be incremented by one. -\subsection*{Examples} +\section{Examples} \index[general]{Examples } -\addcontentsline{toc}{subsection}{Examples} To create an ISO date: diff --git a/docs/manual/verify.tex b/docs/manual/verify.tex index 99441413..18b9c55e 100644 --- a/docs/manual/verify.tex +++ b/docs/manual/verify.tex @@ -1,12 +1,15 @@ %% %% -\section*{Using Bacula to Improve Computer Security} +% TODO: this chapter name is confusing ... maybe rename to +% TODO: "File Integrity Checking with Bacula"? +\chapter{Using Bacula to Improve Computer Security} \label{_ChapterStart45} \index[general]{Security!Using Bacula to Improve Computer } \index[general]{Using Bacula to Improve Computer Security } -\addcontentsline{toc}{section}{Using Bacula to Improve Computer Security} +% TODO: only those two digest algorithms? +% TODO: can it use multiple at a time? (record and use both SHA1 and MD5?) Since Bacula maintains a catalog of files, their attributes, and either SHA1 or MD5 signatures, it can be an ideal tool for improving computer security. This is done by making a snapshot of your system files with a {\bf Verify} Job @@ -47,9 +50,8 @@ Then you decide what attributes of each file you want compared by specifying comparison options on the {\bf Include} statements that you use in the {\bf FileSet} resource of your {\bf Catalog} Jobs. -\subsection*{The Details} +\section{The Details} \index[general]{Details } -\addcontentsline{toc}{subsection}{Details} In the discussion that follows, we will make reference to the Verify Configuration Example that is included below in the {\bf A Verify @@ -107,10 +109,9 @@ probably is missing a few important files (if you find one, please send it to me). On the other hand, as long as I don't load any new packages, none of these files change during normal operation of the system. -\subsection*{Running the Verify} +\section{Running the Verify} \index[general]{Running the Verify } \index[general]{Verify!Running the } -\addcontentsline{toc}{subsection}{Running the Verify} The first thing you will want to do is to run an {\bf InitCatalog} level Verify Job. This will initialize the catalog to contain the file information @@ -199,10 +200,9 @@ have defined. If you wish to immediately verify it, you can simply run a Verify {\bf Catalog} which will be the default. No differences should be found. -\subsection*{What To Do When Differences Are Found} +\section{What To Do When Differences Are Found} \index[general]{What To Do When Differences Are Found } \index[general]{Found!What To Do When Differences Are } -\addcontentsline{toc}{subsection}{What To Do When Differences Are Found} If you have setup your messages correctly, you should be notified if there are any differences and exactly what they are. For example, below is the email @@ -300,10 +300,9 @@ The FileSet that is shown below is what I use on my Red Hat 7.3 system. With a bit more thought, you can probably add quite a number of additional files that should be monitored. -\subsection*{A Verify Configuration Example} +\section{A Verify Configuration Example} \index[general]{Verify Configuration Example } \index[general]{Example!Verify Configuration } -\addcontentsline{toc}{subsection}{Verify Configuration Example} \footnotesize \begin{verbatim} diff --git a/docs/manual/version.tex b/docs/manual/version.tex index 146adc4c..26c432a2 100644 --- a/docs/manual/version.tex +++ b/docs/manual/version.tex @@ -1 +1 @@ -1.39.32 (20 December 2006) +1.39.29 (24 November 2006) diff --git a/docs/manual/win32.tex b/docs/manual/win32.tex index 8f17afb3..8165d3ee 100644 --- a/docs/manual/win32.tex +++ b/docs/manual/win32.tex @@ -1,14 +1,12 @@ %% %% -\section*{The Windows Version of Bacula} +\chapter{The Windows Version of Bacula} \label{_ChapterStart7} \index[general]{Windows Version of Bacula} -\addcontentsline{toc}{section}{Windows Version of Bacula} -\subsection*{General} +\section{General} \index[general]{General} -\addcontentsline{toc}{subsection}{General} At the current time only the File daemon or Client program has been tested on Windows. As a consequence, when we speak of the Windows version of Bacula @@ -33,11 +31,10 @@ Once installed Bacula normally runs as a system service. This means that it is immediately started by the operating system when the system is booted, and runs in the background even if there is no user logged into the system. -\subsection*{Win32 Installation} +\section{Win32 Installation} \label{installation} \index[general]{Installation} \index[general]{Win32!Installation} -\addcontentsline{toc}{subsection}{Win32 Installation} Normally, you will install the Windows version of Bacula from the binaries. This install is standard Windows .exe that runs an install wizard using the @@ -144,10 +141,9 @@ If you are using remote desktop connections between your Windows boxes, be warned that that tray icon does not always appear. It will always be visible when you log into the console, but the remote desktop may not display it. -\subsection*{Post Win32 Installation} +\section{Post Win32 Installation} \index[general]{Post Win32 Installation} \index[general]{Win32!Post Installation} -\addcontentsline{toc}{subsection}{Post Win32 Installation} After installing Bacula and before running it, you should check the contents of the configuration files to ensure that they correspond to your @@ -160,19 +156,17 @@ not the case, you probably have not installed Bacula while running as Administrator, and hence it will be unlikely that Bacula can access all the system files. -\subsection*{Uninstalling Bacula on Win32} +\section{Uninstalling Bacula on Win32} \index[general]{Win32!Uninstalling Bacula} \index[general]{Uninstalling Bacula on Win32} -\addcontentsline{toc}{subsection}{Uninstalling Bacula on Win32} Once Bacula has been installed, it can be uninstalled using the standard Windows Add/Remove Programs dialog found on the Control panel. -\subsection*{Dealing with Win32 Problems} +\section{Dealing with Win32 Problems} \label{problems} \index[general]{Win32!Dealing with Problems} \index[general]{Dealing with Win32 Problems} -\addcontentsline{toc}{subsection}{Dealing with Win32 Problems} The most likely source of problems is authentication when the Director attempts to connect to the File daemon that you installed. This can occur if @@ -281,10 +275,9 @@ use the ACPI power management timer as a high-resolution counter on Windows \normalsize \label{Compatibility} -\subsection*{Windows Compatibility Considerations} +\section{Windows Compatibility Considerations} \index[general]{Windows Compatibility Considerations} \index[general]{Considerations!Windows Compatibility} -\addcontentsline{toc}{subsection}{Windows Compatibility Considerations} If you are not using the VSS (Volume Shadow Copy) option described in the next section of this chapter, and if any applications are running during @@ -395,10 +388,9 @@ be restore to any machine. \label{VSS} -\subsection*{Volume Shadow Copy Service} +\section{Volume Shadow Copy Service} \index[general]{Volume Shadow Copy Service} \index[general]{VSS} -\addcontentsline{toc}{subsection}{Volume Shadow Copy Service} In version 1.37.30 and greater, you can turn on Microsoft's Volume Shadow Copy Service (VSS). @@ -481,12 +473,11 @@ other drives are backed up, they will be listed on the {\bf Drive(s)="C"} You a reports from each of the writer program. Here they all report VSS\_WS\_STABLE, which means that you will get a consistent snapshot of the data handled by that writer. -\subsection*{VSS Problems} +\section{VSS Problems} \index[general]{Problems!VSS} \index[fd] {Problems!VSS} \index[general]{VSS Problems} \index[fd]{VSS Problems} -\addcontentsline{toc}{subsection}{VSS Problems} If you are experiencing problems such as VSS hanging on MSDE, first try running {\bf vssadmin} to check for problems, then try running {\bf @@ -503,10 +494,9 @@ better with this configuration). \end{itemize} -\subsection*{Windows Firewalls} +\section{Windows Firewalls} \index[general]{Firewalls!Windows} \index[general]{Windows Firewalls} -\addcontentsline{toc}{subsection}{Windows Firewalls} If you turn on the firewalling feature on Windows (default in WinXP SP2), you are likely to find that the Bacula ports are blocked and you cannot @@ -526,10 +516,9 @@ netsh firewall set opmode disable is purported to disable the firewall, but this command is not accepted on my WinXP Home machine. -\subsection*{Windows Port Usage} +\section{Windows Port Usage} \index[general]{Windows Port Usage} \index[general]{Usage!Windows Port} -\addcontentsline{toc}{subsection}{Windows Port Usage} If you want to see if the File daemon has properly opened the port and is listening, you can enter the following command in a shell window: @@ -543,10 +532,9 @@ listening, you can enter the following command in a shell window: TopView is another program that has been recommend, but it is not a standard Win32 program, so you must find and download it from the Internet. -\subsection*{Windows Disaster Recovery} +\section{Windows Disaster Recovery} \index[general]{Recovery!Windows Disaster} \index[general]{Windows Disaster Recovery} -\addcontentsline{toc}{subsection}{Windows Disaster Recovery} We don't currently have a good solution for disaster recovery on Windows as we do on Linux. The main piece lacking is a Windows boot floppy or a Windows boot @@ -570,18 +558,16 @@ Environment) Boot-CD, may be just what is needed to build a complete disaster recovery system for Win32. This distribution can be found at \elink{http://www.nu2.nu/pebuilder/}{http://www.nu2.nu/pebuilder/}. -\subsection*{Windows Restore Problems} +\section{Windows Restore Problems} \index[general]{Problems!Windows Restore} \index[general]{Windows Restore Problems} -\addcontentsline{toc}{subsection}{Windows Restore Problems} Please see the \ilink{Restore Chapter}{Windows} of this manual for problems that you might encounter doing a restore. -subsection*{Windows Backup Problems} +section{Windows Backup Problems} \index[general]{Problems!Windows Backup} \index[general]{Windows Backup Problems} -\addcontentsline{toc}{subsection}{Windows Backup Problems} If during a Backup, you get the message: {\bf ERR=Access is denied} and you are using the portable option, you should try both adding both the non-portable (backup API) and @@ -617,10 +603,9 @@ the file/folder and all child objects. Thanks to Georger Araujo for the above information. -\subsection*{Windows Ownership and Permissions Problems} +\section{Windows Ownership and Permissions Problems} \index[general]{Problems!Windows Ownership and Permissions} \index[general]{Windows Ownership and Permissions Problems} -\addcontentsline{toc}{subsection}{Windows Ownership and Permissions Problems} If you restore files backed up from WinNT/XP/2K to an alternate directory, @@ -646,10 +631,9 @@ Bacula (bacula-fd.exe) runs, from SYSTEM to a Domain Admin userid, resolves the problem. -\subsection*{Manually resetting the Permissions} +\section{Manually resetting the Permissions} \index[general]{Manually resetting the Permissions} \index[general]{Permissions!Manually resetting the} -\addcontentsline{toc}{subsection}{Manually resetting the Permissions} The following solution was provided by Dan Langille \lt{}dan at langille in the dot org domain\gt{}. The steps are performed using Windows 2000 Server but @@ -705,10 +689,9 @@ directory. In addition to the above methods of changing permissions, there is a Microsoft program named {\bf cacls} that can perform similar functions. -\subsection*{Backing Up the WinNT/XP/2K System State} +\section{Backing Up the WinNT/XP/2K System State} \index[general]{State!Backing Up the WinNT/XP/2K System} \index[general]{Backing Up the WinNT/XP/2K System State} -\addcontentsline{toc}{subsection}{Backing Up the WinNT/XP/2K System State} A suggestion by Damian Coutts using Microsoft's NTBackup utility in conjunction with Bacula should permit a full restore of any damaged system @@ -737,10 +720,8 @@ documentation says you can't run a command line restore of the systemstate. To the best of my knowledge, this has not yet been tested. If you test it, please report your results to the Bacula email list. -\subsection*{Windows Considerations for Filename Specifications} -\index[general]{Specifications!Windows Considerations for Filename} -\index[general]{Windows Considerations for Filename Specifications} -\addcontentsline{toc}{subsection}{Windows Considerations for Filename +\section{Considerations for Filename Specifications} +\index[general]{Windows!Considerations for Filename Specifications} Specifications} Please see the @@ -759,11 +740,9 @@ displayed character is not two characters wide. Path/filenames longer than 260 characters (up to 32,000) are supported beginning with Bacula version 1.39.20. -\subsection*{Win32 Specific File daemon Command Line Options} +\section{Win32 Specific File daemon Command Line} \index[general]{Client!Win32 Specific File daemon Command Line Options} \index[general]{Win32 Specific File daemon Command Line Options} -\addcontentsline{toc}{subsection}{Win32 Specific File daemon Command Line -Options} These options are not normally seen or used by the user, and are documented here only for information purposes. At the current time, to change the default @@ -821,10 +800,9 @@ need to use these options as they are normally handled by the system automatically once Bacula is installed. However, you may note these options in some of the .bat files that have been created for your use. -\subsection*{Shutting down Windows Systems} +\section{Shutting down Windows Systems} \index[general]{Shutting down Windows Systems} \index[general]{Systems!Shutting down Windows} -\addcontentsline{toc}{subsection}{Shutting down Windows Systems} Some users like to shutdown their Windows machines after a backup using a Client Run After Job directive. If you want to do something similar, you might