Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中运行sudo poweroff_Java_Jsp_Sudo_Runtime.exec_Power Off - Fatal编程技术网

如何在java中运行sudo poweroff

如何在java中运行sudo poweroff,java,jsp,sudo,runtime.exec,power-off,Java,Jsp,Sudo,Runtime.exec,Power Off,我是一名jsp开发人员。有时,当键盘停止响应输入时,我需要关闭缓慢、无响应、滞后的ubuntu“服务器”。我已经正确配置了tomcat,即使我的键盘停止响应,我也可以将其用作服务器(访问tomcat提供的网页)。我的想法是制作一个jsp页面,调用sudopoweroff。但我不知道该怎么做。我试过了 Runtime.getRuntime.exec("sudo poweroff"); 但这对我不起作用。我已经编辑了sudoers文件,允许tomcat用户在不需要密码的情况下执行此操作。我怎样才能

我是一名jsp开发人员。有时,当键盘停止响应输入时,我需要关闭缓慢、无响应、滞后的ubuntu“服务器”。我已经正确配置了tomcat,即使我的键盘停止响应,我也可以将其用作服务器(访问tomcat提供的网页)。我的想法是制作一个jsp页面,调用
sudopoweroff
。但我不知道该怎么做。我试过了

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

但这对我不起作用。我已经编辑了sudoers文件,允许tomcat用户在不需要密码的情况下执行此操作。我怎样才能做到这一点呢?

如果运行tomcat的用户有sudo perms(没有密码),这应该是可行的,但是调用应该是这样的:

Runtime.getRuntime().exec(新字符串[]{“sudo”,“poweroff”})

命令和参数不能全部在一个大字符串中传递

有关更多信息,请查看文档:


附:这可能是个坏主意

如果运行tomcat的用户有sudo perms(没有密码),那么它应该是可行的-但是调用应该是这样的:

Runtime.getRuntime().exec(新字符串[]{“sudo”,“poweroff”})

命令和参数不能全部在一个大字符串中传递

有关更多信息,请查看文档:


附:这可能是个坏主意

这可能对运行时有帮助。exec():。如果你需要sudo,你可以编写一个C程序,它的setuid root调用poweroff,但你不能这样做。这是不可能的,这是一个糟糕的想法,但您现在想要
sudo/sbin/shutdown-h
。安装openssh服务器并使用远程ssh关闭它可能是一个更好的主意。@ElliottFrisch这只是我的开发服务器。它显然不会用于生产。但是我可以做
sudo/shin/poweroff
?只是想…试试看,自己看看。如果答案不是肯定的,请继续尝试。这可能对运行时有帮助。exec():。如果你需要sudo,你可以编写一个C程序,它的setuid root调用poweroff,但你不能这样做。这是不可能的,这是一个糟糕的想法,但您现在想要
sudo/sbin/shutdown-h
。安装openssh服务器并使用远程ssh关闭它可能是一个更好的主意。@ElliottFrisch这只是我的开发服务器。它显然不会用于生产。但是我可以做
sudo/shin/poweroff
?只是想…试试看,自己看看。如果答案不是肯定的,那么继续尝试。java文档也有,所以你的答案是不正确的,至少根据你给出的理由,你试过了吗?你提到的方法是针对一个没有参数的命令。java文档也有,所以你的答案是不正确的,至少根据你给出的理由,你试过了吗?您引用的方法适用于不带参数的命令。