java - java程序中的权限被拒绝问题

标签 java unix permissions

我有一个unix系统用户teamcity,它在unix目录中解压tar。

tar 包含一个 jar 文件和其他包含配置文件的目录。它还具有一个日志目录和一个文件 /log/abc.log

由于 teamcity 正在运行 tar 命令,因此生成的提取中的所有文件和目录都将 teamcity 作为所有者和组。

我有另一个系统用户运行 jar 文件,即: 诽谤者

当我作为 abcuser 运行 jar 文件时,并且当程序尝试访问 /log/abc.log 文件时,出现以下异常:

Nested:java.io.FileNotFoundException: log/abc.log (Permission denied)

这个问题有什么解决办法吗?我无法将任何用户 teamcityabcuser 设置为管理员。

最佳答案

这里有几个选项。

1。允许所有本地用户读取/log/abc.log

sudo chmod o+r /log/abc.log 

2。将 teamcity 和 abcuser 放在一个公共(public)组中。

sudo groupadd loggingGroup
sudo usermod -g loggingGroup abcuser
sudo usermod -g loggingGroup teamcity

仅允许组成员访问/log/abc.log

sudo chmod g+r /log/abc.log

关于java - java程序中的权限被拒绝问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43673278/

相关文章:

java - 使用gradle构建Android应用程序时如何删除特定权限?

asp.net - PostgreSQL 错误 42501 : Permission Denied for Schema

c - 为什么这不是 qmail 中的错误?

c - 如何在 C 中构建静态功能测试?

c - 使用 '__progname' 而不是 argv[0]

c++ - 使用gcc编译文件时出错,由权限拒绝引起

java - 服务在应用程序关闭时停止,而以前没有

jvm - java语法问题

java - 自定义应用程序类在 Nougat 中随机不被覆盖

java - 从html源代码中过滤pdf链接