Как запустить 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: Это, вероятно, плохая идея.:)