Как наиболее корректно перезапустить Linux из своей программы?
а может запускать стандартную команду ?reboot
Вы можете послать сигнал init и система автоматически перезагрузится. Однако стандартными средствами (shutdown, reboot) это проще сделать.