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
|
TOPIC: Dkopp User Guide
TOPIC: Contents
{Dkopp Introduction}
{Dkopp Concepts}
{License and Warranty}
{Origin and Contact}
{Dkopp First Tryout}
{File Menu}
{Backup Menu}
{Verify Menu}
{Report Menu}
{Restore Menu}
{DVD/BRD Menu}
{Help Menu}
{Toolbar Buttons}
{Editing Backup Jobs}
{Script Files}
{Technical Notes}
TOPIC: Dkopp Introduction
Dkopp is a Linux utility program for copying files to recordable DVD or BlueRay (BRD) disk. Dkopp is a free open source Linux program licensed under the GNU General Public License v.3.
Three kinds of backup are available: full, incremental, and accumulate. A full backup copies all specified files and leaves no other files on the DVD/BRD. An incremental backup adds only new or modified files to a prior dkopp copy, bringing it up to date. This is normally much faster than a full backup. Unmatched files on the DVD/BRD are deleted, so that the DVD/BRD is left exacty matching the source files. An accumulate backup is like an incremental backup, but unmatched files are not deleted.
You select files to be copied using a GUI. You can navigate through the file system and select files or directories to include or exclude at any level in the hierarchy. These choices can be saved in a job file to automate recurring backups. If files are added or deleted within an included or excluded directory, the next dkopp run will include these changes automatically.
DVD/BRDs can be verified three ways: full, incremental, and thorough. A full verify reads the entire DVD/BRD and reports any files having read errors. An incremental verify reads only those files that have been newly written by a preceding incremental backup. This is usually much faster while still offering a high level of security. A thorough verify reads every file on the DVD/BRD and makes a bytewise comparison with the corresponding disk files. This is normally unnecessary, but it provides additional assurance that hardware and software are working correctly.
You can list all files in a backup job, or all files on a DVD/BRD. You can search for specific files using wildcards. You can compare a DVD/BRD with the corresponding backup job, listing all differences: files that have been created, deleted, or modified since the DVD/BRD copy was made. This comparison can be done at three levels: a detailed list of files, a directory level summary, or a job level summary.
For disaster recovery or file transfer, dkopp has a file restore capability. You can select and restore DVD/BRD files to their original directories or anywhere else.
An incremental backup updates a DVD/BRD made with a prior full backup. This simplifies both backup and restore: you do not need to track full and incremental backup media, and you do not need to restore files from multiple media in correct sequence.
Searchable log files are generated with time/date, DVD/BRD label, and files copied. You can search the log to find all DVD/BRDs with copies of a desired file, using wildcards to simplify the search
(e.g. find */joeblow/*/planB* ).
A script file can be used to automate backups or run dkopp from a shell script. The GUI is not used in this case.
Incremental backup and verify can take less than a minute if the updated files are within 30 megabytes or so. For larger jobs, the DVD/BRD speed determines the time required. With 4x DVD media, backup + verify runs about 150 megabytes per minute.
Dkopp is a graphical front end for the command-line programs growisofs and genisoimage. The added functionality is ease of use, especially the easy way to specify the files to be copied.
TOPIC: Dkopp Concepts
The files in a backup job are specified with include and exclude statements. These have filespecs with optional wildcards placed almost anywhere.
Examples:
include /home/* # add user files
include /shared/*/documents/* # add shared document files
exclude */mp3/* # exclude files in mp3 directories
exclude */.Trash/* # exclude trash files
The first include adds all files owned by users in their home directories. The 2nd include adds all files under the /shared/ top directory that also have a subdirectory named /documents/. The two exclude statements exclude files within /.Trash/ and /mp3/ directories at any level.
GUI interface: The above statements are normally generated using a standard Gnome file selection dialog. The process is documented in the section on editing backup jobs.
Note that excludes are effective only against prior includes. They have no effect on following includes, which are processed afterwards.
Restriction: include statements must include at least the first directory name (top-level) without wildcards.
limitations:
+ max. 200,000 files in a backup job (compile time constant)
+ supports DVD/BRD media only (not CD media)
+ not useful for disk imaging (operating system backup)
After installing dkopp, please perform the first tryout exercise (below). This may be all you need at first. You can enhance your security and ultimately save time if you read this entire document.
TOPIC: License and Warranty
Dkopp is a free program licensed under the GNU General Public License, Version 3 (from the Free Software Foundation). Dkopp is not warranted for any purpose whatsoever, but if you find a bug, I will try to fix it.
TOPIC: Origin and Contact
Dkopp originates from the author's web site at ^https://kornelix.net^. Other web sites may offer it for download. Modifications could have been made. If you have questions, suggestions or a bug to report: mkornelix@gmail.com
TOPIC: Dkopp First Tryout
The following short exercise will check that dkopp functions correctly on your system and help you become familiar with dkopp usage.
1. Load a recordable DVD/BRD and wait for the desktop icon to show up.
2. Start dkopp (use the system menu or a terminal command: $ dkopp).
3. Select button: [edit job]
4. Set the DVD/BRD device ID
5. Select full backup and full verify
6. Erase the default backup job shown (use the [clear] button)
7. Select the button [file chooser] at the bottom
8. Navigate and select some files or directories to be copied
+ double-click a directory to open it and select from its contents
+ select one or more files/directories
+ press [include] to include all selected items in the backup job
+ press [exclude] to exclude items previously included at a higher level
+ press [include] to include items previously excluded at a higher level
+ use the buttons at the top to go back up the directory hierarchy
+ press [hidden] to toggle the display of hidden files
9. Press [done] when finished selecting files
10. Inspect the generated include and exclude statements. These may be edited
directly if desired (e.g. erase mistakes or redundancies, change the order,
or make additions or revisions). Re-enter the file chooser dialog if wanted
to append new choices. Cycle between the editor and file chooser as needed.
11. Select button [OK] when done editing the job
12. If errors are shown, select [edit job] and fix. Remember that exclude
statements must follow relevant include statements - excludes remove
prior includes, and includes may be exceptions to prior excludes.
13. Select menu: Report > get backup files. Inspect the counts. Be sure the
total byte count is within the DVD/BRD capacity. Look for zero counts,
indicating possible errors. Re-edit the job if needed.
14. Select button: [run job]. The backup should begin.
15. Verification should follow automatically. You will be asked to re-mount
the DVD/BRD. Check that the error count is zero when finished.
16. Save the job file if desired: menu: File > save job
17. Select button: [quit]
18. Next steps: play with incremental backups and reports
TOPIC: File Menu
^open job
Open a previously saved backup job file for re-use (edit, run). The default location for job files is /home/user/.dkopp
^open DVD/BRD
Open the backup job file on the currently loaded DVD/BRD.
This file was saved on the DVD/BRD when the last backup job was run on that DVD/BRD.
^edit job
Opens an edit dialog for the current backup job (from the last job file opened, or from a prior edit). If no file has been opened, internal default data will be used as a starting point.
^show job
List the current backup job data and diagnose any errors.
^save job
Save the current backup specifications in a job file. Default is the same file that was last opened, but you may select any file.
^run job
The current backup job is executed. Backup and verify modes are taken from the job.
^run DVD/BRD
The backup job file stored on the DVD/BRD is executed. Backup and verify modes are taken from the DVD/BRD job. Whenever a backup is performed, the current job file (including any edits that were made) is copied to the DVD/BRD.
Note: what is copied to the DVD/BRD is the current job, not menu commands given manually. Thus, if you load a job file which specifies incremental backup, and then do a full backup using the menu command, the backup job stored on the DVD/BRD will still specify incremental. To change the job written to the DVD/BRD, edit the job before starting the backup.
^quit
Exit program.
TOPIC: Backup Menu
^full
The current backup file set is copied to the DVD/BRD fully. All files are copied unconditionally. The DVD/BRD is initialized to an empty status. If growisofs aborts the job (declaring the DVD/BRD to be "unknown type" or "not formatted"), the menu command DVD/BRD > format may fix the problem.
^incremental
The current backup file set is copied to DVD/BRD incrementally. New and modified files (since the DVD/BRD was created or updated) are copied. Files that already match their corresponding disk files are not copied. Any "extra" DVD/BRD files (not in the backup file set) are deleted. At the end, the DVD/BRD is 100% identical to the backup file set, with the possible exception of files modified during the backup run. See the technical notes for details about how matching files are recognized and skipped over.
^accumulate
Same as incremental, but without DVD/BRD file deletions.
TOPIC: Verify Menu
^full
All files on the DVD/BRD are read and checked for errors. DVD/BRDs need this extra level of protection, since poor media quality has been a problem. If errors are detected, clean off the fingerprints or discard the DVD/BRD. If errors happen on more than 1% of your media, consider getting a new drive or changing media brands. Note that any CD or DVD or BRD can be "full" verified - it does not have to be a dkopp backup disk.
^incremental
New files on the DVD/BRD are read and checked for errors. "New" means any files written by an immediately prior incremental or accumulate backup. Other files are not checked.
^thorough
All DVD/BRD files are read and verified that there are no read errors. Those DVD/BRD files that have a matching disk file (matching full path name and modification date/time) are bytewise compared to the disk file, and any files not matching are reported. There should be no differences. This verifies that all hardware and software (driver, file system, dkopp) are working correctly. DVD/BRD files that are expected to be different (different mod times) are read and checked for errors, but not compared with the disk. Dkopp considers two files to have the same mod times if they differ by less than one second (the time resolution for files on DVD/BRD media).
The following counts are reported at the end of the verify job:
+ total DVD/BRD files and bytes
+ DVD/BRD files having read errors (should be zero)
+ DVD/BRD files having matching disk files (by name)
+ DVD/BRD files having matching disk files (by name and mod time)
+ for the last category, the number of compare errors (should be zero)
TOPIC: Report Menu
^get files for backup
The backup job include and exclude statements are listed, along with the file and byte counts that are added or removed by each statement. Look for zero counts, indicating a possible error. The disk directories are read and the list of files included in the backup job is saved in memory. This data is used to determine what files are different between the disk and DVD/BRD and must be copied for an incremental backup. The file list is static and is not updated by disk activity. The list of "new" files that are checked with an incremental verify is also reset with this command.
^diffs summary
Report the total number of files in each category:
new on disk, but not on the DVD/BRD
modified on both, but not the same content
deleted on the DVD/BRD, but not on disk
unchanged on both, with the same content
Differences between the disk and DVD/BRD may be caused by disk updates (file additions, deletions, updates, or moves), or by changes to the job file itself.
^diffs by directory
Each directory having differences between the disk and DVD/BRD is reported, along with counts of new, modified, and deleted files. The total bytes for new and modified files is also given.
^diffs by file
All files that are different between the disk and DVD/BRD are listed in alphabetic sequence within groups for new, modified, and deleted files.
^list files for backup
All files in the backup file set are listed in alphabetic sequence. Use this to check that the correct files are being backed-up.
^list DVD/BRD files
All files on the DVD/BRD are listed in alphabetic sequence.
^find files
Enter a search pattern with optional wildcards (e.g. /home/dir*name/file*name). All matching file names on the disk (in the backup job file set) are listed. All matching file names on the DVD/BRD are listed. All backup log files are also searched, and those containing the target file(s) are listed (by date / time and DVD/BRD label). These files correspond to backup jobs, one-to-one. Use this method to locate all backup copies of a given file or group of files, sorted from oldest to newest. A file may be present in multiple log files for multiple incremental backups made to the same baseline full backup, but it actually exists only once on the DVD/BRD, in its latest version.
^view backup hist
All backup history log files are listed (up to 200). These correspond to backup jobs, one-to-one, and contain a list of files copied to the corresponding DVD/BRD. The most recent 20 log files are put into a dialog for selection. Select one of these from the dropdown list, or modify the input to select an older file. The text editor gedit is invoked to display the log file. You can page up and down and search for strings using gedit.
Backup log file names are formatted as follows: dkopp-hist-yyyymmdd-hhmm-label. Note that one DVD/BRD having a full backup and one or more incremental backups will have a log file for each backup, showing those files copied for each backup. A file may be present in multiple log files for multiple incremental backups made to the same baseline full backup, but it actually exists only once on the DVD/BRD, in its latest version.
^save screen
The main window, where messages and reports are written, is saved in a text file.
TOPIC: Restore Menu
^setup DVD/BRD restore
Specify the copy-from location (on the DVD/BRD), the copy-to location (on disk), and the files to be restored. The copy-from location is the topmost DVD/BRD directory of a tree of files to be restored.
example: /home/joeblow/documents # note that mount point is omitted
The copy-to location is an existing directory where the tree of files is copied-to.
example 1: /home/joeblow/documents
example 2: /home/joeblow/documents/restored
In example 1, the restored files will go back to the same place they were when backed-up. In example 2, they will go to a new place.
Files to be restored are specified the same way as in a backup job (see the section below on using the file selection dialog). Use the button [file chooser] to start the dialog.
If you need to restore multiple trees of files, you can do this in multiple runs, or you can simply begin the tree at a higher level and use the file selection dialog to specify multiple sub-trees.
^list restore files
After performing the setup, use this function to list all matching files on the DVD/BRD that will be restored, exactly where they will be restored. You should check this list carefully to be sure you are restoring the correct files to the intended locations.
^restore files
When you are satisfied with the restore job specification, use this menu to perform the restore. You will see a running log of the activity. Use the kill button to stop the job if desired.
TOPIC: DVD/BRD Menu
^set DVD/BRD device
The DVD/BRD device and mount point may be set independently of the backup job. The DVD/BRD device and mount point for the current backup job is modified. No mounting is done.
^set DVD/BRD label
Set the DVD/BRD label that will be used for a subsequent backup job. The default is to keep the same label that the DVD/BRD already has. The DVD/BRD mount command will show this label. If no label is assigned, "dkopp" is used.
^mount DVD/BRD
Mount a DVD/BRD. You are asked to insert a DVD/BRD and wait for the mount to complete. If the mounted DVD/BRD has been used for dkopp before, the date-time of the last backup to this DVD/BRD is displayed. Be sure to read the technical notes about DVD/BRD mounting.
^eject DVD/BRD
The DVD/BRD is unmounted and ejected.
^reset DVD/BRD
This does a hardware reset to the DVD/BRD drive. This is sometimes useful if a drive gets locked-up and cannot be ejected using either the dkopp eject command or the tray button. This sometimes happens when there is a DVD/BRD error or a backup is killed in mid-process. This may or may not work. If the DVD/BRD drive remains hung after several minutes, the only resort is a reboot.
^erase DVD/BRD
Writes zeros to the entire DVD/BRD surface. This takes 10+ minutes, depending on the DVD/BRD drive speed and medium. This works only for rewritable media (DVD+RW or DVD-RW or BRD-RE). DVD-R and BRD-R media are write-once and cannot be erased. See the technical notes below for more about privacy and data protection.
^format DVD/BRD
This uses the dvd+rw-format utility to format a disk in a few minutes. The entire DVD/BRD is not erased. See the technical notes below for more about privacy and data protection. If Backup > full refuses to start, this format command may fix the problem.
TOPIC: Help Menu
^contents
Display the help file (this file).
^about
Display the dkopp program version and date.
TOPIC: Toolbar Buttons
^edit job
Shortcut to the backup job editor (same as menu File > edit job)
^run job and run DVD/BRD
The current job, or the job on the DVD/BRD, is executed. Be sure to read the technical notes about DVD/BRD mounting.
^pause and resume
The currently running job or menu function may be paused and resumed. Use this to inspect output on the fly.
^kill job
The currently running function is killed. You may need to wait a while for the function to die and screen output to cease. If a backup job is killed, growisofs will gracefully exit in a few seconds, leaving the DVD/BRD in an undetermined status.
^clear
The main window, where messages and reports are written, is cleared.
^quit
Exit the application. If the job file has been edited and not saved, you will be given an opportunity to save the changes.
TOPIC: Editing Backup Jobs
(see screenshot below)
Select menu: File > edit job or button: edit job
Fill-in the following items in the dialog box:
DVD/BRD device /dev/sr0
backup mode check full / incremental / accumulate
verify mode check full / incremental / thorough
file date from leave default (1970.01.01) or input a later date
Select the DVD/BRD device from the drop-down list of available devices.
"file date from" is an additional method for selecting files to copy. Files with a create/modification date older than this will be ignored.
^File selection dialog
You may edit the backup file set (the include and exclude statements) directly in the text window. You may also use the [browse] button to get a standard file selection dialog, with additional buttons: hidden, include, exclude. The [hidden] button toggles the display of hidden files (file names with leading dots, like .gnome). Select one or more directories or files, using left-mouse or shift+left-mouse, then press the [include] or [exclude] button. The selected files/directories will be written into the text window as include or exclude statements. If you select a directory, the entry is modified to add a wildcard at the next level:
selecting directory /aaa/bbb/ccc → include /aaa/bbb/ccc/*
You may alternate between editing the text window and using the file-chooser dialog. When you are done, press [done] to accept. The include/exclude data will be validated to the extent possible. Go back and re-edit to fix any problems. To change the sequence, cut and paste in the text window. When you are done, use the report functions "get backup files" and "list backup files" to verify that you have the correct files.
The include and exclude control statements allow precise control of the backup set:
include /aaa/bbb/* # include file tree under /aaa/bbb/
exclude /aaa/bbb/ccc/* # exception: exclude /ccc/ subtree
include /aaa/bbb/ccc/xxx.yyy # exception: include file /ccc/xxx.yyy
The file-chooser dialog may be used to quickly converge on the desired results.
Because of wildcards, newly added files within the scope of existing include or exclude filespecs are automatically comprehended. In the above example, if a new file is added somewhere within the /aaa/bbb/ tree, it will be automatically included in the next backup job, unless of course it is in the excluded /aaa/bbb/ccc/ subtree.
+image: dkopp-jobedit.jpg
The file > edit job menu command (or toolbar button) pops up the middle box. This can be edited directly: click anywhere in the text area and start writing. The right box is the choose files dialog, which is started with the [browse] button. Choose files using the right box, and the middle box records your choices. You can navigate around the directory hierarchy and select any number of files or directories. The [hidden] button toggles the display of hidden files. Click the [include] or [exclude] button to get the selected files added to or removed from the backup list. Selecting a directory is an implied selection of all contained files, thus the selection appears as directory/* in the list of selected files. To make an exception, go down one level, choose files, and select the opposite [include] or [exclude] button. You can refine the file selections manually if desired. It is sometimes handy to use wildcards in the directories to make more general and compact selection criteria, e.g.
exclude *thunderbird*/Trash*
will omit trashed mail even if the overlying directories change (they do) and even for multiple users (the leading wildcard includes "/home/*").
You can add comments, or disable an include / exclude line, by putting '#' in column 1.
TOPIC: Script Files
A script is a text file with a series of commands that can be run as a batch job. All dkopp menu commands can be scripted.
The format of the records in the script file is as follows:
menu1 > menu2 > parameter # comment
The menu names must match the interactive menu names exactly, including case.
To run a script file: $ dkopp -script /pathname/scriptfile
You can also add the option -nogui for deferred execution. Dkopp will not create a window or ask for any inputs in this mode. You must leave a DVD/BRD in the drive for dkopp to use later.
Here is a sample script file to get you familiar with the possibilities:
File > open job > jobfile1
Report > get files for backup
Report > diffs summary # report
Backup > incremental # backup changed files
Verify > full # verify all files
File > quit
The toolbar buttons may also be used, e.g.
button > pause # press resume to continue
At this point you may use the menu interactively and then resume the script by pressing the resume button.
The command 'exit' may be used to end the script file and return to interactive mode. Script file EOF does the same thing.
TOPIC: Technical Notes
^Uninstall
Debian package: use command: sudo apt remove dkopp
Tarball: use command: sudo make uninstall
Binary package: delete 'dkopp' files in $HOME/.local/*
^Mounting DVD/BRD media
Starting with v.6.4, dkopp no longer mounts DVD/BRD disc itself, but outputs a popup message asking the user to do this. Insert the disc, wait for completion, and then press the [OK] button in the popup dialog. The appearance of the desktop icon may or may not mean that the disc is actually mounted (varies in the systems I test with). If dkopp responds with "waiting for mount ...", click the desktop icon to encourage the window manager to mount the disc. This change was made to relieve dkopp of the need to understand what Gnome and other window managers do about DVD/BRD disc mounting.
^DVD mount errors and growisofs errors
There are many of these, and they change with each new release of the kernel, Gnome, and growisofs (the command-line program used to write the DVD/BRD). Often they are bogus errors that are not really errors, or they are temporary errors that will go away when the operation is tried again. Dkopp is unable to distinguish the difference. In the case of a full backup, the user is given a popup dialog with the options to abort the job, retry the full backup, or ignore the error and continue. If the backup job did not even get started, use retry. If the backup job seems to have completed, use ignore. Verify will detect later if any error actually happened.
^Blank DVD/BRDs
The first time a DVD/BRD is used, do a full backup. A blank DVD/BRD will not mount, but a full backup will still work and make the DVD/BRD mountable thereafter.
^Flakey DVD/BRDs
Drive and media combinations sometimes have compatibility problems, resulting in media errors. The newest drives (2006 and later) are much better at adjusting to media variations. I have had a few DVDs (<1%) that passed a dkopp verify and then became unreadable later, so make regular backups and avoid depending on a single DVD/BRD.
^Media errors
If the dkopp verify function runs into a read error, the DVD/BRD drive may lock-up for a minute or more while retrying the failed read hundreds of times. Give the "kill" command and wait for the drive to give up. If the DVD/BRD is dirty, clean it and try again. Otherwise throw it out.
^Privacy and data protection
To protect your private data on discarded DVD/BRDs, you should destroy them. A few seconds in a microwave oven will completely destroy the metallic recording layer (with spectacular visual effects). Do not inhale the fumes.
^Command line arguments
$ dkopp -job jobfile # load job file
$ dkopp jobfile # load job file
$ dkopp -run jobfile # load job file and run it
$ dkopp -script scriptfile # run script file
$ dkopp -nogui -run jobfile # run job in non-GUI mode
The -run and -script commands are intended for shell scripts. The -job command is more useful for a desktop launcher, leaving the user free to elect the backup mode or make other changes in the job before execution. If the jobfile name contains blanks, quotes are required, e.g.
$ dkopp -job "my dkopp job"
The -nogui option will prevent dkopp from opening a window or asking for any interactive inputs. Use this for deferred operation (batch job). You must leave a DVD/BRD in the drive for dkopp/growisofs to use.
^Deleted DVD/BRD files
Growisofs is used to perform the file copies. It can replace existing DVD/BRD files with new versions, but it does not delete files. For incremental backups, dkopp replaces deleted files with null files (zero length). Full backups do not have this issue, since the DVD/BRD is initialized. If you recover files from a dkopp DVD/BRD using a shell copy command with wildcards, or Nautilus drag-and-drop of an entire directory, you may get unwanted null files. If this happens, it is easy to get rid of them like this:
$ rm -i $(find /dir1/.../dirN -empty)
(remove all empty files in a directory tree, with confirmation of each)
Note that if you use dkopp restore, these null files are invisible and are not restored.
^Incremental backups
A DVD/BRD file is considered identical to its corresponding disk file if their lengths and modification times are the same. Incremental backups exclude such files. If the modification times differ by less than 1 second they are considered equal (another way to look at this issue: file backup times may be wrong by up to 1 second). A thorough verify will read and compare the files unconditionally. File mod times on DVD/BRD media have a 1 second resolution.
^File names containing "="
Genisoimage requires that "=" in file names be replaced with "\=". The file-chooser dialog in dkopp file restore shows "\=" instead of "=", but the files will be correctly restored with "=" only.
^Restoring file owner and permissions
The file system used for DVD/BRD media does not support file owner and permissions, so dkopp writes a special file to the DVD/BRD with this data. Restored files have original owner and permissions.
^Special dkopp files on DVD/BRD
Directory /dkopp-data is written to the DVD/BRD with three files:
datetime backup date-time and DVD/BRD usage count
filepoop owner and permissions for all backed-up files and directories
jobfile a copy of the backup job specs last used on this DVD/BRD
These are ordinary text files which you can view with an editor.
^Special file types
Pipes, devices, and sockets are not copied. Symlinks are copied as such. Both symlinks and their targets should be included in the backup or restore file set, since it makes no sense to copy one without the other. This normally happens by default, since symlinks typically link to files in the same directory. Symlinks are used commonly in system directories and in the hidden system files within a /home/user directory. For user files, there is no need for them.
^Killing growisofs (killing a backup job in progress)
This will sometimes leave the DVD/BRD in a condition that growisofs refuses to deal with. If you decide to abort a backup job (e.g. to revise the job specs and start over), you may get this condition. You should retry a full backup on this DVD/BRD. If growisofs still refuses, format the DVD/BRD (dkopp menu), then try the full backup job again.
^Duplicate files
If job file "include" statements overlap, resulting in duplicate files in the backup set, this is reported and the backup is terminated.
^Microsoft Windows
DVD/BRDs created with dkopp use the standard ISO-9660 file system, which can be read by Windows.
^DVD/BRD drive and media information
Here are two useful commands:
$ udevinfo -q all -n /dev/dvd # DVD/BRD drive information
$ dvd+rw-mediainfo /dev/dvd # DVD/BRD media information
^Incremental backups
New and updated files are written to a new "session" on the DVD/BRD, along with new directory files which may reference data files in both the old and new sessions. Nothing is changed in the old sessions. Thus, incremental backups consume more space on the DVD/BRD even if the corresponding disk files are not any bigger. For DVD+R, DVD-R and BRD-R media (write once), only one full backup may be made, and as many incremental backups as can fit in the remaining space. For DVD+RW, DVD-RW and BRD-RE media (rewritable), a new full backup will initialize the DVD/BRD and recover all space. These DVD/BRDs can be used until they wear out. I have exceeded 100 uses on a test DVD+RW medium and it still works fine.
^Growisofs progress tracking
Growisofs (genisoimage) outputs a "% done" value every few megabytes. Dkopp uses this number to compute the current position in the list of files to be copied, and the resulting file is echoed to the main window. The update frequency is typically less than once per file, so some file names will be bypassed. Large files may stay on the screen for several update cycles. For full backups, the math is straightforward. For incremental backups, growisofs starts off with:
% done = 100 * (initial DVD/BRD bytes used) / (final DVD/BRD bytes used)
Dkopp assigns this value to the first file in the backup list. The last file is assigned 100%, and the rest are interpolated using accumulated bytes.
^Linux error codes
Linux error codes can be misleading. If an attempt is made to open a file that is already open and therefore locked, the error code translates to "no such file or directory". The error codes are the same for an attempt to mount an empty tray or a corrupted DVD/BRD. The same is true for an attempt to mount a DVD/BRD that is already mounted, or a blank DVD/BRD. Dkopp outputs messages of its own that mention the multiple possibilities. Hopefully this will improve over time.
^Backup history files
A history file is generated for every backup job run.
location: /home/username/.dkopp/
file name: dkopp-hist-yyyymmdd-hhmm-label
The file name corresponds to the date and time of the backup and the DVD/BRD label. A history file contains a list of all the files copied to that DVD/BRD at that time. Thus, a DVD/BRD used for a full backup and two incremental backups will have three corresponding history files, each one containing those files copied by the respective backup job. A full backup spanning multiple DVD/BRDs will have multiple history files, one per DVD/BRD. History files accumulate and are not automatically deleted. When 200 files are reached, the find files and view backup history reports produce warnings. Delete the oldest files or move them elsewhere. The 200 limit is a compile time constant: maxhist. This could be set much higher if desired (and if you have so many DVD/BRDs before you re-use them).
^DVD/BRD label
The menu DVD/BRD > set DVD/BRD label is for an optional DVD/BRD label input, which you can use as part of your media management system. A subsequent backup job will write this label to the DVD/BRD, and the DVD/BRD mount command will show the label. Recommendation: for full backups, set the label to match what is written on the DVD/BRD (with a soft pen). For incremental backups, leave the label unchanged.
^genisoimage errors
If a disk file is deleted after growisofs begins, the DVD/BRD will be defective: directory entries for the missing files and all following files will point to garbage (which may even be readable). The error reported by genisoimage is ignored by growisofs. Dkopp scans growisofs output for the ignored errors and un-ignores them.
|