猿问

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

我目前正在从 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,所以我想要一次性解决方案。

感谢您的帮助。


梵蒂冈之花
浏览 172回答 1
1回答

慕虎7371278

尝试用umask 007而不是 027 启动 tomcat。有关更多信息,请参阅https://en.wikipedia.org/wiki/Umaskumask。在这里找到提示:https ://grokbase.com/t/tomcat/users/035wyqr5rd/file-permissions-in-war-files您有多个选项可以为用户设置 umask:How to set umask for a system-user?
随时随地看视频慕课网APP

相关分类

Java
我要回答