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 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788
|
2.1 - 2.1.pl1
- minor bugfix in restore script
2.1.pl1 - 2.1.pl2
- Bugfix in configuration programs.
Affects: cartridge handling systems without a special
command to set the cartridge, that therefore
must be set to sequential mode.
Workaround: Comment out the line starting with Setcart-Command
in .../backup/server/lib/backup.conf
2.1.pl2 - 2.1.pl3
- Fix of stupid bug produced while fast-hacking pl2
2.1 - 2.2
- automatic tape labeling and consistency check
- directories can selectively be excluded from backup
- cleverer device access, two stage timeout: 1st stage
sends email to maintainer, 2nd stage exits
- facilities for recovery from hard crash with lost
filename logfiles
- reduced unnecessary tape movements
2.2 - 2.3
- Maintain a lock file to prevent concurrent tape access of
different server processes
- Optional compressing of the filename logfiles
- Client side parameters RootDirectory and BackupHost can
be overridden with command line options of restore
2.3 - 2.4
- Block and character device special files can be saved
- Storing the file contents can be forced independently of
the file type (useful for saving raw partitions or so)
- option -N for the client side program for saving only
files newer than a given one
- small bug fixed concerning zero-length files
2.4 - 2.5
- File contents (see 2.3 - 2.4) can be compressed
- Sockets can be saved
- full_backup, incr_backup and restore are now binaries
- print_errors is a new command
- Weird problem workarounded with I/O-Error on interrupted
backup
- If filename logfiles should be compressed, no uncompressed
files ever appear
- Directory path patterns can be supplied for excluding files
or directories
- Support for a max of 16777215 cartridges with 2147483647
files on each (please consider configuring several backup
servers ;-) )
- Restore can be called with glob-style filename patterns
- For the client side a lockfile is maintained as well, so
several backup or restore programs can't be run simultaneuosly
on one client causing trouble on the logfiles
2.5 - 2.6
- File contents can not only be specified with prefixes /../
or //../, but also by option -r or -R
- Saving files can be limited to device/filesystem
2.6 - 2.6.1
- New client- and serverside parameter EncryptionKeyFile
for the authentication mechanism
- New clientside-parameter VarDirectory for varying files
- Default-configuration files in /etc/buclient.conf and
/etc/buserver.conf
2.6.1 - 2.7
- New clientside parameter CompressBackupedFiles for choosing
compression of files and filename logfiles separately
- Clientside request-queue for asynchronous communication with
the server (hopefully much better performance)
- New serverside command "label_tape" to manually write a label
to the tape currently in the drive
- Default-configuration files can also be (Debian needs)
/etc/afbackup/client.conf and /etc/afbackup/server.conf
- Bug (typo) fixed: Entry for locking file in the server
configuration file has been ignored
- HOWTO-file is maintained now
2.7 - 2.7pl1
- Better connection failure handling. Up to now with DAT data
on tape might be lost on a connection breakdown
2.7 - 2.8
- Normal filesystems can be used for backups instead of tapes,
thus also removable media
- A file with a special name can be placed in any directory
containing names or patterns of files and subdirectories to
be excluded from backup
- Compression attempts can be avoided on already compressed
files by supplying appropriate filename patterns
- Slight further speedup
- Small bug fixed (sometimes a "Connection ... lost" occurs)
2.8 - 2.8plX
- Bugfixes, more logging, more diagnostic messages, more
safety
2.8 - 2.8.1
- Port number can be configured in the configuration file
of the client side
2.8.1 - 2.8.2
- FreeBSD supported
- Wrapper script for mt added: __mt (FreeBSD's mt does not
accept 0 as repeat count)
- Non-GNU-make can be used (under Solaris it's a little
annoying) and is recognized automatically
2.8.2 - 2.8.2.pl1
- Bug ignoring several -m or similar in file list fixed
2.8.2 - 2.9
- Several sets of cartridges can be used on the server side
- Verify is now possible
- restore does not restore the same file several times
from different backups
- memory leak fixed (a quite harmless one, quasi more a
theoretical one, no sole reason for an upgrade)
- Documentation reviewed and lots added, e.g. an INTRO
- An exit command can be configured, usable for reporting
successes and statistics to an administrator
- Ordinary users can restore their own files and directories
2.9 - 2.9.pl1
- With several cartridge sets configured reading over end of
tape of the last cartridge change to the first cartridge
of the same set and not to cartridge 1. This was a bug
2.9 - 2.10
- Byte Sums are no longer of type "long int", now "double"
("long long int" is a portability problem)
- Buffering also on the server side. Especially read
operations (verify, restore) should be much faster now
- Stale lockfiles do not cause another server process or
a highlevel client program to wait. This was a bug
- Several kill-s to the server don't harm, no stale lockfile
is left over (of course not valid for a kill -9)
- Errors are immediately printed before completion of client
programs. print_errors is not really necessary anymore,
anyway i consider it helpful for later diagnostics
- No longer confusing message "Cannot find out number of
lines in ..."
- No longer annoying message "/tmp/xxxxxx: No such file
or directory"
- Safer tape handling (hopefully)
- Strange AIX problem workarounded (EIO at end of media
instead of the documented ENXIO)
- A modified-before- and -after-date may be supplied with
the restore program
- Autodetecting inserted cartridge, if tape is labeled or
had already been used
- Strange wish behaviour (too flat window) workarounded
- Missing feature added: modification time is saved with
file contents i.e. e.g. raw devices
2.10 - 2.11
- Second possibility to save backups in a filesystem
(without the need of symbolic links)
- Output of XXXXXXconfig is piped through more for
convenient configuration from any terminal
2.11 - 2.11.1
- libc-6 (i.e. glibc) - ready (see README: THANKS TO)
2.11.1 - 2.11.2
- Insufficiency of the cartis script fixed: read the number
of cartridge sets from the server configuration file
- (x)clientconfig and (x)serverconfig did not look for config
files in all intended places, documentation incomplete
2.11.2 - 2.11.3
- Minor inconsistencies fixed. Utilities added (yet unused)
2.11.3 - 2.11.4
- Security hole fixed
2.11.4 - 3.0
- Debianized
- Defaults changed somewhat
- Uses autoconfig
- full_backup, incr_backup, restore and verify can override
most of the config file settings by commandline options
- New parameter: Device-probe interval
- New parameter: Skip-files Command
- Documentation reworked (including man-pages)
- restore now takes -C instead of -R, -R is still recognized.
-C is now the changedir-option in conformance with the
other commands (and BTW tar)
- label_tape has new -q option for reading the tape label
- Emergency restore without any input information (-E)
- Emergency restore or only the minimum restore info (-El)
or only tape scanning (restore -En)
- Differential backup with option -a for incr_backup
- Hopefully more speed by use of appropriate TCP-options
- Option to use 128 Bit DES encryption for client-server
authentication (requires Eric Young's libdes)
- cartready indicator file mechanism changed (other way round)
- Logging of the remote host name, if authentication fails
- Possibly conflicting program names prefixed with af
- Bug fixed setting the wrong cartridge for a set, if one set
comprises of cartridge #1 only, what should be avoided anyway
- Senseless settings of maximum number of bytes per tape file
caught and reset to reasonable value
- Year 2039-ready i.e. any length time_t on any architecture
- More appropriate filename handling on recursive extraction
of directories
- Preferred serving of repeated requests from the same client
to avoid race conditions
- Better locking algorithm for client start and server access
- SunOS 4.XYZ supported platform
- Symbolic links are allowed for all programs (full_backup, ...)
- On remote start the output of the remote command is transferred
to the client side, also the exit status corresponds
- Generally better diagnostics for remote start
- Very stubborn problem on HP-UX-9 fixed, maybe the problem was
leading to problems also on other architectures
- New parameter: InitProgram for the client side. StartupInfoProg
is now ran later, when backup succeeded
- In serverside init and exit command %p is replaced with client's
peername
3.0 - 3.0.1
- New flag -w for afclient to check server side streamer state
- differential backup with incr_backup -a did not work yet (!)
(implementation was lost probably due to multiple development
locations and inconsistent code between them, sorry)
3.0.1 - 3.0.2
- New flag -l for afclient to report the location of the server
side for each file (preparation for storage pools)
- docs updated
3.0.2 - 3.0.3
- restore -f was broken in 3.0.1 - 3.0.2
3.0.3 - 3.0.4
- Server side rexec path had wrong default
3.0.4 - 3.0.5
- Always use built-in fn_match instead of fnmatch
3.0.5 - 3.1
- Several triples backup-host/backup-port/cartridge-set possible,
all handled transparently to the user
- Server side lock bug fixed (caused minor requests like -q to
hang, had to interrupt with Ctrl-C, bug appeared in 3.0.3)
- Also scripts (e.g. clientconfig) may be arbitrarily symlinked
- Preinstalled config file has now empty encryption file - caused
confusing log message (" ... using compiled-in key")
- Install script supports change of afbackup service name
- Docs adapted
- Tape label extended by a comment and a possible secondary label
number
- Bug concerning SetCartridgeCommand fixed
- Server side processing reworked for better throughput
- Protocol extended for raw accesses
- A lot of processing modularised
- A maximum number of bytes per tape can be configured, also
varying for different tapes
- Tapes can be duplicated (command copy_tape)
- Duplication of tapes can be automated after performing a backup
(script autocptapes)
- Backup levels of arbitrary (1..MAXINT) number (option -Q for
incr_backup)
- Automatic switching from incremental to full backup for new
entries in DirsToBackup...
- Verbose option -v for full_backup, incr_backup, ...
- GUI frontend xafrestore for the afrestore utility, still inferior
3.1 - 3.1.1
- Some strange csh versions had problems with xafrestore
- Helper programs for fast command pipe startup (__piper) and
encryption (__descrpt) added (mainly for use in CompressProgram)
3.1.1 - 3.1.2
- Bug fixed: erasetape command was not always called when
changing the cartridge
3.1.2 - 3.1.3
- Compilation was broken on FreeBSD
3.1.3 - 3.1.4
- Bug fixed: During save timestamps of filesystem entries were
changed, that symlinks pointed to
3.1.4 - 3.2
- ACLs supported on Solaris2 and HPUX-10, if available
- Also on Solaris >= 2.6 filesizes > 2GB supported
- Multi stream server
- Status file on server side, regularly updated during operation
- Descending into directories is now done like find -depth
- Hopefully even safer tape error handling
- Service names allowed wherever port numbers were to be given
- -v option for verify, restore and copy_tape
- Tapes can be set read-only
- Tapes are no longer overwritten, server keeps track, which
tapes are needed for all the clients
- Admin must explicitly permit overwrite of needed tapes
- Verify is much faster now
- Bug fixed (tapeblocksize may now be > MaxBytesPerFile / 10)
- Init Media command for preparing the media for access, e.g.
mounting a removble disk
- More versatile Change-Cart-Command (see FAQ Q6)
- Tape blocksize now written into the tape label
- Filelist recovery also restores uid fields
- Minimum restore info is no longer cumulative
- Configuration programs can get config file as argument
- label_tape now also labels "directory-tapes"
3.2 - 3.2.1
- Compilation was broken with glibc and on FreeBSD, maybe others
- Bug fixed: differential backups did not work correctly when
configuring several backup parts
3.2.1 - 3.2.1pl1
- Bug fixed: Restore reported errors without real reason and
probably restored in wrong order, when compiled with -O...,
probably more side effects up to no working high-level
programs (full_backup, incr_backup, verify, ...)
3.2.1 - 3.2.2
- A full backup split into pieces does no longer modify the
timestamp
- Built-in compression
- Faster (backward compatible) packing format
- Bug fixed requiring unnecessary workaround for
afrestore -[eEf] on new installation
- Bug fixed, restore -[eEf] now works together with -[RC]
3.2.2 - 3.2.3
- Option -G for (full|incr)_backup and afclient to request a
new or reused cartridge
- Completely any-shit-in-filenames-safe, e.g. newlines or non-
printable characters are allowed in filenames
- Cartridge sets may consist of arbitrary cartridges, not only
consecutive ranges
- Enhanced database saving capability through command output
saving / command input restoring feature
- Security fix: Client configuration file must be owned by root,
so normal users can't supply their own ones
3.2.3 - 3.2.4
- Client side ring buffer processing reworked, lots of unneeded
system calls removed -> hopefully better performance, fewer
problems on the Sun and other System-V like OSes
- Bug fixed: files with special characters in name were sometimes
not found during restore with given filenames
- Bug fixed: __descrpt had a problem when reading a pipe
- Insufficiency fixed: client now tells server to not overwrite
tapes relevant on this server only (before lock on all servers)
- Server ID introduced to be able to identify the same server
under different hostname/port-combinations (e.g. single-multi)
- Server now tells about it's version, client evaluates this
- New option -r for command label_tape to delete the overwritten
tape from the cartridge handling database
- label_tape now updates the cartridge handling database properly
- Better locking for the cartridge handling database files
- Bug fixed: memory allocation in del_one_from_Uns32Ranges
- Tape usage counter (file tape_uses)
- New serverside callback command Tape-Full-Command
- New helper program __numset
- Helper script cartagehandler to automatically move cartridges
to other sets
- Variable client-server-protocol
- Throughput optimizer varying the client-server-protocol
- Annoyance fixed: verify no longer tells x is larger than x
- Source reorganized: Utilities library can be used independently
from afbackup, especially in other projects
- Bug fixed. When restoring relative to a directory, symlinks
pointing to absolute pathnames were not created correctly
- Parts of restore reworked -> safer, faster: trying to put
together subsequent tape files for restore; output modified
- Insufficiency fixed: -l and -n with -a allowed for afrestore
- Trivial but terrible (whoooooaaaaahhh) memory leak fixed
- Problem fixed with multi stream server when first/last client
fails to connect successfully (thanks also to Pjotr Klaban)
- Bug fixed: The device access timeouts did not behave as
documented when configuring 0
- Bug fixed: verify might have hung reading corrupt tape data
- Usage check for client program fixed
- Bug fixed: Documentation error on -R for restore stating a
directory would be created
- Bug fixed: reread tape position file after waiting for write
- File truncation during restore tracked down to misbehaving zlib
- Default installation directory in Install script changed from
/usr/backup to /usr/local/afbackup
- More appropriate position recording in file index -> faster
restore
3.2.4 - 3.2.5
- All arguments passed to mserver and not recognized are passed on
to the server subprocess, thus -b possible in /etc/inetd.conf
- Fixed bogus error message during restore, stating that errors
occurred, though there were none
- Optional CRC32 checksumming on each file, especially, if not
compressed (zlib is required nonetheless)
- Real compression factor is reported in statistics taking only
compressed files into account
- More detailed error messages
- Configurable server status file, optional append mode
- More convenience replacements in configuration files
- Timeout for logon to server
- Restore of filecontents can be forced to relative path, too
- Option -H removed from afrestore, -W should be used instead
- Bug fixed: On Solaris or HP-UX the multi stream server might
segfault at startup with certain configurations
- More logical error handling on client side: distinguish between
retryable and non-retryable errors
- Cartridge set access can be restricted to certain clients
- Bug fixed: Built-in authentication key stuff (no DES) was broken
- Restoring with unlink: If a directory is restored and an entry
with that name exists, that is not a directory, it is unlinked
- Minor bug fixed: raw tape access was broken through the multi
stream server (discouraged anyway) in 3.2.4
- Workaround for stupid bug in the IRIX-6.5 Headers
- On Sun and HP ask for and recommend using gcc
- Documentation errors concerning filesystems as storage media
fixed
3.2.5 - 3.2.6
- Fix for malloc problem on Digital Unix (and probably others (?))
- Optional full append mode
- Exit, if confirmation can't be read from TTY or on input timeout
- Bug fixed: When switching to another cartridge set for backup
with a writing position on a tape, that has been set to read-only
mode in the meantime, an immediately following verify asks for
another tape first before requesting the correct one (this
problem has never been reported to me and only matters for verify,
not for restore or anything else, so i consider this a minor bug)
- Documentation update: How afbackup compares to amanda
- Two-column X-configuration programs
- I18N/L10N (thanks a lot to "Lele Gaifax" for implementing it)
- Option -n with -X for remote start will prefix the output lines
with the name of the remote host and a colon
- Also negative timestamps possible (e.g. "supported" by Solaris)
- Additional security checking for wrong SUID/SGID Flags
- Multi stream server's client authentication timing reworked
(might timeout during connect due to long tape operations)
- Option to refuse writing to tapes without valid labels
- Option -m for restore to prevent existing files from overwriting
3.2.6 - 3.2.7
- Compress/Uncompress program parameters renamed to Process/Unprocess
to stress their more general character
- The unprocess programs for the indexes are written to files, so
the (un-)process programs can be safely changed at any time
- Seperately configurable process and unprocess commands for the
index files
- The restore option -C really will create the directory as stated
by earlier documentation
- Serverside bug fixed: In very rare cases the tape file count
might become higher than reality. This makes, that full append
mode for this tape does not work any longer, when it is deselected
explicitly (cartis -i or clientside -G), No data is endangered to
be erased, overwritten or some other way lost
- Optional variable append mode. Any tape of the right cartridge set
with space left is accepted for writing. No fix writing position
- Some oddities in label_tape cleaned up, e.g. a cartridge will be
removed from the set of read-only tapes, when labeled
- Bug fixed: (full|incr)_backup did not work with LANG != C or unset
- One more time workaround for IRIX-6 header bug
- When cartridges are removed on the server (using label_tape or
the server message ReuseTapes) the client updates his information
and prints a message at backup start time
- More robust client connect mechanism
- Multi stream server can be started as daemon (not using inetd)
3.2.7 - 3.2.7pl1
- full_backup and incr_backup did not work with LANG != C
3.2.7 - 3.2.8
- (3.2.8 is mainly a maintenance update)
- Symlinks owned by root:root in a user's directory could not be
restored before. This works now, if there's no syscall lchown
- Tapes can be labeled, while server is waiting (option -F)
- Build machinery, especially autoconf, enhanced
- No more sideeffects when installing the programs not in an own,
but a public directory
- Debian source build tree fixed
- Choice while running Install, whether chown of the serverside var
directory and all it's contents should be performed
- Some texts were still not internationalized
- More documentation
- Workaround for remotely started daemons, that do not daemonize
properly
- Most filedescriptors are closed on exec - cleaner implementation
- Authentication stuff implemented more generally reusable (for gnep)
- Problems with Tcl/Tk-strings on IRIX and Tk-4.0 fixed
- Also on Linux filesizes > 2GB supported (if Linux does)
- Server enhanced, so Solaris is now a tested server side platform
(must be >= Solaris-2.6)
- Clientside logfile is only opened, when there is something to be
appended, and closed afterwards - cleaner implementation
- The minimum restore info can be used in the clientside exit command
- Client gives up connecting immediately on sure authentication error
3.2.8 - 3.2.8pl1
- afclient -GQ did not produce correct output on first invocation,
what might break verify functionality (no data harmed)
- afclient's -n option in combination with -X was not documented
- Minimal restore info might not be found while tape scanning if
written by the multi stream server
- afmserver did segfault, if tape blocksize was > 131076 bytes
- afmserver made afserver ignore the -b flag (nobuffering)
3.2.8pl1 - 3.2.8pl2
- If there was an entry for the parameter "LastCartridges:" in the
serverside configuration file (though this entry is an old
fashioned one, it's use is discouraged, changing to the new style
entry is described in the UPGRAGE file under 3.2.2 and the entry
is automatically converted by either serverconfig or xserverconfig)
AND the entry was empty AND there was no entry for the (new-style)
parameter CartridgeSets, THEN the server misbehaved in that it
requested cartridge n + 1, when cartridge n was full and there were
only n cartridges configured
3.2.8pl2 - 3.2.8pl4
- make install.client might fail, if DES encryption is not built in
3.2.8pl4 - 3.2.8pl5
- Bug fixed: server might segfault when writing is requested and
no tape with space is available
3.2.8 - 3.3
- OpenBSD supported
- Tape locations database
- Media changer support (1 drive in a media changer per server)
- New command cart_ctl
- mtime is saved in index -> file selection/listing for restore
using the modification time is correct now, but: index bigger and
less compressable
- Contents of progress text window of xrestore always visible now
- Server can send mails to current users (%U) on clientside (%H)
- Server is configurable to write messages to syslog
- No longer strange server behaviour, if no logging is configured
- Path replacements also on server side (%L, %B, %V)
- afclient -v prints out software name and version
- Bug fixed: Toplevel directories with a name consisting of only 1
character were only listed by restore, if the name was given exactly,
thus not immediately visible in xafrestore
- Bug fixed: restoring a filesystem entry with ACLs and several
hardlinks produced format error and possibly segfault
- Cleverer algorithm to select the tape files for emergency restore,
-E and -e options of afrestore can be given several times
- Buggy function in libdes des_3cbc_encrypt only used on request
3.3 - 3.3pl1
- Stray lines in afrestore -l output, thus also in xafrestore, fixed
3.3pl1 - 3.3pl2
- copy_tape did not work any more with destination filesystem
- if built-in compression was turned on and an external program was
configured to preprocess the saved files, under certain (in my
opinion rare) circumstances verify might stop processing due to
a condition similar to a race. Other functionalities e.g. backup
or restore were not affected
3.3 - 3.3.1
- For the entries to save a command can be supplied starting with |
- Help dialog geometry adapts to the text length
- With older minimum restore info the older index is restored, not a
new one created (like before). So also data can be restored, that
is in indexes, that have already been removed, cause they left the
range configured in the NumIndexesToStore parameter. Assumed is
of course, that the needed tapes have not been overwritten
- Filename in minimum restore info is a temporary copy. The constant
name turned out to be disadvantadgous for the previous topic
- New server message DeleteClient to free the tapes of a client
- When cartridges are removed on the server (using label_tape or the
server message ReuseTapes) the clients also update the index files
- Tested on Linux-2.4
- The tape blocksize can be changed now without breaking access to
older tapes. This feature was a horror to implement and test. If
this was commercial software, i'm sure, this had never been done
- Restore only the newest version of a file, if no timestamp is given,
not the same file several times
- Client requests authentication from server, too, to make sure, it is
talking to an afserver, that is really knowing the key -> security
- Option -T for copy_tape to specify the directory for temporary space
- The clientside lockfile is now configurable
- Flag -i for afrestore to ignore the case in filenames
- Current index might have lost some contents when hitting Ctrl-C
3.3.1 - 3.3.2
- Restore can be restricted to a supplied set of tapes
- New command update_indexes to ask the servers for erased tapes
and to remove the appropriate entries from the indexes
- Index cleanup from erased tape entries is now done before backup
when starting (full|incr)_backup, not afterwards
- With afrestore and update_indexes, certain arguments are ignored
now, when started by normal users with SetUID root (security)
- NumIndexesToStore = 0 was incorrectly handled as 1
- Bug fixed: With certain configurations non-root restore was broken
- Opening a tape device to test availability should be non-blocking,
so with an autochanger the server will never hang on an empty drive
- The find function did not always work properly with flags FIND_DEPTH
and FIND_LOCAL_DEV set -> flag -m or .//. sometimes misbehaved
- The tape label comment is kept when the tape is automatically labeled
- The tape read and write positions were not reset when labeling a tape
3.3.2 - 3.3.3
- Server multithreaded, if POSIX threads available (evtl. -> speed)
- New utility xafserverstatus
- Buffer behaviour enhanced for a little more speed on slow filesystems
- Cleaner implementation of handling trailing pad bytes
- label_tape on symlink pseudotapes in the filesystem was broken
- copy_tape reworked, so beginning of read and write can be set to
a certain tape file number (option -F)
- Client identifier in index header line
- More reliable error detection on the target server during tape copy
- For writing the correct secondary cartridge number (i.e. a clone)
is only accepted after error message and insisting by a maintainer
- Beautification: verifying the latest backup does no longer complain
about a file, that is temporarily needed and saved, but was gone
- The program changerready (hardlink to cartready) was not installed
3.3.3 - 3.3.3pl1
- xafrestore did not work, when vardir was not set in config file
3.3.3pl1 - 3.3.3pl2
- Subprocess exit status sometimes incorrectly evaluated (observed only
on Solaris, but maybe some rare confusions were caused by that, too)
3.3.3pl2 - 3.3.3pl3
- cart_ctl -t should use the 'CartridgeInsertGracetime'
- cart_ctl -t should not set the cartridge location to unknown, if
labeling fails
3.3.3pl3 - 3.3.3pl4
- Build problems with disabled national language support fixed
- Wrong newline in changer.conf.chio for FreeBSD removed
3.3.3pl4 - 3.3.3pl5
- Bug fixed: The current tape blocksize must not change during online
server reconfiguration i.e. after a cartready command or similar
- Bug fixed: Default lockfile was not set correctly after online
server reconfiguration
3.3.3 - 3.3.4
- Option -e (eject) for cart_ctl
- Faster cleanup on client interruption
- Full installation support for use with xinetd
- Option -F plus format string for afrestore to print in user-defined
format and possibly containing file attributes present in the index
- Details display also available in xafrestore GUI
- New tape position file format, needed for future handling of
boxes with several streamer devices
- cartis is no longer a script, yet another link to label_tape
- Even safer cleanup on client interruption
- Option -l[a] for afverify to list available backups from the indexes
- Cleverer memory allocation strategy for names of files to restore to
be able to hold more of them in memory
- POSIX ACLs supported
- OSF-1 (and derivatives) ACLs supported
- ACLs supported on IRIX
- When an index has moved to another client, it is no longer necessary
to supply the -W <clientid> option to afverify or afrestore, when
afrestore is used with files or filepatterns (i.e. not -aeEf)
- Clientside process calling chain reworked -> faster startup, less
tape moving, easier handling of the minimum restore info, cleaner
implementation, cleaner error handling, but: if a backup fails, a
minimum restore info for this is nonetheless written to tape. But
the advangages outweigh this little oddity
- print_errors removed. All errors go to the log and stderr, no longer
mixed into the index files
- Emergency recovery with relocate now relocates also the var directory
and creates it, if not existing
- Bug fixed: After an online server reconfiguration (e.g. following a
cartready command) with directory pseudotapes it might happen, that
the saving location of a few files was wrong in the index
- Bug fixed: afrestore -a with -C stopped prematurely in some rare
cases, when there were incremantal backups with no saved files
3.3.4 - 3.3.4pl1
- Bug fixed: Statistics output was wrong: wrong start and end tape
position reported. Sideeffect: Use of cartridge 0 (not valid)
reported and cartridge 0 protected from overwrite on the server.
Mainly confusing, but not a really bad bug
3.3.4pl1 - 3.3.4pl2
- Weird problem fixed: The multi stream server failed to demultiplex
the data to clients when reading during interrupt check, but only
with many clients saved in parallel, only on linux and only when
compiled with -O2. Worked around it, but didn't really understand
the problem. Suspect a libc error in getpeername
3.3.4 - 3.3.5
- When encountering files of type "door" (cf. Solaris), do not throw
warnings and do not back them up
- Remove old index files optionally by age, not by number of existing
- Optionally scan a maximum configured number of index files, possibly
by age
- Use also builtin paths to locate configuration and other directories,
even with ORIG_DEFAULTS defined. Thus the full path is no longer
necessary in /etc/inetd.conf for argv[0] of the server entries
- Use /dev/(u)random, if available, for random numbers
- POSIX threads availability also recognized on Free-BSD and the like
- Optionally check, if the user has the access permissions to restore
his own files, also in the case, that no relocation is done
- cart_ctl -l filters by changer device, if option -d is given
- Option to prefer cartridges available in a changer. Default is to
cycle through all tapes independently from their current location
- Authentication key file can be configured individually for
clients or groups of clients e.g. by command filtering
from a patch of Peter 'Rattacresh' Backes:
- Added --disable-threads option to configure.in and a corresponding
question to Install.
- Fixed some questionable syntax combinations in Install like backspace
at the end of a string literal, a double quote ended by a single one
and a strange method of checking for the exit code
3.3.5 - 3.3.5.1
- Install included libintl with x_utils, if required
3.3.5 - 3.3.5.1pl1
- Avoid bogus messages: 'Wrong tape X accepted in drive for -1' and
'Using cartridge N instead of the desired (N-1)'
- Bug fixed: server might crash or overwrite tape 1 without checking
that the tape is free, after requesting to free tapes manually
3.3.5.1pl1 - 3.3.5.1pl2
- Fix for 'Avoid bogus messages ...' in pl1 was bad
3.3.5.1pl2 - 3.3.5.1pl3
- Memory allocation bug fixed in full_backup
3.3.5.1 - 3.3.6
- Mostly RCSed
- Modified implementation of excluding files and directories. Now
also toplevel subentries can be excluded writing ./whatever
- In addition to the mtime also the ctime can be used to select files
for backup during incremental or level X backup. Then the atimes
will not be preserved during backup
- Installation cleanup. The configuration files are now in choosable
configdir, what is by default .../etc. A serverside logdir and a
clientside confdir has been added. Upgrade will automatically move
the configuration files to the new place
- Troubleshooting HowTo added
- Fixed, that the client side might hang due to unexpected errors
on the server side during startup
- Fixed: If the first thing done after a fresh installation was a
differential backup (?!?), the index count erroneously started with 0
- Cosmetical bug fixed: In the afrestore output "Found N matches on X
servers, Y cartridges ..." X and Y were more phantasy than sth. real
- Insufficiency fixed: When the backup device had changed, the writing
position was reported incorrectly at the first next client request
- If backup is started with files and directories to backup as command
line arguments, don't save them in the save_entries file
- Do not store the clientside information about crucial tapes, if
passing this info to the server fails (avoids confusing message)
- When finding files with l-bit set (if supported by platform), try
to set read lock, then backup on success, otherwise throw warning
- Backward compatibility with servers < version 3.2 was broken
- In/exclude filesystems in/from backup by type name
- Flag -H for incr_backup to release previous backups with a lower
level or the previous differential backup in differential mode
- full_backup and friends can run without a configuration file applying
defaults, what is not desirable in most cases except emergency i.e.
disaster recovery starting afrestore with option -E or -e ...
- During disaster recovery, if an index file is directly restored from
backup thus colliding with the one created by afrestore, the former
one will be renamed and a warning issued, so a maintainer can choose,
which one to use further
- Option -L for af(m)server to set a locale
3.3.6 - 3.3.6pl1:
- Bug in the find algorithm fixed, that lead to segfault
3.3.6pl1 - 3.3.6pl2
- Bug fixed: restore as normal user might segfault (thanks to Norbert
Eicker at the University of Wuppertal for analysing the problem)
3.3.6pl2 - 3.3.6pl3
- Workaround for drand48 on SunOS-4 extended, cause it is even heavier
broken than assumed before
- Bug (?) fixed: on Solaris-2 sometimes it seems impossible to find out
the filesystem type of a file (observed by 'customer', but not
reproducible on Solaris-8 systems available to AF)
- Output of cart_ctl was wrong when requesting a manual move from a
location outside a changer to a drive
3.3.6pl3 - 3.3.6pl4
- xafserverstatus did not work on new installations
|