Запуск команды sudo из сервлета Tomcat

Есть ли способ, чтобы сервер tomcat 7 (работающий на сервере Ubuntu) выполнял команду sudo в командной строке? В этом конкретном случае я хочу, чтобы можно было отключить систему с другого сервера. Какой код я должен использовать? И мне нужно запустить сервер tomcat как root или я могу получить эти привилегии во время выполнения и только для этого действия? Спасибо за вашу помощь:)

Не нужно запускать Tomcat как root, вы можете просто добавить пользователя tomcat в /etc/sudoers чтобы он мог запускать команды суперпользователя, например, sudo shutdown now . Этот способ позволяет указать желаемое подмножество команд, которые могут быть выполнены пользователем. Например, чтобы позволить ему запустить только shutdown :

 tomcat ALL=NOPASSWD: /sbin/shutdown 

Для запуска команд оболочки из кода Java вы можете вызвать один из Runtime.exec() или использовать ProcessBuilder .

PS Также попробуйте googling о файле /etc/shutdown.allow который позволяет запускать команду shutdown любым пользователем, который указан в ней. Но я никогда не использовал его.