catalina.out中有很多(Permission denied)

问题描述 投票:10回答:3

如何安装Apache Web服务器和Apache tomcat以避免出现如下错误: java.io.FileNotFoundException: /usr/local/apache-tomcat-7.0.5/work/Catalina/localhost/_/SESSIONS.ser (Permission denied) 在/usr/local/apache-tomcat-7.0.5/logs/catalina.out中 我想我应该为Apache用户做一些事情,因为当我在tomcat文件夹上的chmod 777 -R ./时,所有错误都会消失。

linux apache permission-denied tomcat
3个回答
2
投票

不能担保这样做的安全性,但是

$ cd /usr/local/tomcat/ #or /usr/shared/tomcat6, whatever your $TOMCAT_BASE dir
$ chown -R tomcat6 webapps temp logs work conf
$ chmod -R 777 webapps temp logs work conf

works a treat针对这些情况。

我的tomcat安装被许可错误所困扰,但是打开大门因此修复了一切。


21
投票
$ chmod -R 777 webapps temp logs work conf

非常危险,不要这样做,我写“不做”吗?不要做!猜猜你的tomcat-users.xml在哪里用你的用户名和纯文本密码?

在UNIX上的任何地方给予世界读写执行,除了/ tmp(甚至那时,在生产中,从来没有这样做)是非常愚蠢的。并且,它使你的第一行,chown -R tomcat6完全没用。

确保tomcat以tomcat7运行(对于tomcat 6来说是tomcat6)并简单地执行:

$ cd $TOMCAT_BASE
$ chown -R tomcat7:tomcat7 webapps temp logs work conf
$ chmod -R 660 webapps temp logs work conf

[编辑]在评论后将770更改为660,因为有问题的文件无需执行。

如果您希望能够在那里读取,写入或执行某些内容,请将自己添加到tomcat7组。


0
投票

使用较旧的Tomcat-6实现进入类似的情况......

...
SEVERE: Error deploying web application directory host-manager
java.io.FileNotFoundException: /opt/tomcat-6/conf/Catalina/localhost/host-manager.xml (Permission denied)
...

并且,webapp XML都在那里,所有权和权限都是“tomcat:tomcat”和“644”。

对我来说,解决方案是将总体权限设置为Tomcat喜欢的权限,即“0755”。

并且,作为注意安全性的注释,该实现的server.xml使用JDBC Realm进行身份验证,因此我们甚至不使用tomcat-users.xml。因此,它是安装附带的默认文件,甚至注释掉其中的默认用户帐户(例如“tomcat”和“manager”)。我知道在Tomcat-7中,默认情况下会注释tomcat-users.xml中的帐户。

HTH。

© www.soinside.com 2019 - 2024. All rights reserved.