If you are running a Slackware distribution, I see three possibilities:
- rc.K is a terrible script, disks are never synced, etc.
- the version of init you are using has some nasty bug(s)
- libc functions used by init have bug(s)
The two last points are not Slackware specific, obviously. Don't
know more than this, sorry. After I had repaired my system, I've
had neither time nor inclination to investigate it any further,
but I took a look at sysvinit-2.60, which comes with the debian
rc scripts, and it looks much better, than what Slackware has to
offer, not quite as good as Solaris or DEC/OSF stuff, though. It
also claims to fix a race resulting in the hanging shutdowns,
which a lot of people, including myself have experienced. I am
planning to move to it, when I have time to afford the transition.
Alex Krimkevich