Experts: how to force windows to flush FAT (file alloc. table) cac

X

xuancong

Hi,
This post is for computer experts only!

I've installed Ubuntu under VMware inside windows XP "using entire physical
harddisk", so I can run Ubuntu both inside and outside (upon reboot) WinXP.
And I can always access windows partitions inside Ubuntu.
So the problem now is that when I'm running Ubuntu in VMware in WinXP,
everytime when I made some changes on a windows partition (say creating a
file) in Ubuntu, the change is not reflected in XP because XP store FAT (file
allocation table) data in system cache but does not reload it upon file
operations. Therefore, if I create some files in Ubuntu and delete some files
in XP on the same partition or the other way round, the filesystem will
always be corrupted. Because to windows the FAT structure changes silently
when I create files in Ubuntu, but windows still assume the old FAT and
modify based on that.

I know that "chkdsk /f" can force windows to unmount and remount non-system
partitions, thus flushing the FAT cache for that partition, but is there a
more direct and better way to do this on any partition (including system
partition).

I also know that there is a windows command 'mountvol' which is supposed to
do the thing, but unfortunately, it doesn't work.

And I also hope that future windows OS programmers can take this issue into
consideration and create some new features which can solve this problem.

Thanks a lot!
Xuancong
 
S

sgopus

Don't hold your breath waiting for new changes to xp, With the advent of
Vista and Windows 7, XP will be left behind
 
U

Uwe Sieber

Dismounting is the only way, this is what happens on
chkdsk /f.
MountVol is for dealing with mount points, it has no
relation to mouning/dismounting the file system.

Dismouning invalidates (but not closes) open handles
pointing to files on the dismounted drive.

As quick alternative to chkdsk you can use my tool
EjectMedia for dismouting.
http://www.uwe-sieber.de/drivetools_e.html#ejectmedia

ejectmedia x: -d -f


Uwe
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top