java调用linux命令权限不够,该怎么处理
java调用linux命令权限不够
写了一段代码调用linux命令,java程序是jboss服务器程序。
代码如下:
执行之后process.waitfor()的返回值是1,也就是权限不够。
同样的命令:sudo mysql -h127.0.0.1 -uuser -ppassword -e "flush tables"直接通过terminal执行可以正常执行。
请问有办法解决么?
------解决思路----------------------
切换到root用户下试试
------解决思路----------------------
sudo 命令需要root权限的,切换root用户执行下
------解决思路----------------------
试试写到shell脚本中,然后执行脚本
------解决思路----------------------
用root用户跑这个程序,或者给跑这个程序的用户sudo权限试试
写了一段代码调用linux命令,java程序是jboss服务器程序。
代码如下:
process = Runtime.getRuntime.exec("sudo mysql -h127.0.0.1 -uuser -ppassword -e \"flush tables\"");
执行之后process.waitfor()的返回值是1,也就是权限不够。
同样的命令:sudo mysql -h127.0.0.1 -uuser -ppassword -e "flush tables"直接通过terminal执行可以正常执行。
请问有办法解决么?
------解决思路----------------------
切换到root用户下试试
------解决思路----------------------
sudo 命令需要root权限的,切换root用户执行下
------解决思路----------------------
试试写到shell脚本中,然后执行脚本
------解决思路----------------------
用root用户跑这个程序,或者给跑这个程序的用户sudo权限试试