The "3" script in $FILESDIR has the following lines: echo 'Waiting for getties to stop...' sv shutdown -w 10 /var/service/getty-* echo 'Waiting for services to stop...' sv shutdown -w 300 /var/service/* Those won't work -- the -w argument has to come *first*. It throws a syntax error otherwise (which I'll admit is hard to catch given the circumstances), and then the system goes down uncleanly. Apart from that, these should probably be force-shutdown instead: if any console is logged in it'll just wait around for 310 seconds and eventually do nothing. Both sysvinit and s-s-d have somewhat more assertive behaviour there.
This is fixed in 2.1.2.