On Wed Apr 26 2000 at 16:41, "S�ren Lamb�k" wrote:
> When mounting a fat32 partition into linux (redhat 6.0) as a vfat
> filesystem it truncates long filenames til 8 chars. It is not the
> "short DOS" filename with the "~" char that i get but the first 8
> chars of the filename.
Now you didn't say that you were referring to a "fat32 cdrom
partition". No, this isn't right... the two (fat32 and data cdroms)
are very different beasts.
> When booting the mashine on a dos floppy, the long filenames are ok
> on the DOS partition.
>
> Any ideas as to what may be wrong
On Mon May 01 2000 at 10:36, "S�ren Lamb�k" wrote:
> The trouble here is that i am using the "vfat" option when mounting
> the "fat32" drive. If I was mounting as msdos shouldn't i see msdos
> "short" filenames ( "abcdef~1.txt" )? What i get is filenames like
> "abcdefgh.txt" instead of "abcdefghijklmnop.txt"
This looks like you haven't got the kernel nls_cp* codepage module
extensions (eg, nls-cp437.o nls_iso8859-1.o etc) available. (I could
be wrong).
> When mounting the CD I use the iso9660 option and get the same
> filename tweak as described before.
What as before? The long names (ie, working), or the short 8.3 names
(not working)?
> Is linux taking a decission of it's own to ignore fat32 and still
> mount anything as msdos? If you guy's still think msdos mounting is
> the case, can you suggest how i can determine if it is so? besides
> checking "fstab" entries which are using "vfat".
It must be mounted as vfat and the long names will work.
And IIRC vfat uses msdos (fat), and both modules should be
automagically loaded by the kerneld daemon (kernel 2.0.x) or by the
kernel itself (kernel 2.2.x).
> I still think that there should be a clue for one of you out there
> when both the CD and the FAT32 is behaving like this.
CD? Who said anything about CDROMs?
The filesystem on a CDROM is quite different... it has a iso9660
format filesystem -- NOT vfat.
The standards for iso9660 specify 8.3 filenames and other restrictions
such as 8-deep directory levels and so on.
In order to overcome these limitations, some extensions were added:
- RockRidge -- allows unix filesystem extensions.
- Joliet -- allows vfat (fat16/32) long file name extensions
If you mount a CDROM, it is (almost) always an iso9660 filesystem.
The kernel - if it has the right drivers compiled into it and/or the
right modules available for loading - will (should) automatically
detect the presence of either or both RockRidge and Joliet extensions
and act accordingly.
In short, for reading CDROMs you need to have the CDROM driver
available (usually compiled into the kernel by default), then the
kernel will load the appropriate nls_* codepage module
(nls_iso8859-1).
For reading/writing to vfat filesystems on either hard drive or
floppy, the vfat, fat and nls_cp437 modules all need to be loaded.
And they should be loaded automagically by the kernel.
> Thanks for any help
> > You are mounting it as msdos, instead of vfat. Try doing a
> >
> > mount -t vfat /dev/xxx /mnt/xxx
> >
> > Or if you use the fstab change the msdos to vfat...
Cheers
Tony