inodes, number of links, size, and MD5 changes.
\item [onefs=yes|no]
-\index[fd]{onefs }
+\index[fd]{onefs}
If set to {\bf yes} (the default), {\bf Bacula} will remain on a single file
system. That is it will not backup file systems that are mounted on a
- subdirectory. If you wish to backup multiple filesystems, you can explicitly
- list each file system you want saved. Otherwise, if you set the onefs option
+ subdirectory. If you are using a *nix system, you may not even be aware
+ that there are several different filesystems as they are often
+ automatically mounted by the OS (e.g. /dev, /net, /sys, /proc, ...).
+ With Bacula 1.38.0 or later, it will inform you when it decides not
+ to traverse into another filesystem. This can be very useful if you
+ forgot to backup a particular partition. An example of the
+ informational message in the job report is:
+
+\footnotesize
+\begin{verbatim}
+rufus-fd: Filesystem change prohibited. Will not descend into /misc
+rufus-fd: Filesystem change prohibited. Will not descend into /net
+rufus-fd: Filesystem change prohibited. Will not descend into /var/lib/nfs/rpc_pipefs
+rufus-fd: Filesystem change prohibited. Will not descend into /selinux
+rufus-fd: Filesystem change prohibited. Will not descend into /sys
+rufus-fd: Filesystem change prohibited. Will not descend into /dev
+\end{verbatim}
+\normalsize
+ If you wish to backup multiple filesystems, you can explicitly
+ list each filesystem you want saved. Otherwise, if you set the onefs option
to {\bf no}, Bacula will backup all mounted file systems (i.e. traverse mount
points) that are found within the {\bf FileSet}. Thus if you have NFS or
Samba file systems mounted on a directory listed in your FileSet, they will
also be backed up. Normally, it is preferable to set {\bf onefs=yes} and to
explicitly name each filesystem you want backed up. Explicitly naming the
filesystems you want backed up avoids the possibility of getting into a
- infinite loop recursing filesystems. See the example below for more details.
+ infinite loop recursing filesystems. Another possiblity is to
+ use {\bf onefs=no} and to set {\bs fstype=ext2, ...}.
+ See the example below for more details.
-\label{portable}
+ If you think that Bacula should be backing up a particular directory
+ and it is not, and you have {\bf onefs=no} set, before you complain,
+ please do:
+
+\footnotesize
+\begin{verbatim}
+ stat /
+ stat <filesystem>
+\end{verbatim}
+\normalsize
+
+where you replace {\bf filesystem} with the one in question. If the
+{\bf Device:} number is different for / and for your filesystem, then they
+are on different filesystems. E.g.
+\footnotesize
+\begin{verbatim}
+stat /
+ File: `/'
+ Size: 4096 Blocks: 16 IO Block: 4096 directory
+Device: 302h/770d Inode: 2 Links: 26
+Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
+Access: 2005-11-10 12:28:01.000000000 +0100
+Modify: 2005-09-27 17:52:32.000000000 +0200
+Change: 2005-09-27 17:52:32.000000000 +0200
+
+stat /net
+ File: `/net'
+ Size: 0 Blocks: 0 IO Block: 4096 directory
+Device: 15h/21d Inode: 6518 Links: 2
+Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
+Access: 2005-11-10 14:47:42.943222157 +0100
+Modify: 2005-09-27 17:52:37.314265968 +0200
+Change: 2005-09-27 17:52:37.314265968 +0200
+\end{verbatim}
+\normalsize
+
+ Also be aware that even if you include {\bf /net} in your list
+ of files to backup, you will get the informational message about
+ Filesystem change prohibited when Bacula is processing the {\bf /}
+ directory.
+
+\label{portable}
\item [portable=yes|no]
\index[dir]{portable }
If set to {\bf yes} (default is {\bf no}), the Bacula File daemon will backup
the type specified on the fstype directive does not match the
filesystem for a particular directive, that directory will not be
backed up. This directive can be used to prevent backing up
- non-local filesystems.
+ non-local filesystems. Normally, when you use this directive, you
+ would also set {\bf onefs=no} so that Bacula will traverse filesystems.
This option is not implemented in Win32 systems.
file), and any output from that program will be assumed to be a list of
files or directories, one per line, to be included.
- This allows you to
- have a job that, for example, includes all the local partitions even if
- you change the partitioning by adding a disk. The examples
- below show you how to do this. However, please note two
- things: 1. if you want the local filesystems, you probably
- should be using the new {\bf fstype} directive, which was
- added in version 1.36.3. 2. the exact syntax of the command
- needed in the examples below is very system dependent. For
- example, on recent Linux systems, you may need to add the -P
- option, on FreeBSD systems, the options will be different as
+ This allows you to have a job that, for example, includes all the local
+ partitions even if you change the partitioning by adding a disk. The
+ examples below show you how to do this. However, please note two
+ things: \\
+ 1. if you want the local filesystems, you probably should be
+ using the new {\bf fstype} directive, which was added in version 1.36.3
+ and set {\bf onefs=no}.
+ \\
+
+ 2. the exact syntax of the command needed in the examples below is very
+ system dependent. For example, on recent Linux systems, you may need to
+ add the -P option, on FreeBSD systems, the options will be different as
well.
- In general, you will need
- to prefix your command or commands with a {\bf sh -c} so that they are
- invoked by a shell. This will not be the case if you are invoking a
- script as in the second example below. Also, you must take care to
- escape (precede with a \textbackslash{}) wild-cards, shell character,
- and to ensure that any spaces in your command are escaped as well. If
- you use a single quotes (') within a double quote ("), Bacula will
- treat everything between the single quotes as one field so it will not
- be necessary to escape the spaces. In general, getting all the quotes
- and escapes correct is a real pain as you can see by the next example.
- As a consequence, it is often easier to put everything in a file and
- simply use the file name within Bacula. In that case the {\bf sh -c}
- will not be necessary providing the first line of the file is {\bf
- \#!/bin/sh}.
+ In general, you will need to prefix your command or commands with a {\bf
+ sh -c} so that they are invoked by a shell. This will not be the case
+ if you are invoking a script as in the second example below. Also, you
+ must take care to escape (precede with a \textbackslash{}) wild-cards,
+ shell character, and to ensure that any spaces in your command are
+ escaped as well. If you use a single quotes (') within a double quote
+ ("), Bacula will treat everything between the single quotes as one field
+ so it will not be necessary to escape the spaces. In general, getting
+ all the quotes and escapes correct is a real pain as you can see by the
+ next example. As a consequence, it is often easier to put everything in
+ a file and simply use the file name within Bacula. In that case the
+ {\bf sh -c} will not be necessary providing the first line of the file
+ is {\bf \#!/bin/sh}.
As an example:
you must also quote for the shell command. In the end, it is probably easier
just to execute a small file with:
+
\footnotesize
\begin{verbatim}
Include {
to {\bf ext3} (or your preferred filesystem type), and you will be in
business.
+ If you know what filesystems you have mounted on your system, e.g.
+ for RedHat Linux normally only ext2 and ext3, you can use:
+
+\footnotesize
+\begin{verbatim}
+
+Include {
+ Options { signature = SHA1; onfs=no; fstype=ext2 }
+ File = /
+}
+\end{verbatim}
+\normalsize
+
+
\item Any file-list item preceded by a less-than sign (\lt{}) will be taken
to be a file. This file will be read on the Director's machine at the time
the Job starts, and the data will be assumed to be a list of directories or
inodes, number of links, size, and MD5 changes.
\item [onefs=yes|no]
-\index[fd]{onefs }
+\index[fd]{onefs}
If set to {\bf yes} (the default), {\bf Bacula} will remain on a single file
system. That is it will not backup file systems that are mounted on a
- subdirectory. If you wish to backup multiple filesystems, you can explicitly
- list each file system you want saved. Otherwise, if you set the onefs option
+ subdirectory. If you are using a *nix system, you may not even be aware
+ that there are several different filesystems as they are often
+ automatically mounted by the OS (e.g. /dev, /net, /sys, /proc, ...).
+ With Bacula 1.38.0 or later, it will inform you when it decides not
+ to traverse into another filesystem. This can be very useful if you
+ forgot to backup a particular partition. An example of the
+ informational message in the job report is:
+
+\footnotesize
+\begin{verbatim}
+rufus-fd: Filesystem change prohibited. Will not descend into /misc
+rufus-fd: Filesystem change prohibited. Will not descend into /net
+rufus-fd: Filesystem change prohibited. Will not descend into /var/lib/nfs/rpc_pipefs
+rufus-fd: Filesystem change prohibited. Will not descend into /selinux
+rufus-fd: Filesystem change prohibited. Will not descend into /sys
+rufus-fd: Filesystem change prohibited. Will not descend into /dev
+rufus-fd: Filesystem change prohibited. Will not descend into /home
+\end{verbatim}
+\normalsize
+ If you wish to backup multiple filesystems, you can explicitly
+ list each filesystem you want saved. Otherwise, if you set the onefs option
to {\bf no}, Bacula will backup all mounted file systems (i.e. traverse mount
points) that are found within the {\bf FileSet}. Thus if you have NFS or
Samba file systems mounted on a directory listed in your FileSet, they will
also be backed up. Normally, it is preferable to set {\bf onefs=yes} and to
explicitly name each filesystem you want backed up. Explicitly naming the
filesystems you want backed up avoids the possibility of getting into a
- infinite loop recursing filesystems. See the example below for more details.
+ infinite loop recursing filesystems. Another possiblity is to
+ use {\bf onefs=no} and to set {\bs fstype=ext2, ...}.
+ See the example below for more details.
-\label{portable}
+ If you think that Bacula should be backing up a particular directory
+ and it is not, and you have {\bf onefs=no} set, before you complain,
+ please do:
+
+\footnotesize
+\begin{verbatim}
+ stat /
+ stat <filesystem>
+\end{verbatim}
+\normalsize
+
+where you replace {\bf filesystem} with the one in question. If the
+{\bf Device:} number is different for / and for your filesystem, then they
+are on different filesystems. E.g.
+\footnotesize
+\begin{verbatim}
+stat /
+ File: `/'
+ Size: 4096 Blocks: 16 IO Block: 4096 directory
+Device: 302h/770d Inode: 2 Links: 26
+Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
+Access: 2005-11-10 12:28:01.000000000 +0100
+Modify: 2005-09-27 17:52:32.000000000 +0200
+Change: 2005-09-27 17:52:32.000000000 +0200
+
+stat /net
+ File: `/home'
+ Size: 4096 Blocks: 16 IO Block: 4096 directory
+Device: 308h/776d Inode: 2 Links: 7
+Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
+Access: 2005-11-10 12:28:02.000000000 +0100
+Modify: 2005-11-06 12:36:48.000000000 +0100
+Change: 2005-11-06 12:36:48.000000000 +0100
+\end{verbatim}
+\normalsize
+
+ Also be aware that even if you include {\bf /home} in your list
+ of files to backup, as you most likely should, you will get the
+ informational message about Filesystem change prohibited when Bacula is
+ processing the {\bf /} directory.
+
+\label{portable}
\item [portable=yes|no]
\index[dir]{portable }
If set to {\bf yes} (default is {\bf no}), the Bacula File daemon will backup
the type specified on the fstype directive does not match the
filesystem for a particular directive, that directory will not be
backed up. This directive can be used to prevent backing up
- non-local filesystems.
+ non-local filesystems. Normally, when you use this directive, you
+ would also set {\bf onefs=no} so that Bacula will traverse filesystems.
This option is not implemented in Win32 systems.
file), and any output from that program will be assumed to be a list of
files or directories, one per line, to be included.
- This allows you to
- have a job that, for example, includes all the local partitions even if
- you change the partitioning by adding a disk. The examples
- below show you how to do this. However, please note two
- things: 1. if you want the local filesystems, you probably
- should be using the new {\bf fstype} directive, which was
- added in version 1.36.3. 2. the exact syntax of the command
- needed in the examples below is very system dependent. For
- example, on recent Linux systems, you may need to add the -P
- option, on FreeBSD systems, the options will be different as
+ This allows you to have a job that, for example, includes all the local
+ partitions even if you change the partitioning by adding a disk. The
+ examples below show you how to do this. However, please note two
+ things: \\
+ 1. if you want the local filesystems, you probably should be
+ using the new {\bf fstype} directive, which was added in version 1.36.3
+ and set {\bf onefs=no}.
+ \\
+
+ 2. the exact syntax of the command needed in the examples below is very
+ system dependent. For example, on recent Linux systems, you may need to
+ add the -P option, on FreeBSD systems, the options will be different as
well.
- In general, you will need
- to prefix your command or commands with a {\bf sh -c} so that they are
- invoked by a shell. This will not be the case if you are invoking a
- script as in the second example below. Also, you must take care to
- escape (precede with a \textbackslash{}) wild-cards, shell character,
- and to ensure that any spaces in your command are escaped as well. If
- you use a single quotes (') within a double quote ("), Bacula will
- treat everything between the single quotes as one field so it will not
- be necessary to escape the spaces. In general, getting all the quotes
- and escapes correct is a real pain as you can see by the next example.
- As a consequence, it is often easier to put everything in a file and
- simply use the file name within Bacula. In that case the {\bf sh -c}
- will not be necessary providing the first line of the file is {\bf
- \#!/bin/sh}.
+ In general, you will need to prefix your command or commands with a {\bf
+ sh -c} so that they are invoked by a shell. This will not be the case
+ if you are invoking a script as in the second example below. Also, you
+ must take care to escape (precede with a \textbackslash{}) wild-cards,
+ shell character, and to ensure that any spaces in your command are
+ escaped as well. If you use a single quotes (') within a double quote
+ ("), Bacula will treat everything between the single quotes as one field
+ so it will not be necessary to escape the spaces. In general, getting
+ all the quotes and escapes correct is a real pain as you can see by the
+ next example. As a consequence, it is often easier to put everything in
+ a file and simply use the file name within Bacula. In that case the
+ {\bf sh -c} will not be necessary providing the first line of the file
+ is {\bf \#!/bin/sh}.
As an example:
you must also quote for the shell command. In the end, it is probably easier
just to execute a small file with:
+
\footnotesize
\begin{verbatim}
Include {
to {\bf ext3} (or your preferred filesystem type), and you will be in
business.
+ If you know what filesystems you have mounted on your system, e.g.
+ for RedHat Linux normally only ext2 and ext3, you can backup
+ all local fileystems using something like:
+
+\footnotesize
+\begin{verbatim}
+
+Include {
+ Options { signature = SHA1; onfs=no; fstype=ext2 }
+ File = /
+}
+\end{verbatim}
+\normalsize
+
+
\item Any file-list item preceded by a less-than sign (\lt{}) will be taken
to be a file. This file will be read on the Director's machine at the time
the Job starts, and the data will be assumed to be a list of directories or