- minor lang file cleanup - commented unimplemented share names link
[BackupPC.git] / doc-src / BackupPC.pod
index ef114b8..a8ddc27 100644 (file)
@@ -41,7 +41,7 @@ cancel backups and browse and restore files from backups.
 =item *
 
 The http/cgi user interface has internationalization (i18n) support,
-currently providing English, French, German and Spanish.
+currently providing English, French, German, Spanish and Italian.
 
 =item *
 
@@ -228,7 +228,9 @@ BackupPC server data to tape.
 Various programs and scripts use rsync to provide hardlinked backups.
 See, for example, Mike Rubel's site (L<http://www.mikerubel.org>),
 J. W. Schultz's dirvish (L<http://www.pegasys.ws/dirvish>),
+Ben Escoto's rdiff-backup (L<http://rdiff-backup.stanford.edu>),
 and John Bowman's rlbackup (L<http://www.math.ualberta.ca/imaging/rlbackup>).
+
 BackupPC provides many additional features, such as compressed storage,
 hardlinking any matching files (rather than just files with the same name),
 and storing special files without root privileges.  But these other scripts
@@ -249,12 +251,6 @@ Adding hardlink support to rsync.
 
 =item *
 
-Adding block and file checksum caching to rsync.  This will significantly
-increase performance since the server doesn't have to read each file
-(twice) to compute the block and file checksums.
-
-=item *
-
 Adding a trip wire feature for notification when files below certain
 directories change.  For example, if you are backing up a DMZ machine,
 you could request that you get sent email if any files below /bin,
@@ -276,29 +272,6 @@ be specified (eg: MySQL, ascii text etc).
 
 =item *
 
-Disconnect the notion of a physical host and a backup client.
-Currently there is a one-to-one match between physical hosts
-and backup clients.  Instead, the current notion of a host
-should be replaced by a backup client.  Each backup client
-corresponds to a physical host.  A physical host could have
-several backup clients.  This is useful for backing up
-different types of data, or backing up different portions
-of a machine with different frequencies or settings.
-
-(Note: this has already been implemented in 2.0.0.)
-
-=item *
-
-Resuming incomplete full backups.  Useful if a machine
-(eg: laptop) is disconnected from the network during a backup,
-or if the user manually stops a backup.  This would be supported
-initially for rsync.  The partial dump would be kept, and be
-browsable.  When the next dump starts, an incremental against
-the partial dump would be done to make sure it was up to date,
-and then the rest of the full dump would be done.
-
-=item *
-
 Replacing smbclient with the perl module FileSys::SmbClient.  This
 gives much more direct control of the smb transfer, allowing
 incrementals to depend on any attribute change (eg: exist, mtime,
@@ -326,14 +299,6 @@ the last, giving a continuous chain of differential dumps.
 
 =item *
 
-Add a backup browsing feature that shows backup history by file.
-So rather than a single directory view, it would be a table showing
-the files (down) and the backups (across).  The internal hardlinks
-encode which files are identical across backups.  You could immediately
-see which files changed on which backups.
-
-=item *
-
 More speculative: Storing binary file deltas (in fact, reverse deltas)
 for files that have the same name as a previous backup, but that aren't
 already in the pool. This will save storage for things like mailbox
@@ -502,6 +467,15 @@ more troublesome, since it keeps this file locked all the time, so it
 cannot be read by smbclient whenever Outlook is running.  See the
 L<Limitations|limitations> section for more discussion of this problem.
 
+In addition to total disk space, you shold make sure you have
+plenty of inodes on your BackupPC data partition. Some users have
+reported running out of inodes on their BackupPC data partition.
+So even if you have plenty of disk space, BackupPC will report
+failures when the inodes are exhausted.  This is a particular
+problem with ext2/ext3 file systems that have a fixed number of
+inodes when the file system is built.  Use "df -i" to see your
+inode usage.
+
 =head2 Step 1: Getting BackupPC
 
 Download the latest version from L<http://backuppc.sourceforge.net>.
@@ -723,7 +697,7 @@ DHCP addresses to search is specified in $Conf{DHCPAddressRanges}.
 
 Note also that the $Conf{ClientNameAlias} feature does not work for
 clients with DHCP set to 1.
-    
+
 =item User name
 
 This should be the unix login/email name of the user who "owns" or uses
@@ -806,13 +780,19 @@ and then set $Conf{XferMethod} to "tar" (use tar on the network
 mounted file system).
 
 Also, to make sure that file names with 8-bit characters are correctly
-transferred by smbclient you should add this to samba's smb.conf file:
+transferred by smbclient you should add this to samba's smb.conf file
+for samba 2.x:
 
     [global]
        # Accept the windows charset
        client code page = 850
        character set = ISO8859-1
 
+For samba 3.x this should instead be:
+
+    [global]
+       unix charset = ISO8859-1
+
 This setting should work for western europe.  
 See L<http://www.oreilly.com/catalog/samba/chapter/book/ch08_03.html>
 for more information about settings for other languages.
@@ -854,7 +834,7 @@ is recommended.  Rsync is run on the remote client via rsh or ssh.
 
 The relevant configuration settings are $Conf{RsyncClientPath},
 $Conf{RsyncClientCmd}, $Conf{RsyncClientRestoreCmd}, $Conf{RsyncShareName},
-$Conf{RsyncArgs}, $Conf{RsyncRestoreArgs} and $Conf{RsyncLogLevel}.
+$Conf{RsyncArgs}, and $Conf{RsyncRestoreArgs}.
 
 =item rsyncd
 
@@ -864,10 +844,14 @@ the client machine and BackupPC connects directly to it.
 
 The relevant configuration settings are $Conf{RsyncdClientPort},
 $Conf{RsyncdUserName}, $Conf{RsyncdPasswd}, $Conf{RsyncdAuthRequired},
-$Conf{RsyncShareName}, $Conf{RsyncArgs}, $Conf{RsyncRestoreArgs}
-and $Conf{RsyncLogLevel}.  In the case of rsyncd, $Conf{RsyncShareName}
-is the name of an rsync module (ie: the thing in square brackets in
-rsyncd's conf file -- see rsyncd.conf), not a file system path.
+$Conf{RsyncShareName}, $Conf{RsyncArgs}, and $Conf{RsyncRestoreArgs}.
+$Conf{RsyncShareName} is the name of an rsync module (ie: the thing
+in square brackets in rsyncd's conf file -- see rsyncd.conf), not a
+file system path.
+
+Be aware that rsyncd will remove the leading '/' from path names in
+symbolic links if you specify "use chroot = no" in the rsynd.conf file.
+See the rsyncd.conf manual page for more information.
 
 =back
 
@@ -903,6 +887,10 @@ for a password. There are two common versions of ssh: v1 and v2. Here
 are some instructions for one way to setup ssh.  (Check which version
 of SSH you have by typing "ssh" or "man ssh".)
 
+=item Mac OS X
+
+In general this should be similar to Linux/Unix machines.
+
 =over 4
 
 =item OpenSSH Instructions
@@ -1035,9 +1023,9 @@ Copy BackupPC's public key (BackupPC_id_rsa_1024_a.pub) to the
 =item Fix permissions
 
 You will probably need to make sure that all the files
-in /.ssh2 have no group or other read/write permission:
+in ~/.ssh2 have no group or other read/write permission:
 
-    chmod -R go-rwx /.ssh2
+    chmod -R go-rwx ~/.ssh2
 
 You should do the same thing for the BackupPC user on the server.
 
@@ -1083,7 +1071,7 @@ Next, force protocol version 1 by adding:
 
 to BackupPC's ~/.ssh/config on the server.
 
-Next, run "chmod -R go-rwx ~/.ssh" on the server and "chmod -R go-rwx /.ssh"
+Next, run "chmod -R go-rwx ~/.ssh" on the server and "chmod -R go-rwx ~/.ssh"
 on the client.
 
 Finally, test using:
@@ -1269,12 +1257,12 @@ to Apache's 1.x httpd.conf file:
     </IfModule>
 
 Apache 2.0.44 with Perl 5.8.0 on RedHat 7.1, Don Silvia reports that
-this works:
+this works (with tweaks from Michael Tuzi):
 
     LoadModule perl_module modules/mod_perl.so
     PerlModule Apache2
 
-    <Location /path/to/cgi/>
+    <Directory /path/to/cgi/>
        SetHandler perl-script
        PerlResponseHandler ModPerl::Registry
        PerlOptions +ParseHeaders
@@ -1287,7 +1275,7 @@ this works:
        AuthType Basic
        AuthUserFile /path/to/user_file
        Require valid-user
-    </Location>
+    </Directory>
 
 There are other optimizations and options with mod_perl.  For
 example, you can tell mod_perl to preload various perl modules,
@@ -2040,6 +2028,15 @@ Each archive type is specified by a BackupPC host with its XferMethod
 set to 'archive'. This allows for multiple configurations at sites where
 there might be a combination of tape and cd/dvd backups being made.
 
+BackupPC provides a menu that allows one or more hosts to be archived.
+The most recent backup of each host is archived using BackupPC_tarCreate,
+and the output is optionally compressed and split into fixed-sized
+files (eg: 650MB).
+
+The archive for each host is done by default using
+__INSTALLDIR__/BackupPC_archiveHost.  This script can be copied
+and customized as needed.
+
 =head2 Configuring an Archive Host
 
 To create an Archive Host, add it to the hosts file just as any other host
@@ -2051,13 +2048,13 @@ the Archive Hosts's pc directory, adding the following line:
 $Conf{XferMethod} = 'archive';
 
 To further customise the archive's parameters you can adding the changed
-parameters in the host's config.pl file. The parameters are explained in the config.pl
-file.
+parameters in the host's config.pl file. The parameters are explained in
+the config.pl file.  Parameters may be fixed or the user can be allowed 
+to change them (eg: output device).
 
-The example archive programs included with BackupPC are for a CD and 
-Tape archive. The programs are called BackupPC_archivecd and 
-BackupPC_archivetape. These are specified by the ArchiveClientCmd configuration
-parameter.
+The per-host archive command is $Conf{ArchiveClientCmd}.  By default
+this invokes __INSTALLDIR__/BackupPC_archiveHost, which you can
+copy and customize as necessary.
 
 =head2 Starting an Archive
 
@@ -3156,7 +3153,7 @@ See L<http://backuppc.sourceforge.net>.
 
 =head1 Copyright
 
-Copyright (C) 2001-2003 Craig Barratt
+Copyright (C) 2001-2004 Craig Barratt
 
 =head1 Credits
 
@@ -3166,14 +3163,23 @@ Xavier provided the French translation fr.pm, with additions from
 Guillaume.
 
 Ryan Kucera contributed the directory navigation code and images
-for v1.5.0.  He also contributed the first skeleton of BackupPC_restore.
+for v1.5.0.  He contributed the first skeleton of BackupPC_restore.
+He also added a significant revision to the CGI interface, including
+CSS tags, in v2.1.0.
 
 Guillaume Filion wrote BackupPC_zipCreate and added the CGI support
 for zip download, in addition to some CGI cleanup, for v1.5.0.
+Guillaume continues to support fr.pm updates for each
+new version.
+
+Josh Marshall implemented the Archive feature in v2.1.0.
+
+Javier Gonzalez provided the Spanish translation, es.pm for v2.0.0.
 
-Javier Gonzalez provided the Spanish translation, es.pm.
+Manfred Herrmann provided the German translation, de.pm for v2.0.0.
+Manfred continues to support de.pm updates for each new version.
 
-Manfred Herrmann provided the German translation, de.pm.
+Lorenzo Cappelletti provided the Italian translation, it.pm for v2.1.0.
 
 Many people have reported bugs, made useful suggestions and helped
 with testing; see the ChangeLog and the mail lists.