我目前正在从Jdk7/Tomcat7迁移到Debian 8.5上的JDK8/Tomcat8.5.42。在安装我的应用程序的新版本时,我使用了一个bash脚本,该脚本使用tomcat用户进行安装,该脚本停止tomcat,删除旧的app.war及其已分解的app文件夹。在Tomcat7中,我在这些操作过程中没有任何权限问题,但在新版本中,当删除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访问,所以我想一次性解决方案。
谢谢你的帮助。
发布于 2019-07-03 04:15:55
尝试使用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?
https://stackoverflow.com/questions/56856086
复制相似问题