要はPOSIXで制定されている以上の事を求めるプログラマ多すぎ、というのが結論。 Ext3の挙動が標準であると思い込んでアプリケーション書いていたら、その挙動はExt3固有で POSIXにはそんなこと書いてなかった。 それで、Ext4じゃその挙動が変わっちゃったという話みたい。 Ted Tsoがバグレポートの中 [launchpad.net]で書いていることを引用すると、 1.a) open and read file ~/.kde/foo/bar/baz 1.b) fd = open("~/.kde/foo/bar/baz", O_WRONLY|O_TRUNC|O_CREAT) --- this truncates the file 1.c) write(fd, buf-of-new-contents-of-file, size-of-new-contents-of-file) 1.d)