Tomcat 8.5.42 在 webapp 中删除文件时权限被拒绝

Tomcat 8.5.42 permission denied when deleting files in webapp

我目前正在从 Jdk7/Tomcat7 迁移到 Debian 8.5 上的 JDK8/Tomcat8.5.42。安装我的应用程序的新版本时,我使用 bash 脚本,该脚本使用 tomcat 用户进行安装,该脚本停止 tomcat,删除旧的 app.war 及其展开 app 文件夹。使用 Tomcat 7 在这些操作期间我没有任何权限问题,但是在删除 app 文件夹时使用新版本我有 rm: cannot remove ... Permission denied 错误。

这是../webapps/

4.0K drwxrwxr-x  3 tomcat tomcat 4.0K Jul  2 16:48 .
4.0K drwxrwxr-x 12 tomcat tomcat 4.0K Jul  2 16:48 ..
4.0K drwxr-x---  7 tomcat tomcat 4.0K Jul  2 15:37 app

我不知道这是否重要,但启动脚本的用户属于 tomcat 组。另请注意,app 文件夹是由 Tomcat 创建的,因为它是 app.war.

的结果

如何配置 Tomcat 以授予属于 tomcat 组的所有用户正确的权限,以便他们可以删除 webapps 内容。另外我没有 root 访问权限,所以我想要一次性解决方案。

感谢您的帮助。

尝试使用 umask 007 而不是 027 开始 tomcat。

有关 umask 的进一步阅读,请参阅 https://en.wikipedia.org/wiki/Umask

在这里找到提示:https://grokbase.com/t/tomcat/users/035wyqr5rd/file-permissions-in-war-files

您有多个选项来为用户设置 umask:How to set umask for a system-user?