[syslinux] isolinux bug?
Izzy Blacklock
izzyb at ecn.ab.ca
Wed Jul 10 15:58:54 PDT 2002
On Wednesday 10 July 2002 00:28, H. Peter Anvin wrote:
> Izzy Blacklock wrote:
> > It looks like the dash isn't a valid character even when using the -l
> > option. I'm guessing using -l causes the creation of a level 3 iso9660
> > filesystem.
> >
> > What would be involved in adding Rock Ridge support to isolinux? These
> > file naming restrictions are likely to cause a lot of problems for
> > people. At the very least, adding a note about the restrictions to your
> > docs seems like a good idea! It'd probably have saved me from making a
> > fool of myself! :)
>
> Adding RockRidge would be *lots* of work, although it's probably not
> impossible.
>
> The docs do say:
>
> Note that ISOLINUX only uses the "plain" ISO 9660 filenames, i.e. it
> does not support Rock Ridge or Joliet filenames. It can still be used on
> a disk which uses Rock Ridge and/or Joliet extensions, of course. Under
> Linux, you can verify the plain filenames by mounting with the "-o
> norock,nojoliet" option to the mount command. Note, however, that
> ISOLINUX does support "long" (level 2) ISO 9660 plain filenames, so if
> compatibility with short-names-only operating systems like MS-DOS is not
> an issue, you can use the "-l" or "-iso-level 2" option to mkisofs to
> generate long (up to 31 characters) plain filenames.
>
> -hpa
If there's a lot of work involved in adding RockRidge support, I don't see it
as being a priority. Perhaps someday it will be important enough to someone
to invest the time to add the features. I'm perfectly happy living within
the limitations now that I know about them! :)
I do recall reading this section of your docs, but before I read the mkisofs
man pages, I didn't understand the different iso level or what Rock Ridge or
Joliet filenames were. I must have skipped over this section in my confusion
shortly after reading that ISOLINUX does support "long" filenames, because I
didn't know about the 31 character limit until after I read the mkisofs mans.
As it turns out, I was within this limit anyway; it was the dash that got me.
May I perpose the following changes to the above section of your docs just to
clarify the limitations.
----------- 8< -------------
Note that ISOLINUX only supports ISO9660 level 1 and level 2 file systems,
i.e. it does not support Rock Ridge or Joliet extensions. For ISO9660 level
1, this limits file names to the 8.3 (8 characters, period, 3 characters,
all upper case letters, numbers, or the underscore). If you create a level
2 ISO9660 filesystem (for mkisofs, use the "-l" or "-iso-level 2" options),
you can use file names up to 31 characters, but you are still limited to
upper case letters, numbers or the underscore character. Level 2 is not
supported by all operating systems though, i.e. MS-DOS, so only use it if
your boot image can support it.
File names that do not meet the naming restrictions will be modified when your
image is created (see man mkisofs(8) for details on it's behaviour). This
will likely result in booting problems. Under Linux, you can verify the
plain filenames by mounting with the "-o norock,nojoliet" option to the mount
command. Even though ISOLINUX does not support Rock Ridge and/or Joliet
extensions, it can still be used on disks created with these extentions.
This is usefull if your boot image can use these extensions (see man
mkisofs(8) for more details).
--------------------------
I believe this more clearly states the file naming restrictions without
leaving out anything you originally said. Feel free to use it as is or
modify it more to your taste.
I noticed that isolinux was able to boot my image even though I named it
"linux" in all lower case and used this name in the isolinux.cfg file. I'm
guessing isolinux upcases the image name from the config file automaticely?
Perhaps this info should also be added to the docs somewere. Forgive me if
it's already there. I haven't read it top to bottom.
...Izzy
More information about the Syslinux
mailing list