From fb031cacb65b32399e0b35d55b737349df7cef3c Mon Sep 17 00:00:00 2001 From: Kern Sibbald Date: Thu, 10 Nov 2005 14:28:25 +0000 Subject: [PATCH] Final changes --- docs/manual-de/fileset.tex | 138 ++++++++++++++++++++++++++++-------- docs/manual/fileset.tex | 140 +++++++++++++++++++++++++++++-------- 2 files changed, 218 insertions(+), 60 deletions(-) diff --git a/docs/manual-de/fileset.tex b/docs/manual-de/fileset.tex index 76c76c38..47964eee 100644 --- a/docs/manual-de/fileset.tex +++ b/docs/manual-de/fileset.tex @@ -260,21 +260,82 @@ The directives within an Options resource may be one of the following: 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 +\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 @@ -501,7 +562,8 @@ The directives within an Options resource may be one of the following: 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. @@ -546,32 +608,33 @@ Include { 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: @@ -593,6 +656,7 @@ Include { 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 { @@ -638,6 +702,20 @@ FileSet { 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 diff --git a/docs/manual/fileset.tex b/docs/manual/fileset.tex index 76c76c38..6d250e82 100644 --- a/docs/manual/fileset.tex +++ b/docs/manual/fileset.tex @@ -260,21 +260,83 @@ The directives within an Options resource may be one of the following: 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 +\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 @@ -501,7 +563,8 @@ The directives within an Options resource may be one of the following: 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. @@ -546,32 +609,33 @@ Include { 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: @@ -593,6 +657,7 @@ Include { 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 { @@ -638,6 +703,21 @@ FileSet { 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 -- 2.39.5