Reliable Vfat (or any reliable windows filesystem in linux) - Linux
This is a discussion on Reliable Vfat (or any reliable windows filesystem in linux) - Linux ; Hii
I am facing some strange problem relating to Vfat filesystem in
linux.I have one embedded device with journaling yaff2 partition as
root partition. We have a slot for SD memory disk which is formatted
as vfat filesystem.Because that has ...
-
Reliable Vfat (or any reliable windows filesystem in linux)
Hii
I am facing some strange problem relating to Vfat filesystem in
linux.I have one embedded device with journaling yaff2 partition as
root partition. We have a slot for SD memory disk which is formatted
as vfat filesystem.Because that has to be recognized in windows.Since
Vfat is not journalled , its not at all reliable. If I remove that SD
card in the middle of some copy process to SDcard, it just corrupt its
superblock and might cause considerable damage to superblock.
My aim is now to make superblock noncorrupt also I cant use any
journalling linux filesystem as it cant be recognized in windows.
How to make Vfat filesystem stable or fault tolerant? I tried to find
whether any journalled version of vfat available.I couldnt find any
Any suggestion please
-
Re: Reliable Vfat (or any reliable windows filesystem in linux)
"GürüPràçäd" writes:
> Hii
> I am facing some strange problem relating to Vfat filesystem in
> linux.I have one embedded device with journaling yaff2 partition as
> root partition. We have a slot for SD memory disk which is formatted
> as vfat filesystem.Because that has to be recognized in windows.Since
> Vfat is not journalled , its not at all reliable. If I remove that SD
> card in the middle of some copy process to SDcard, it just corrupt its
> superblock and might cause considerable damage to superblock.
>
> My aim is now to make superblock noncorrupt also I cant use any
> journalling linux filesystem as it cant be recognized in windows.
>
> How to make Vfat filesystem stable or fault tolerant?
You can't. The closest you can get is by mounting with the sync
option, but you probably don't want to do that with flash media.
There are Windows drivers supporting ext3 and other filesystems. If
you have control over the machines that need to read this SD card,
this may be an option.
--
Måns Rullgård
mans@mansr.com
-
Re: Reliable Vfat (or any reliable windows filesystem in linux)
Thanks for the information
But I wanna know whether I can add some kind of journaling
functionality to Vfat? As we already have vfat source code as part of
linux kernel package.
Log every operation on metadata(on superblock) . Whenever card is
taken out in the middle of some operation , and put back after some
time , recovery daemon should run to check the consistency and repair
it from logged operation.
Can it be possible?
-
Re: Reliable Vfat (or any reliable windows filesystem in linux)
GürüPràçäd wrote:
> If I remove that SD card in the middle of some copy process to SDcard, it
> just corrupt its> superblock
> Any suggestion please
Yeah, don't pull out the card in the middle of a copy process.
Does your embedded device have some sort of display, light or beeper
that could be used to tell the operator that it is safe to remove the
card?
I use vfat on memory sticks, and some devices here, and I have been
using vfat filesystems on many devices up and till a few years ago. I
have had no real problems with vfat, except as you have, when a device
is removed during filesystem access, but I am careful not to do this.
> My aim is now to make superblock noncorrupt also I cant use any
> journalling linux filesystem as it cant be recognized in windows.
The superblock is not usually a problem, this can usually be copied
onto a spare sector, and restored if corruption is found.
The problem with removing during disk access is that the partition
tables that follow the superblock get damaged.
You could format the devices as ext3 and install an ext3 driver on the
Microsoft Windows based machines.
I don't know how reliable this is. I would still prefer not to remove
the card during filesystem access, if this could be determined.
Regards,
Mark.
--
Mark Hobley,
393 Quinton Road West,
Quinton, BIRMINGHAM.
B32 1QE.
-
Re: Reliable Vfat (or any reliable windows filesystem in linux)
GürüPràçäd wrote:
> But I wanna know whether I can add some kind of journaling
> functionality to Vfat? As we already have vfat source code as part of
> linux kernel package.
You could do this, but this is not going to help you, if your card is
next plugged into the Microsoft Windows machine, unless you can also
write a compatibility mode driver for that platform.
This is not difficult on Windows '98 and below (as long as you know
MSDOS, assembly language and are ok with writing memory resident code
and interrupt handlers), because you can load your drivers prior to
starting the Microsoft Windows kernel. The operating system detects
that the driver is not flagged as "safe", and runs the device in
compatibility mode through the memory resident interrupt driver.
I don't know how Microsoft Windows XP handles compatability mode. I have
not tried this on XP, and there is a big lack of documentation on Microsoft
Windows internals. I certainly have never seen any technical reference
manual.
Regards,
Mark.
--
Mark Hobley,
393 Quinton Road West,
Quinton, BIRMINGHAM.
B32 1QE.