tech-userlevel archive

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

Re: vndconfig vs mount_cd9660



Hi,

On Tue, Dec 29, 2020 at 11:35:15AM +0100, Thomas Klausner wrote:
> On Tue, Dec 29, 2020 at 08:02:19AM +0100, Martin Husemann wrote:
> > On Mon, Dec 28, 2020 at 10:43:10PM +0100, Thomas Klausner wrote:
> > > I wanted to mount an ISO image (on 9.99.77/amd64), so I did, following
> > > the guide:
> > > 
> > > # vnconfig -c vnd0 file.iso # mount -t cd9660 /dev/vnd0a /mnt
> > > mount_cd9660: /dev/vnd0a on /mnt: Invalid argument
> > 
> > May this image contain a UDF file system (instead of ISO9660)?
> 
> Yes!
> 
> > In that case you need to vnconfig it with a geometry specification, so the
> > vnd gets 2048 byte blocks, and then use mount_udf instead of mount_cd9660
> > (I typically use /dev/vnd0d for that, unless something very special is
> > going on or it is a Sun image with explicit disklabel).
> 
> That did the trick:
> 
> # vnconfig vnd0 file.iso  2048/1/1/1 # mount_udf -o ro /dev/vnd0a /mnt

Unlike CD9660 with its fixed sector size of 2048, UDF is defined and accepts
all sector sizes that are a multiple of 512. It retrieves the sector size from
the medium as per specification. Without the size specification it will use
the blocksize of the fake disklabel made up by vnd and thus 512. Maybe the
disc label creation code could be enhanced to detect this situation?

As for writing, UDF images created with makefs can be written to when
instructed to on creation and can also be created with 512 byte sized sector
sizes too.

> disklabel was not more usable than before.
> 
> Is "2048/1/1/1" reasonable or should different values be used?
> 
> I'd like to add a concrete example to vnconfig and mount_udf(8).  Thomas

I thought it was mentioned there, but apparently not!

With regards,
Reinoud



Home | Main Index | Thread Index | Old Index