Как написать *.sh-скрипт(centos6) для плавного reboot?
Чем собственно не устраивает штатный reboot? Он  все равно посылает штатный сигнал о штатной остановке
Так то надо что то типа:
service nodejs stop && service mysqld stop && service apache2 stop && reboot
reboot
Все остальное будет выполнено само собой:) Почитайте про init и порядок старта/останова системы.