[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [no subject]
From: |
Thomas Schmitt |
Subject: |
Re: [no subject] |
Date: |
Wed, 14 Apr 2021 14:23:51 +0200 |
Hi,
895553893@qq.com wrote:
> At first, I didn't know xorriso can burn in windows??meanwhile??
That's new to me, too. Up to now i thought it would just be able to
write ISO 9660 filesystems to files.
> I know xorriso use cdrecord ??
No. xorriso uses libburn, which is independent of cdrecord.
> $ ./xorriso.exe -devices
> GNU zfburn 1.5.5 : RockRidge filesystem manipulator, libburnia project.
> ...
> zflibburn : NOTE : Write start address is 660 * 32768
Huh ? "zfburn" ? "zflibburn" ?
The messages seem to stem from my software. But the module names should be
"xorriso" and "libburn", rather than "zfburn" and "zflibburn".
> $ ./xorriso.exe -devices
> ...
> 0 -dev '\\.\F:' rwr-r- : 'ASUS ' 'SBW-06D2X-U'
This does not look like libburn underneath xorriso believes to be on Linux.
(You did not fulfill my wish to show the output of
xorriso -version
So i still have to riddle about libburn's assessment of the environment.)
> (when you install cygwin, libcdio should be installed)
This could be an explanation. libburn has an operating system adapter
which uses libcdio.
If xorriso.exe uses that adapter, then it is up to libcdio to give the list
of drives and to perform the SCSI transactions with the drive.
The adapter code is in
libburn/sg-libcdio.c
Drive enumeration is done in
static int sg_give_next_adr_raw()
by calling
cdio_get_devices(DRIVER_DEVICE);
See
https://www.gnu.org/software/libcdio/doxygen/device_8h.html#ab079f667ac788005aab8ec430574c3ea
which says
In some situations of drivers or OS's we can't find a CD device if there
is no media in it [...]
> however which device I chose??it always burn to the
> same one device(the low_namer device, e.g. E,F it burn to E)
> $ ./xorriso.exe -dev /dev/sr0 [...]
In the libcdio adapter of libburn, the drive gets addressed by
p_cdio = cdio_open_am(d->libcdio_name, DRIVER_DEVICE, am_wanted);
d->libcdio_name is assigned when the drive gets enumerated.
xorriso command -dev sets the name "/dev/sr0" as the only desired one and
then lets libcdio enumerate in the expectation to get the drive with the
desired name.
So i would rather expect that lbcdio enumerates no drive for name "/dev/sr0"
and thus xorriso -command -dev /dev/sr0 should fail. The xorriso run should
stop then before image loading and burning begins.
But we see the loading of the existing session directory tree from the
medium:
> zfburn: NOTE : Loading ISO image tree from LBA 0
> zfburn: UPDATE : 24 nodes read in 1 seconds
and then a burn run, albeit with one strange message:
> Media current: DVD-RW restricted overwrite
> Media status : is written , is appendable
> Media summary: 1 session, 10533 data blocks, 20.6m data, 4467m free
> ...
> zflibburn : NOTE : Write start address is 660 * 32768
The number 660 is strange. It should be 10533 rounded up to the next
multiple of 32. I.e. to 10560.
> ISO image produced: 2437 sectors
> Written to medium : 2592 sectors at LBA 10560
> Writing to '/dev/sr0' completed successfully.
In the final message correctly tells the write start at LBA 10560.
The medium is now supposed to hold the files from the older sessions plus
the 24 files and directories copied in from /cygdrive/C/__22 .
If the first session was written by xorriso, then
xorriso -outdev /dev/sr0 -toc
should show two sessions. If written by cdrecord or growisofs, then only
one session will be reported, because the superblock of session 1 had to be
overwritten.
Do you see all expected files from first and second session on the medium ?
-------------------------------------------------------------------------
More questions:
- From where did you get xorriso.exe ?
If you compiled it yourself:
- From where is the source code ?
- What was your exact command line to build it ?
(Especially: Which options did you give to the script ./configure ?)
- What operating system adapter does it use?
Please show the output of this run:
xorriso -version
- What do you get from
xorriso -outdev /dev/sr0 -toc
with only one drive attached and with both drives attached ?
Is there a difference to see between media being in the drives and
the drives being empty ?
- With both drives attached and loaded media in each of them:
Does
xorriso -outdev /dev/sr1 -toc
yield a different result than with /dev/sr0 ?
- If both drives hold a medium, does
xorriso -devices
list them both ?
-------------------------------------------------------------------------
Have a nice day :)
Thomas
- Re: [no subject],
Thomas Schmitt <=