Part of the problem can (and should?) be solved by a new option to
rm(1):
--truncate Truncates the file to length 0 before removing.
This solves some problems when a file has been
hard-linked by another (malicious?) user and quotas
are enabled. Works not only under Linux, but AIX, OSF/1,
HP/UX, ...
See the respective man pages of truncate and ftruncate.
BUGS:
Sorry, it isn't part of POSIX (AFAIK), but AES (maybe XPG4?).
</suggestion>
-Harald