[Libburn-hackers] Re: Test request to owners of recent Linux kernels

Thomas Schmitt scdbackup at gmx.net
Sun Oct 11 06:41:33 CDT 2009


> Also used xorriso to check TOC info and then mounted various sessions,
> that seemed to work.

So the successful command was the following ?

  mount_cd9660 \
     -t cd9660 -o noexec,nosuid \
     -s <block-address> <device-path> <mount-dir>

If so, then i'll change the mount command for
FreeBSD in xorriso accordingly.

> Question 1:
> Mounting different sessions on a correctly written disk should show
> only the content of the just mounted session?

This depends much on the way the new session is
related to the older ones. Theoretically one
could store several sessions which are completely
independent of each other.
But normally the new session shows all previously
recorded files plus some new ones.

In general a multi-session cycle is like this:
- load directory tree of most recent session,
- add, delete, or change files in that tree,
- write as new session the new tree and the
  data blocks of those files which were added.
The newly written tree then contains entries
for all files which are still valid in the
new session. Some of those files have their data
content stored in older sessions but that is
transparent to the operating system.

xorriso uses this cycle to produce incremental
update sessions. This gives media layouts like
  TOC layout   : Idx ,  sbsector ,       Size , Volume Id
  ISO session  :   1 ,        32 ,    810434s , HOME_2009_08_08_223426
  ISO session  :   2 ,    810496 ,     52054s , HOME_2009_08_15_215525
  ISO session  :   3 ,    862560 ,     40711s , HOME_2009_08_22_110211
  ISO session  :   4 ,    903296 ,     70359s , HOME_2009_08_29_221327
  ISO session  :   5 ,    973664 ,     69181s , HOME_2009_09_05_233353
  ISO session  :   6 ,   1042848 ,     70485s , HOME_2009_09_12_220255
  ISO session  :   7 ,   1113344 ,     52906s , HOME_2009_09_19_220952
  ISO session  :   8 ,   1166272 ,     51050s , HOME_2009_09_26_222723
  ISO session  :   9 ,   1217344 ,     42033s , HOME_2009_10_03_105937
  ISO session  :  10 ,   1259392 ,     61537s , HOME_2009_10_10_213941
  Media summary: 10 sessions, 1320750 data blocks, 2580m data, 1903m free

Each of the sessions represent the state of the
backup area at a particular saturday. The base
backup of 1.6 GB was recorded august 8, the
newest one was recorded yesterday.

The backup area is described by a set of options
  -update_r <disk-path> <ISO-image-path>
which add and delete files under <ISO-image-path>
in order to make it an exact copy of <disk-path>.

One may mount any of these sessions to get the
full recorded state of the 1.6 GB backup area
at the particular day.
xorriso will help to address the session which
is desired for mount. E.g by the volume id of
the session:
  osirrox \
    -outdev /dev/sr0 \
    -mount outdev volid '*2009_08_22*' /mnt
or by session number
    -mount outdev session 3 /mnt

> Question 2:
> What you are aiming at is to be able to use the same command for
> linux and FreeBSD for mounting a given session, so that no branching
> logic is required in your code?

Ah no. That's futile. I just want to know what
has to be done in the FreeBSD branch. xorriso
knows when it runs under FreeBSD. But i have
no FreeBSD sysadmin knowledge.

My aim is to learn how to mount more than one
session from the same media. Mounting two
sessions allows to compare their files e.g.
for learning when a particular file change

On Linux i know how to mount one session per
media. I also believe to have found a backdoor
how to mount more sessions.
My still unanswered question to Linux users is
whether this backdoor (mount -o loop) works with
recent kernels. Mine is three years old.
I will eventually ask on LKML whether the effect
is bug or feature. But LKML expects me to have
done my homework with a recent kernel first.

I used your presence on the list to verify some
older FreeBSD hearsay.
Well, it turned out to be a good idea to ask you.

The other valuable info you gave me is the fact
that FreeBSD has no mount lock on devices and
i need no backdoor to mount two sessions from
the same DVD.

Have a nice day :)


More information about the Libburn-hackers mailing list