0

我有一个由oracle具有权限的用户创建的文件,rw-r--r--并且父文件夹具有rwxrwsr-x权限。现在,批处理用户需要编辑此文件。但是,如您所见,该文件只能由所有者(即 Oracle 用户)编辑。

我尝试使用chmod命令更改文件的权限,但批处理用户没有执行此命令的权限。

这个问题有什么解决办法吗?

我们可以在 UNIX 中进行一些配置,以便允许批量用户编辑用户创建的文件oracle

编辑:更正了父文件夹权限。之前我提到它为rwxrw-r-x

4

3 回答 3

2

'group' ( rw-) 的目录权限是不寻常的(rwx或者r-x会更常见)。

您不知道文件属于哪个组,也不知道目录属于哪个组,也不知道批处理用户属于哪个组,但这可能无关紧要

引用目录的权限更改后更新: 假设该组可以读取文件,并在目录中创建文件,那么如果您的批处理用户属于拥有该目录的组,则批处理用户可以复制该文件(在编辑器),删除原始文件,并在目录中写回一个新文件。

您的系统是否支持 ACL(访问控制列表)?如果是这样,那么作为文件所有者的“oracle”用户可以授予批处理用户对该文件的读/写访问权限,即使正常的 Unix 权限没有显示它可能发生。

您能否说服“oracle”用户创建属于适当组(批处理用户也属于该组)并具有适当组权限的文件。

如果那里没有任何效果,那么您将被简化为某种形式或形式的 SUID 程序——可能是 SUID 'oracle' 或 SUID 'root'。评论中提到了一个选项 -sudo带有一些模糊适当参数的命令。

于 2011-10-11T06:45:16.593 回答
0

如果您的批处理用户与 oracle 用户在同一组中,您可以这样做:

chmod g+w filename

这应该使文件对组可写。

运行 UNIX 命令groups以确定用户所在的组,或检查/etc/passwd/etc/group

于 2011-10-11T07:12:18.880 回答
0

我注意到您在目录上设置了 +s 位.....如果您将目录所有者更改为批处理用户的所有者,则任何新创建文件的所有者都应归该用户所有,然后您可以做您想做的事跟他们

于 2011-10-11T07:30:16.287 回答