DAR_MANAGER(1) General Commands Manual DAR_MANAGER(1) NAME dar_manager - compiles several backup contents into a database to ease file restoration SYNOPSIS dar_manager [-v] -C [<path>/]<database> [-z <algo>] dar_manager [-v] -B [<path>/]<database> -A [<path>/]<basename> [-9 <min- digits>] [[<path>/]<archive_basename>] dar_manager [-v] -B [<path>/]<database> -l dar_manager [-v] -B [<path>/]<database> -D <number>[-<number>] dar_manager [-v] -B [<path>/]<database> -b <number> <new_archive_basename> dar_manager [-v] -B [<path>/]<database> -p <number> <path> dar_manager [-v] -B [<path>/]<database> -o [list of options to pass to dar] dar_manager [-v] -B [<path>/]<database> -d [<path to dar command>] dar_manager [-v] -B [<path>/]<database> [-N] [-k] [-w <date>] [-e "<extra options to dar>"] -r [list of files to restore] dar_manager [-v] -B [<path>/]<database> -u <number> dar_manager [-v] -B [<path>/]<database> -f file [-x] dar_manager [-v] -B [<path>/]<database> -s dar_manager [-v] -B [<path>/]<database> -m <number> <number> dar_manager [-v] -B [<path>/]<database> -c dar_manager [-v] -B [<path>/]<database> -i dar_manager [-v] -B [<path>/]<database> -@ { <filename> | "-" } dar_manager -h dar_manager -V DESCRIPTION dar_manager is part of the Disk Archive suite. Its purpose is to build and manage a database holding the content information of many full, differen- tial and incremental backups. A database can then be provided to dar (see its -aefd option) in place of a single backup to restore a single file, a directory tree, or a whole filesystem, in its latest state or in the state it has before a given date (see dar's -af with -A option). This way you do not have to bother where to find the backup which contains each particular file's data under restoration, in particular when using a mix of full, dif- ferential and incremental backup, and even worse, when also using binary delta. You do not have neither to bother about files that were not present (deleted or did not yet existed) at the target date. COMMANDS -C, --create [<path>/]<database> creates an empty database that will collect information about several archives. The <database> is a filename that is required for -B option. To destroy a <database> just remove the file. -B, --base [<path>/]<database> specify the database to read or modify. The <database> file must exist, and have a database structure (see -C option). -i, --interactive use a keyboard interactive text menu to do operations on the given database. So you may avoid reading the other options described in this manual page, if you wish, and just use the interactive option. You will however always have to create an empty database (-C op- tion) and restore files manually (-r option). -A, --add [<path>/]<basename> [ [<path>/]<archive_basename>] add an archive to the database. An isolated catalogue can also be used only if it has been produced by dar version 1.2.0 or above. Why ? Because, an isolated cat- alogue produced by older version will always tell that no files are saved in the archive of reference, in that case the solution is to provide the archive itself as argument. An optional second argument is the basename of the archive if it is different from the first argu- ment (need for extraction of files). For example you could have an isolated catalogue in first argument and the basename of the original archive (where is stored the data) as second argument. By default, -l, --list displays the information about the archives compiled in the database. In particular, a number is given to each archive, which is required to some other option to de- sign a particular archive within the database. Nothing avoids you to feed the database with several archive of the same basename ! You will just have to guess which one is asked under this name. :-) -D, --delete <number>[-<number>] removes an archive (or a range of archive) from the database. The number of the archive (or the min and max number or the archive range) is correspond to those given by the -l option. Note that all archive number greater than the one(s) to be delete will be decre- mented to keep continuous numbering of the archive in- side the database. If a single number is given (not a range), it may be also a negative number, by which it means counting from the end. For example, -1 means the last archive of the base, -2 the penultimate, etc. -b, --basename <number> <new_archive_basename> this option allows you to rename the archive basename (used when restoring files from it). Here too, the num- ber may be also a negative number. -p, --path <number> <path> this option allows you to change the location of a given archive (used when restoring files from it). Here too, a negative number is allowed. -o, --options [list of option to pass to dar] Specify the option to use when calling dar. Each call erases the previous setting. Possible dar options are all the available ones except "-x" and simple argu- ments (the [list of path]) which will be added by dar_manager itself. -d, --dar [<path>] Set the path to dar. If no argument is given, dar is expected to be located in the PATH -r, --restore [list of files or directories to restore] [This option is deprecated in favor of dar's -aefd op- tion, which let dar directly read a dar_manager data- base to restore data more efficiently] dar_manager will restore all (an only) the given files or directories, in their latest recorded status, or be- fore the date given thanks to the -w option. If a di- rectory is specified to be restored, all subfiles and subdirectories are restored recursively in it. You can filter out some files from this recursion thanks to dar usual filtering option (see dar man page) which you can provide beside -r option thanks to the -e option (see below). When a file is stored as having been removed at the date requested for the restoration, it is simply not restored. Thus, if you restore in an empty direc- tory you will get all the expected status of files and directory at the specified time (existing file will have their content of that date, deleted or non yet ex- isting file will not be present and file filtered out from the backup will neither be present). Thanks to that, you can also restore over an existing filesystem: dar will then warn you before overwriting files (see -w and -n options for dar) but will still not remove files that were recorded as removed if it was present before the restoration takes place, nor it will touch existing files that are outside the backup because they have been fitered out or because they were never part of any backup. Note that files listed after -r option, must never have an absolute path. They will be restored un- der the directory specified by dar's -R option (passed to dar using -o or -e options), or by default, under the current directory. -u, --used <number> list the files that the given archive owns as last ver- sion available. Thus when no file is listed, the given archive is no more useful in database, and can be re- moved safely (-D option). If <number> is zero, all available file are listed, the status provided for each file present in the database is the most recent status. A negative number is allowed for this option (see -D option for details). -f, --file <file> displays in which archive the given file is saved, and what are the modification date (mtime) and change date (ctime). -x with -f option, display dates with subsecond informa- tion -s, --stats show the number of most recent files by archive. This helps to determine which archive can be safely removed from the database. -m, --move <number> <number> changes the order of archives in the database. The first number is the number of the archive to move, while the second is the place where it must be shifted to. Archive order is important: An old archive must have a smaller index than a recent archive. If you add archive to a database in the order they have been created all should be fine. Else if a file has a more recent ver- sion in an archive which index is smaller, a warning will be issued (unless -ai option is used). This can occur if by mistake you added an archive to the data- base in the wrong order (old archive added after a re- cent one), in that case simply using the -m option will let you fix this mistake. If instead the problem is relative to a single file (or a small set of file), you should wonder why this file has its modification date altered in a way that it pretends to be older than its really is. Checking for the signs of a rootkit may be a good idea. -c, --check check the database consistency, in particular the date ordering is verified and warning are issued for each file having more recent version located in an archive with a smaller index inside the database. -ai option makes -c option useless. -@, --batch <filename> allows you to do several operations on a given data- base. All operations are defined in the provided <file- name> and refer to the same database as defined by the -B switch on command line. This batch file, must thus not contain neither -B, -C, -i or -ai option (-ai are global to the batch operation). The batch file expected layout is one command per line, thus several arguments (like -l -v for example) may take place on a given line of the file (-v can be found both on command line for verbose output about the batch operation steps, as well as inside the batch file for verbose output of a par- ticular batched command). Arguments are separated by spaces or tabs, other characters are passed as-is. In consequence, you should only need to use quotes (using " or ') if you intend to use an argument containing space. Last, comments may be placed on any line begin- ning by a hash character (#). -h, --help display help usage -V, --version display software version OPTIONS -9, --min-digits <num> the slice number zeroed padding to use to get the slices filename (for more details see dar man page at this same option) dar_manager will look for an archive of reference in the command line used to create each archive, but in some cases, it may be necessary to specify the archive name (for example if you've changed its name). -w, --when <date> [When using dar in place of dar_manager to restore from a dar_manager database, the behavior of this -w option is achieved with dar thanks to the "-af -A <date>" syn- tax, where <date> has the same structure as what is de- scribed here] alters the -r option behavior: still restores the files in the most recent version available but only before the given date (versions of more recent dates are ig- nored). The <date> must respect the following format [ [ [year/]month/]day-]hour:minute[:second]. For example "22:10" for 10 PM past 10 or the current day, "7-22:10" for 10 PM past 10 the 7th of the current month, "3/07-22:10" for the 7th of march at 22:10 of the current year, "2002/03/31-14:00:00" the date of the first dar's release ;-). The given date must be in the past, of course, and is compared to the status of the saved files and not to the date at which archives have been done. Thus if a file has been changed long ago but saved in a recent (full) archive, it will be elected for restoration even for dates older than the creation of the archive. In the other way, a file saved long time ago with a mtime that was set to a date in the fu- ture will not be elected for restoration when giving the date at which was done the archive. Same thing with for metadata: if the ctime is in the future and only a metadata change has been recorded since an very old state, this future metadata change (permission, owner- ship...) will not applied to the restored file, though the data (and previous metadata state) will be restored if it is older than the target date. Note that the provided date is relative to the system timezone which is overriden if the TZ en- vironement variable is set (see tzselect(1) for more details) -e, --extra <options> pass some more options to dar. While the -o options takes all that follows on the command line as argument to pass to dar and write these in the database, the -e option does not alter the database and has only one ar- gument. In other words, if you need to pass several op- tions to dar through the use of the -e option, you need to use quotes (simple quotes ' or double quotes ") to enclose these options. Example: dar_manager -B database.dmd -e "-w -v -p -b -r -H 1" -r some/files while using -o option you must not use quotes: dar_manager -B database.dmd -o -w -v -p -b -r -H 1 -N, --ignore-options-in-base Do not use the options stored in database when calling dar for restoration. This option is only useful while restoring files from dar_manager, either directly (-r option) or using a batch file (-@ option). -k, --ignore-when-removed By default, dar_manager does not ask dar to restore file that have been removed at the requested date (or in the latest state available). This is useful for ex- ample to restore a directory in the state it has at a given date (only files that existed at that time are restored). However when you want to restore a file that has been destroyed by accident, you need to use -k op- tion so you don't have to determine at which date that file existed to be be able to ask dar_manager to re- store that file in the state it had before that date. In other words, -k option gives a behavior of dar_man- ager backward compatible with dar_manager released be- side version 2.3.x of dar. -ai, --alter=ignore-order avoid dar_manager to issue a warning for each file not following a chronological order of modification date when the archive number in the database is growing. -z, --compression <algo>[:<level>] Available creating or modifying a database content (-C, -A, -D, -m, -i, -L options), this option let you set the compression algorithm and eventually the compres- sion level to use when the database is wrote to file. By default gzip:9 is use, but you can use "none" for no compression, "bzip2", "xz" and "lzo" and other compres- sion algorithms (see -z option in dar's man page for an up to date list of available algorithms). Note: this option is only needed if you want to *change* the com- pression algorithm or level. Once defined, either at database creation time using -C option, or modified af- terward, the compression scheme is stored in the data- base header and used for writing down database back to file. -Q Do not display any message on stderr when not launched from a terminal (for example when launched from an at job or crontab). Remains that any question to the user will be assumed a 'no' answer, which most of the time will abort the program. -v, --verbose displays additional information about what it is doing. EXIT CODES dar_manager exits with the following code: 0 Operation successful. 1 see dar manual page for signification 2 see dar manual page for signification 3 see dar manual page for signification 5 see dar manual page for signification 7 see dar manual page for signification 8 see dar manual page for signification 11 and above dar called from dar_manager has exited with non zero status. Sub- tract 10 to this exit code to get dar's exit code. SIGNALS dar_manager acts like dar (see dar man page for list of signals), upon cer- tain signal reception dar aborts cleanly SEE ALSO dar(1), dar_xform(1), dar_slave(1), dar_cp(1), dar_split(1) LIMITATIONS at most 65534 archives can be compiled in a given database, which should be enough for most users. Dar_manager does not support encrypted archives for now and archive cannot neither be encrypted. See the FAQ for a workaround. KNOWN BUGS https://github.com/Edrusb/DAR/issues AUTHOR http://dar.linux.free.fr/ Denis Corbin France Europe 3rd Berkeley Distribution May 1st, 2026 DAR_MANAGER(1)
NAME | SYNOPSIS | DESCRIPTION | COMMANDS | OPTIONS | EXIT CODES | SIGNALS | SEE ALSO | LIMITATIONS | KNOWN BUGS | AUTHOR
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=dar_manager&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>
