[ILUG] Windross doesn't like Linux-formatted FAT32 CF?
Brian Foster
blf at blf.utvinternet.ie
Fri Apr 15 05:02:24 IST 2005
( apologies if this is a dupicate...
this was orginally sent during ILUG's recent
downtime, but I've not seen it, and presume
it was lost....? )
odd situation here....
I've been playing with using a 64MiB CF (Compaq FLASH)
to transfer downloads done at work (hi-speed link) to
home (56Kbaud dialup link). broadly, it works fine.
at work, the CF is attached via a 6-in-1 or equivalent
to the USB of a Windross machine; same at home except
the machine is Linux (now SUSE 9.1, kernel 2.6).
the CF was formatted on the Linux (then SuSE 7.3, kernel
2.4) machine as a c.64MiB VFAT32, and Linux doesn't have
any problems with this. however, every time that I've
connected it to the Windross machine, Windross claims
there is no free space on the CF! needless to say,
there is. lots. aarrrgggghhhhh!!!!!!
if I then take the CF back to Linux, it now also claims
there is no free space. ;-( this tells me — but I've
not yet verified this — that the FAT32 Info Sector is
being changed by Windross at insert/mount time for some
mysterious reason. (the Info Sector, which is only
in FAT32 (not FAT16), contains several cached values,
including a count of free space.)
on the Windross machine, if I delete some files, the
space they occupy _is_ freed up, and I now have that
much free space. so what I have been doing is salting
the CF with n 5MiB files. at work, I delete as many as
I need to free up sufficient space, and then copy over
the downloaded whatever. works, but is a bit clumsy.
(sorry, I'm not sure what happens to any so-created
free space that remains free; I neglected to check!)
anybody seen this before, or have any idea what is going on?
two theories:
① 64MiB is, technically, "too small” to be FAT32,
according to M$'s “specification” (ha!); it should be
(and was, before I deliberately manually reformatted
it on the older Linux) FAT16. maybe Windross objects?
② when I reformatted the CF, I apparently made a mistake,
and sized the FAT32 FS just a tiny bit too big. part
or all of the last cluster (at least) does not exist.
recent dosfsck(1) whinges about this, but older ones
do not. maybe Windross is also doing a size check
and not liking what it finds?
both theories presume Windross doesn't like the (minor)
inconsistency and deliberately(?) zeros the cached free
space. this makes it seem like theory 2 is plausible,
since zeroing the free space count would prevent any
additional clusters from being used, and hence not run
the risk of trying to use any non-existent cluster(s)
(presuming they aren't already used).
unfortunately, I'm not an Admin on the Windross machine.
so I cannot, e.g., run CHKDSK (sp?) to see what it says.
ideas?
one fix should be to restore the original FAT16, which
I've archived someplace (gotta find it first! ;-( ),
or to reformat manually as FAT16 (on Linux). another
fix may be to reformat(/resize?) the FAT32 correctly.
but in any case, I want to understand what is going on!
cheers!
-blf-
--
Experienced (20+ yrs) kernel/software Eng: | Brian Foster Montpellier,
• Unix, embedded, &tc; • Linux; • doc; | blf at utvinternet.ie FRANCE
• IDL, automated testing, process, &tc. | Stop E$$o (ExxonMobile)!
Résumé (CV) http://www.blf.utvinternet.ie | http://www.stopesso.com
More information about the ILUG
mailing list