通过java代码使用bash命令使linux目录可写

时间:2011-12-07 04:21:54

标签: java linux bash sh

我的linux服务器上有一个目录/ webroot。哪个权限集是771,这对其他人来说意味着1。但是我想通过java代码来实现它773:

Process p1 = Runtime.getRuntime().exec("chmod 773 /webroot");

但它不能改变许可。

我还捕获错误流,如:

chmod: changing permissions of `/webroot/': Operation not permitted 

昨天我看到一篇几乎相关的帖子,但我找不到合适的答案。这时候,我现在该怎么办?

请任何帮助。

1 个答案:

答案 0 :(得分:2)

我认为这里的错误很清楚。您的Java代码运行的用户是什么?它很可能没有权限在该目录上运行chmod

在该目录上执行ls -l以查看其所属者。确保您的Java代码在同一个用户上运行。