【问题标题】:chmod 755 permissions for created fileschmod 755 创建文件的权限
【发布时间】:2019-01-19 07:40:37
【问题描述】:

我正在运行 Ubuntu Server 18.04.01,在 Linux 权限设置方面我有点菜鸟。

我有一个应用程序 A 正在创建文件并将它们转储到一个目录中,而应用程序 B 然后正在获取这些文件、处理它们并将它们移动到其他地方。

我遇到的问题是应用程序 B 报告它无法访问应用程序 A 创建的文件。我可以通过手动 SSH 连接到服务器并运行来解决这个问题:

sudo chmod 775 -R ./Directory

但这很乏味,更重要的是,需要人工输入。我的服务器的全部目的是自动化一些家庭安全任务,因此手动干预是不可行的。

请有人告诉我如何确保应用程序 A 创建的所有文件都对应用程序 B 具有 rwx 权限?

谢谢

【问题讨论】:

  • Stack Overflow 是一个编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参阅帮助中心的What topics can I ask about here。也许Super UserUnix & Linux Stack Exchange 会是一个更好的提问地点。
  • 啊,是的,好点子。我已经习惯于将堆栈溢出用于与开发相关的东西,以至于我没有想到我的问题更多地面向 linux 堆栈交换。公平点。

标签: linux ubuntu permissions chmod


【解决方案1】:

根据应用程序 A 的类型(它是脚本还是二进制文件?),您可以添加以使其在创建后更改权限。

如果应用程序是二进制文件,您可以将其“封装”到一个脚本中,该脚本在运行之前和运行期间更改umask,或者在应用程序停止运行后更改权限(例如作为脚本的最终任务)。

如果可行,另一种方法是以与应用 B 相同的用户运行应用 A。

【讨论】:

  • 谢谢,该应用程序是二进制的,但我有源代码,所以我可以看到如何让它更改权限 - 我宁愿希望有一些无需重新构建的巧妙方法,哦好吧:)谢谢你的回答顺便说一句,不知道为什么有人反对你,我认为这很有帮助。
  • 默认情况下,应用程序将使用 umask 设置来设置权限。如果您将应用程序包含在 umask 设置为 0002 的 2 行或 3 行小脚本中,则不需要重新编译,因为应用程序将使用权限 775 进行存储。一旦脚本结束或任何其他脚本并行运行将继续使用系统的umask。所以,它不会干扰。
猜你喜欢
  • 2013-11-02
  • 2017-04-08
  • 1970-01-01
  • 2017-02-12
  • 1970-01-01
  • 2016-01-20
  • 2012-11-24
  • 2014-09-22
  • 2014-03-04
相关资源
最近更新 更多