\section{Accurate Backup}
\index[general]{Accurate Backup}
-As with most other backup programs, by default Bacula decides what files to backup for
-Incremental and Differental backup by comparing the change (st\_ctime) and
-modification (st\_mtime) times of the file to the time the last backup
-completed. If one of those two times is later than the last backup time,
-then the file will be backed up. This does not, however, permit tracking what
-files have been deleted and will miss any file with an old time that may have
-been restored to or moved onto the client filesystem.
+As with most other backup programs, by default Bacula decides what files to
+backup for Incremental and Differental backup by comparing the change
+(st\_ctime) and modification (st\_mtime) times of the file to the time the last
+backup completed. If one of those two times is later than the last backup
+time, then the file will be backed up. This does not, however, permit tracking
+what files have been deleted and will miss any file with an old time that may
+have been restored to or moved onto the client filesystem.
\subsection{Accurate = \lt{}yes|no\gt{}}
If the {\bf Accurate = \lt{}yes|no\gt{}} directive is enabled (default no) in
\section{Copy Jobs}
\index[general]{Copy Jobs}
-A new {\bf Copy} job type 'C' has been implemented. It is similar
-to the existing Migration feature with the exception that
-the Job that is copied is left unchanged. This essentially creates
-two identical copies of the same backup. However, the copy is treated
-as a copy rather than a backup job, and hence is not directly available for
-restore. The {\bf restore} command lists copy jobs and allows selection of copies
-by using \texttt{jobid=} option. %if the keyword {\bf copies} is present on the command line.
+
+A new {\bf Copy} job type 'C' has been implemented. It is similar to the
+existing Migration feature with the exception that the Job that is copied is
+left unchanged. This essentially creates two identical copies of the same
+backup. However, the copy is treated as a copy rather than a backup job, and
+hence is not directly available for restore. The {\bf restore} command lists
+copy jobs and allows selection of copies by using \texttt{jobid=}
+option. %if the keyword {\bf copies} is present on the command line.
The Copy Job runs without using the File daemon by copying the data from the
old backup Volume to a different Volume in a different Pool. See the Migration
\end{verbatim}
\section{ACL Updates}
-The whole ACL code had been overhauled and in this version each platforms has different
-streams for each type of acl available on such an platform. As acls between platforms
-tend to be not that portable (most implement POSIX acls but some use an other draft or
-a completely different format) we currently only allow certain platform specific ACL
-streams to be decoded and restored on the same platform that they were created on.
-The old code allowed to restore ACL cross platform but the comments already mention
-that not being to wise. For backward compatability the new code will accept the 2 old
-ACL streams and handle those with the platform specific handler. But for all new backups
-it will save the ACLs using the new streams.
+The whole ACL code had been overhauled and in this version each platforms has
+different streams for each type of acl available on such an platform. As acls
+between platforms tend to be not that portable (most implement POSIX acls but
+some use an other draft or a completely different format) we currently only
+allow certain platform specific ACL streams to be decoded and restored on the
+same platform that they were created on. The old code allowed to restore ACL
+cross platform but the comments already mention that not being to wise. For
+backward compatability the new code will accept the 2 old ACL streams and
+handle those with the platform specific handler. But for all new backups it
+will save the ACLs using the new streams.
Currently the following platforms support ACLs:
\item {\bf Solaris}
\end{itemize}
-Currently we support the following ACL types (these ACL streams use a reserved part
-of the stream numbers):
+Currently we support the following ACL types (these ACL streams use a reserved
+part of the stream numbers):
\begin{itemize}
- \item {\bf STREAM\_ACL\_AIX\_TEXT} 1000 AIX specific string representation from acl\_get
- \item {\bf STREAM\_ACL\_DARWIN\_ACCESS\_ACL\_T} 1001 Darwin (OSX) specific acl\_t string
- representation from acl\_to\_text (POSIX acl)
- \item {\bf STREAM\_ACL\_FREEBSD\_DEFAULT\_ACL\_T} 1002 FreeBSD specific acl\_t
+\item {\bf STREAM\_ACL\_AIX\_TEXT} 1000 AIX specific string representation from
+ acl\_get
+ \item {\bf STREAM\_ACL\_DARWIN\_ACCESS\_ACL} 1001 Darwin (OSX) specific acl\_t
+ string representation from acl\_to\_text (POSIX acl)
+ \item {\bf STREAM\_ACL\_FREEBSD\_DEFAULT\_ACL} 1002 FreeBSD specific acl\_t
string representation from acl\_to\_text (POSIX acl) for default acls.
- \item {\bf STREAM\_ACL\_FREEBSD\_ACCESS\_ACL\_T} 1003 FreeBSD specific acl\_t
+ \item {\bf STREAM\_ACL\_FREEBSD\_ACCESS\_ACL} 1003 FreeBSD specific acl\_t
string representation from acl\_to\_text (POSIX acl) for access acls.
- \item {\bf STREAM\_ACL\_HPUX\_ACL\_ENTRY} 1004 HPUX specific acl\_entry string representation
- from acltostr (POSIX acl)
- \item {\bf STREAM\_ACL\_IRIX\_DEFAULT\_ACL\_T} 1005 IRIX specific acl\_t string representation
- from acl\_to\_text (POSIX acl) for default acls.
- \item {\bf STREAM\_ACL\_IRIX\_ACCESS\_ACL\_T} 1006 IRIX specific acl\_t string representation
- from acl\_to\_text (POSIX acl) for access acls.
- \item {\bf STREAM\_ACL\_LINUX\_DEFAULT\_ACL\_T} 1007 Linux specific acl\_t string representation
- from acl\_to\_text (POSIX acl) for default acls.
- \item {\bf STREAM\_ACL\_LINUX\_ACCESS\_ACL\_T} 1008 Linux specific acl\_t string representation
- from acl\_to\_text (POSIX acl) for access acls.
- \item {\bf STREAM\_ACL\_TRU64\_DEFAULT\_ACL\_T} 1009 Tru64 specific acl\_t string representation
- from acl\_to\_text (POSIX acl) for default acls.
- \item {\bf STREAM\_ACL\_TRU64\_DEFAULT\_DIR\_ACL\_T} 1010 Tru64 specific acl\_t string representation
- from acl\_to\_text (POSIX acl) for default acls.
- \item {\bf STREAM\_ACL\_TRU64\_ACCESS\_ACL\_T} 1011 Tru64 specific acl\_t string representation
- from acl\_to\_text (POSIX acl) for access acls.
- \item {\bf STREAM\_ACL\_SOLARIS\_ACLENT\_T} 1012 Solaris specific aclent\_t string representation
- from acltotext or acl\_totext (POSIX acl)
- \item {\bf STREAM\_ACL\_SOLARIS\_ACE\_T} 1013 Solaris specific ace\_t string representation from
+ \item {\bf STREAM\_ACL\_HPUX\_ACL\_ENTRY} 1004 HPUX specific acl\_entry
+ string representation from acltostr (POSIX acl)
+ \item {\bf STREAM\_ACL\_IRIX\_DEFAULT\_ACL} 1005 IRIX specific acl\_t string
+ representation from acl\_to\_text (POSIX acl) for default acls.
+ \item {\bf STREAM\_ACL\_IRIX\_ACCESS\_ACL} 1006 IRIX specific acl\_t string
+ representation from acl\_to\_text (POSIX acl) for access acls.
+ \item {\bf STREAM\_ACL\_LINUX\_DEFAULT\_ACL} 1007 Linux specific acl\_t
+ string representation from acl\_to\_text (POSIX acl) for default acls.
+ \item {\bf STREAM\_ACL\_LINUX\_ACCESS\_ACL} 1008 Linux specific acl\_t string
+ representation from acl\_to\_text (POSIX acl) for access acls.
+ \item {\bf STREAM\_ACL\_TRU64\_DEFAULT\_ACL} 1009 Tru64 specific acl\_t
+ string representation from acl\_to\_text (POSIX acl) for default acls.
+ \item {\bf STREAM\_ACL\_TRU64\_DEFAULT\_DIR\_ACL} 1010 Tru64 specific acl\_t
+ string representation from acl\_to\_text (POSIX acl) for default acls.
+ \item {\bf STREAM\_ACL\_TRU64\_ACCESS\_ACL} 1011 Tru64 specific acl\_t string
+ representation from acl\_to\_text (POSIX acl) for access acls.
+ \item {\bf STREAM\_ACL\_SOLARIS\_ACLENT} 1012 Solaris specific aclent\_t
+ string representation from acltotext or acl\_totext (POSIX acl)
+ \item {\bf STREAM\_ACL\_SOLARIS\_ACE} 1013 Solaris specific ace\_t string representation from
from acl\_totext (NFSv4 or ZFS acl)
\end{itemize}
-In future versions we might support conversion functions from one type of acl into an other
-for types that are either the same or easily convertable. For now the streams are seperate
-and restoring them on a platform that doesn't recognize them will give you a warning.
+In future versions we might support conversion functions from one type of acl
+into an other for types that are either the same or easily convertable. For now
+the streams are seperate and restoring them on a platform that doesn't
+recognize them will give you a warning.
\section{Extended Attributes}
-Something that was on the project list for some time is now implemented for platforms
-that support a similar kind of interface. Its the support for backup and restore of
-so called extended attributes. As extended attributes are so platform specific these
-attributes are saved in seperate streams for each platform. Restores can only be performed
-on the same platform the backup was done. There is support for all types of extended
-attributes, but restoring from one type of filesystem onto an other type of filesystem
-on the same platform may lead to supprises. As extended attributes can contain any
-type of data they are stored as a series of so called value-pairs. This data must be
-seen as mostly binary and is stored as such. As security labels from selinux are
-also extended attributes this option also stores those labels and no specific
-code is enabled for handling selinux security labels.
+Something that was on the project list for some time is now implemented for
+platforms that support a similar kind of interface. Its the support for backup
+and restore of so called extended attributes. As extended attributes are so
+platform specific these attributes are saved in seperate streams for each
+platform. Restores can only be performed on the same platform the backup was
+done. There is support for all types of extended attributes, but restoring from
+one type of filesystem onto an other type of filesystem on the same platform
+may lead to supprises. As extended attributes can contain any type of data they
+are stored as a series of so called value-pairs. This data must be seen as
+mostly binary and is stored as such. As security labels from selinux are also
+extended attributes this option also stores those labels and no specific code
+is enabled for handling selinux security labels.
Currently the following platforms support extended attributes:
\begin{itemize}
\item {\bf NetBSD}
\end{itemize}
-On linux acls are also extended attributes, as such when you enable ACLs on a Linux
-platform it will NOT save the same data twice e.g. it will save the ACLs and not
-the same exteneded attribute.
+On linux acls are also extended attributes, as such when you enable ACLs on a
+Linux platform it will NOT save the same data twice e.g. it will save the ACLs
+and not the same exteneded attribute.
-To enable the backup of extended attributes please add the following to your fileset
-definition.
+To enable the backup of extended attributes please add the following to your
+fileset definition.
\begin{verbatim}
FileSet {
Name = "MyFileSet"
portable.
An important advantage of using shared objects is that on a machine with the
-Directory, File daemon, the Storage daemon, and a console, you will have only one copy
-of the code in memory rather than four copies. Also the total size of the
-binary release is smaller since the library code appears only once rather than
-once for every program that uses it; this results in significant reduction in
-the size of the binaries particularly for the utility tools.
+Directory, File daemon, the Storage daemon, and a console, you will have only
+one copy of the code in memory rather than four copies. Also the total size of
+the binary release is smaller since the library code appears only once rather
+than once for every program that uses it; this results in significant reduction
+in the size of the binaries particularly for the utility tools.
-In order for the system loader to find the shared objects when loading
-the Bacula binaries, the Bacula shared objects must either be in a shared object
-directory known to the loader (typically /usr/lib) or they must be in the directory
-that may be specified on the {\bf ./configure} line using the
-{\bf {-}{-}libdir} option as:
+In order for the system loader to find the shared objects when loading the
+Bacula binaries, the Bacula shared objects must either be in a shared object
+directory known to the loader (typically /usr/lib) or they must be in the
+directory that may be specified on the {\bf ./configure} line using the {\bf
+ {-}{-}libdir} option as:
\begin{verbatim}
./configure --libdir=/full-path/dir