bug-xorriso
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-xorriso] update_r


From: Thomas Schmitt
Subject: Re: [Bug-xorriso] update_r
Date: Fri, 03 Apr 2015 15:07:38 +0200

Hi,

> Now I do the first run of the script and worked fine.
> Then I rerun the script, nothing in /test/bla changed
> but the script discovers difference and burns another
> session (only a few kbytes).

This happens because you enable loading of recorded disk
inode numbers from the ISO by -disk_dev_ino only after
you already loaded the ISO by -dev.

Further you set the volume id by -volid after you read
the ISO by -dev. Command -volid is not smart enough to
recognize that the new id and the old one are the same.
So it marks the image model as having pending changes.

Both effects cause a new session with a new directory
tree to be written when command -commit is encountered.

I have to confess that i did not yet think of empty
incremental backups. Probably a command would be of help
which gracefully ends the run if no changes are pending
at that moment.


-----------------------------------------------------------
Remedy proposal:

Put -dev to the same position as in the example of the
man page. Reset the -changes_pending mark after -volid.
-update_r will eventually mark the model again as being
changed. (It would be bad to override this by putting
-changes_pending after -update_r.)

  xorriso \
   -abort_on FATAL \
   -for_backup -disk_dev_ino on \
   -assert_volid 'DISC_1' FATAL \
   \
   -dev /dev/sr0 \
   \
   -volid DISC_1 \
   \
   -changes_pending no \
   \
   -update_r /test1/bla /bla \
   -report_about UPDATE \
   -commit -toc -check_md5 FAILURE -- -eject all

If no changes happened in /test1/bla, then this run should
issue the message

   xorriso : WARNING : -commit: No image modifications pending

omit writing the session, show TOC, check MD5 of the old
loaded session, and eject.

(You may well test this with a disk file rather than a CD
 by e.g. -dev /test1/pseudo_drive . If /test1/pseudo_drive
 does not exist then it will be created and used like a
 blank medium.)
 

Have a nice day :)

Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]