1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311
|
AF's backup system
------------------
This is a client-server backup system offering several
workstations a centralized backup to special backup
servers. The backup on the clients can be started auto-
matically using cron-jobs on the clients, but the more
intelligent solution is to start it remotely from a central
administrative host. To be independent of tricks like
rsh, rcp and so on, that are in fact security holes, this
remote start option is implemented internally. This is
done because normally the backup has to be run with root
authorization, otherwise files that are read protected by
users would not be backed up. Any streaming device can be
used for writing the data to it. The only thing it must be
able to do is to distinguish between several files on tape
so that it can be positioned directly.
Writing backups is normally done sequentially: The next
writing to tape goes to the end of the previous write no
matter from where you have restored in the meantime. There
is a special possibility for the administrator to change
the next writing position, but this should be done only
in emergency cases (See: PROGRAMS, "cartis"). Another way
to be more flexible here is to configure variable append
mode.
A more thorough introduction can be found in the file
INTRO, all changes in comparison with earlier releases
are listed in the file Changes.
afbackup has been tested on Linux, AIX, IRIX, FreeBSD,
Digital Unix (OSF1), Solaris and HP-UX. The clientside has
also been tested on SunOS and OpenBSD. Using Solaris < 2.6
as server is discouraged.
DISCLAIMER
----------
These programs come without warranty. Everybody using this
software does so at his or her own risk. The C-code has
nonetheless been running over a year without problems and
should have no bugs - at least if there are, they didn't
hurt any backup or restore. The scripts for installation
and configuration have been added later and might have
bugs (but lots of testing has been done of course).
PLEASE
------
Can someone (-: PLEASE :-) do me a favour and:
- tell me, if she or he finds unusual, strange or simply
wrong English anywhere in my text. (This is a permanent
request due to ongoing development of this software and
thus the documentation)
FEATURES
--------
- Client/Server System
- Authentication of the client is performed before it can
take over control (see INSTALL and FAQ) -> security
- Several servers can be configured for each client: the actual
server is chosen by availability
- Multi stream server, several clients can store to one
server at the same time
- Remote start option -> centralized administration
- Access restriction for the streamer device -> security
- Client-side per-file processing -> reliability. If the
files and directories were first packed and then processed,
by the server a single faulty bit in the processed stream
would make the rest of the backup unaccessible for restore
- Built-in compression (requires libz)
- Data stream is written to tape in pieces of configurable
size -> fast finding of files during restore
- Tape position logging for each file -> fast finding of files
during restore
- Tape capacity is fully used
- Flexible tape handling and configurable append mode
- Full/incremental backups and verify
- Raw partitions can be saved
- Ordinary users can run the restore for their own files
and directories, but only for these
- Emergency recovery on different catastrophe levels
- Command output saving feature: useful e.g for databases
- Cartridge locations database maintained
- Support for media changers
- Client access to cartridge sets can be restricted
WHAT YOU NEED
-------------
GNU make. Others may not work, but all should (thanks to
autoconfig). Using gcc is recommended.
A streaming device. This can be either a cartridge handling
system or a simple drive. In the latter case you might want
to maintain several cartridges nonetheless. Just buy them
and write numbers to them starting with 1. The backup server
will supply you with email when a tape must be put in and
which it should be. The number of cartridges is configurable.
E.g. a compression program on the client side, if you want to
use the processing feature and no built-in compression, which
is not mandatory.
Some space for the logfiles. All the names of the saved files
and directories are written to log files, which could grow to
a notable size if a lot of files are saved.
For media changer support an appropriate driver command is
necessary, e.g. mtx or stctl. They can be obtained from the
same place, where afbackup had been downloaded.
INSTALLATION
------------
See: INSTALL
UPGRADE
-------
See: UPGRADE
Updates can be obtained from the following places:
ftp://ftp.zn-gmbh.com/pub/linux
ftp://ftp.sbs.de/pub/tools/afbackup
ftp://ftp.vic.com/af
ftp://www.man.torun.pl/pub/backup/afbackup
ftp://ftp.iphil.net:/pub/mirror/afbackup
CONFIGURATION
-------------
See: CONFIG, INTRO and HOWTO.FAQ.DO-DONT
BEFORE YOU START
----------------
... Your first backup! Put your tape cartridge number 1 into
the drive or make your cartridge handling system do so. If
you don't want this or can't persuade your cartridge handler
to do so, find out the number of the cartridge which is
currently inside the drive. Then enter the following commands
on the backup server (the host, to which the drive is connected)
replacing <num> with the real cartridge number:
$BASEDIR/server/bin/cartis <num>
$BASEDIR/server/bin/cartis -i <num> 1
The first command tells the server the number of the cartridge,
that is currently in the drive. The second one says: Write the
next backup to the named cartridge, file 1 (the data stream is
written in pieces==files to tape). See: PROGRAMS. $BASEDIR
always stands for your chosen installation directory,
corresponding to the particular tape device.
WHAT CAN BE STARTED: PROGRAMS
-----------------------------
See: PROGRAMS
LIMITATIONS AND KNOWN BUGS
--------------------------
- Directories should be traversed in parallel, when on different
filesystems
- A real index should be maintained, not only the probably
compressed filelist, preferred implementation design:
a special index server not bound to the client or server host
- It should be possible, that several devices share a pool of
tapes like in most jukeboxes
- There are too many warnings written to the logs, that can be
safely ignored
- There is a strange problem with the multi-stream server on
Digital Unix and probably others, that is not understood yet.
There the multi-stream server should be started to run as a
daemon (see: FAQ Q37)
No other bugs known. At release time there are never known bugs.
Please report bugs and suggestions for new features to:
af@muc.de
If you have problems, please add the last lines of the file(s)
.../client/var/backup.log and .../server/var/backup.log to
your posting, if present. Please add everything, too, that you
think might be important.
If you want to be informed about important changes or bugfixes,
monitor the desired releases on
http://www.sourceforge.net/projects/afbackup
TO DO
-----
Reduce the limitations.
Port the client side to other platforms.
Enhance jukebox support
CONTRIBUTIONS
-------------
* restore.pl
Toivo Pedaste contributed the perl script restore.pl, a
specialized replacement for afrestore. To work with the
individual configuration, it needs some adjustments, see
the first lines of the script for hints. The functionality:
This is a Perl program I use for restoring files. You give
it a string, and it displays which files on the backups have
names containing the string and on which tapes they are, and
you select which one to restore.
Currently it only works for a single file or directory.
* Webadmin-Module
Dirk Wallmeier is developping a module for webadmin. The project
homepage is http://sourceforge.net/projects/afbackup-webmin .
I have no experience with webadmin and the security impacts
or considerations of that software. Thus i can only tell it
exists and might be helpful, but can't give any recommendation.
THANKS TO
---------
(in chronological order)
- The people at "Zentrum fuer Neuroinformatik" for being so
kind in letting me put this into the PD.
- Rick Macdougall at Axess Communications for reviewing my
bad English. (A lot of text has been added up to now, he
had no chance to review it - so it's my fault, if there is
a lot of nonsense)
- Lars Koeller at the University of Bielefeld, Germany, for
doing the FreeBSD-port and giving me some important hints.
- Christian Meder at the University of Stuttgart, Germany,
for bug reports, fixes, making the whole package autoconfig-
-urable and Debian-ready, extracting the man-pages and a lot
more
- Ivan N. Kokshaysky at the Moscow State University for making
afbackup libc-6 (ie. glibc) - ready
- Katharina Hoffman at Infomedia GmbH for doing a lot of tests
- GianPiero Puccioni (gip@ino.it) at "Istituto Nazionale di Ottica"
in Firenze for doing a lot of testing and problem determination,
furthermore contributing the mtx.c program for using DAT
autochangers, all on HP-UX.
- Tuomo Soini (tis@foobar.fi) for 'feature' fixing
- Andreas Wehler at CAD/CAM Straessle GmbH in Dsseldorf/Germany
for intensive testing and helpful suggestions
- Scott C. Ostrander and Dave Williams for proof-reading and
correcting the documentation texts
- Piotr Klaban in Torun, Poland for numerous hints, suggestions
and bug fixes (sometimes i have the suspicion he knows my
software better than me)
- Jerome Lovy for helping to track down the truncated files problem
(to different behaviour or zlib-s) making zlib use more robust
- Toivo Pedaste for several helpful hints
- Many thanks for "Lele Gaifax" for implementing the I18N/L10N
gettext stuff and translating all the messages to Italian
- Jalon Q. Zimmerman at "coldworld" for setting up, hosting and
sponsoring the afbackup.org domain, website and mailing lists
- Ken R. (?) for some English fixes in the documentation
- Stefan Scholl at Infineon Technologies for a concept to start
programs remotely without having login permission to a host
- Oliver Hartmann, Mainz for contributing the chio changer config
- Johann Pfefferl, Munich for contributing the sch/mover config
- Peter 'Rattercrash' Backes for adding the disable threads option
and other improvements and suggestions
- Mr. Neil Darlow for a *LOT* of useful hints concerning Free-BSD,
IDE tapes and more
- Devin Reade for reviewing large parts of the code
|