I wanted to test ntfsfix /dev/sda1 to see what would happen. This was a very bad idea. Windows vista refuses to boot since then. It goes up to the first windows splash screen with the moving horizontal pattern, and nothing more.
What can I do to correct this miserable action?
linux version is kubuntu, kernel 2.6.22-14 and linux-ntfs is 1.13.1-6
Thanks in advance
linux-ntfs 1.13.1 is not compatible with Vista as you found out... You need at least linux-ntfs 2.0.0 for Vista support.
The easiest way to fix your volume is to allowing windows 2000 or XP to mount it. That will reset the correct flags and Vista will be able to mount it.
Alternatively you need to write a tool (or modify ntfsfix.c) to clear
the VOLUME_MOUNTED_ON_NT4 bit in the volume flags - where we set the VOLUME_IS_DIRTY flag would be the place to edit ntfsfix.c just add something like thus:
flags &= ~ VOLUME_MOUNTED_ON_NT4;
after the line:
flags = vol->flags | VOLUME_IS_DIRTY;
Compile and run and with some luck it should fix your volume.