Как запустить sudo poweroff в Java

Я разработчик JSP. Мне нужно выключать мой медленный, неотзывчивый, медлительный, (вы понимаете), "сервер" разработки Ubuntu иногда, когда его клавиатура перестает реагировать на ввод. У меня уже правильно настроен tomcat, и даже когда моя клавиатура перестает отвечать, я могу использовать ее в качестве сервера (для доступа к веб-страницам, обслуживаемым tomcat). Моя идея состоит в том, чтобы сделать страницу JSP, которая вызывает sudo poweroff, Но я понятия не имею, как это сделать. я пытался

Runtime.getRuntime.exec("sudo poweroff");

но это не работает для меня. Я уже отредактировал файл sudoers, чтобы пользователь tomcat мог выполнить это действие без пароля. Как я могу сделать это?

1 ответ

Если у пользователя, запускающего tomcat, есть sudo perms (без пароля), это должно быть выполнимо, но вызов должен быть примерно таким:

Runtime.getRuntime().exec(new String[]{"sudo", "poweroff"});

Команду и параметры нельзя передать одной большой строкой.

Проверьте документы для получения дополнительной информации: https://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html

PS: Это, вероятно, плохая идея.:)

Другие вопросы по тегам