I know this has been asked before, but I haven't found a conclusive and working answer.
I have several Linux guests (Debian x64) servers which are thin provisioned on ESXi 5.1.
Some of these guests have an ext3 filesystem, others ext4. But all journaled filesystems.
One particular guest has 25GB of data (400GB thin provisioned), but used 148GB on disk. I would like this guest to used around 25GB again.
I've used dd to fill the rest of the partitions with /dev/zero data and removed those zero-files again. After that I shut down the server and used vmkfstools -K foo.vmdk to punch holes in the .vmdk.
After this I expected the guest to have shrunk to about 25GB, but it's back to 148GB again...
A similar procedure works with my Windows guests (using sdelete), but not on Linux. There isn't much info available, but most resources hint on something to do this journaling filesystems.
However, I don't quite understand what the trouble is with journaling filesystems. Can anyone explain it to me?