【问题标题】:chown -R vs chmod 777 -Rf, tomcat catalina.sh permission deniedchown -R vs chmod 777 -Rf,tomcat catalina.sh 权限被拒绝
【发布时间】:2021-04-29 14:31:34
【问题描述】:

我正在通过 Kubernetes 运行 tomcat。在我的 DockerFile 中,我定义了这个:

...
RUN chown -R myuser:myuser /tomcat
USER myuser:myuser
...

但是,这给了我

/bin/sh: /tomcat/bin/catalina.sh: Permission denied

我已添加此行以使其正常工作:

RUN chmod 777 -Rf /tomcat

我不明白为什么我需要做chmod。我对chown 的理解是将所有权授予用户(myuser)(https://linuxize.com/post/linux-chown-command/)。

我需要读/写和执行 /tomcat 中的文件。由于安全原因,我发现777 不是好的做法。为什么我需要chmod?修复它的最佳方法是什么?

【问题讨论】:

    标签: tomcat


    【解决方案1】:

    看起来是该文件不可执行,导致权限被拒绝错误。即使 root 尝试使用这些权限执行文件也会发生这种情况。

    您只需要chmod u+x /tomcat/bin/catalina.sh 就可以了。

    您不希望整个/tomcat 都可写。由于无论如何都不知道哪些文件应该具有哪些权限,因此您需要重新安装 tomcat 或查看另一个系统上的安装并设置权限以镜像这些文件。首先,您可以运行 chmod 755 /tomcat/bin/catalina.sh 并从那里开始。

    【讨论】:

      猜你喜欢
      • 2014-01-27
      • 2019-01-13
      • 2016-06-25
      • 2015-04-23
      • 1970-01-01
      • 2017-02-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多