O nível de execução 2 não é reinicializado; na verdade, é o nível de execução normal. 6 é reinicializar. Além disso, você geralmente deseja usar telinit 6 not init 6 . É mais portável entre diferentes implementações unix.
O que você realmente quer é uma abstração real para apenas reiniciar a caixa. Sugiro usar reboot em vez de tentar entender runlevels.