0

我刚刚在 Ubuntu 13.04 中安装了 Tomcat 7,但我在启动服务器时遇到了问题。

我已经通过以下命令安装了 Tomcat 7:

tar -xzpf ./apache-tomcat-7.0.26.tar.gz -C /chemin_vers_dossier_d_installation/

并启动服务器:

 /opt/apache-tomcat-7.0.39/bin/catalina.sh run

但我有这个错误信息:

run
Using CATALINA_BASE:   /opt/apache-tomcat-7.0.39
Using CATALINA_HOME:   /opt/apache-tomcat-7.0.39
Using CATALINA_TMPDIR: /opt/apache-tomcat-7.0.39/temp
Using JRE_HOME:        /home/fakarovic/jdk1.6.0_45/
Using CLASSPATH:       /opt/apache-tomcat-7.0.39/bin/bootstrap.jar:/opt/apache-tomcat-7.0.39/bin/tomcat-juli.jar
May 10, 2013 9:19:32 AM org.apache.catalina.startup.Catalina load
WARNING: Unable to load server configuration from [/opt/apache-tomcat-7.0.39/conf/server.xml]
May 10, 2013 9:19:32 AM org.apache.catalina.startup.Catalina load
WARNING: Permissions incorrect, read permission is not allowed on the file.
May 10, 2013 9:19:32 AM org.apache.catalina.startup.Catalina load
WARNING: Unable to load server configuration from [/opt/apache-tomcat-7.0.39/conf/server.xml]
May 10, 2013 9:19:32 AM org.apache.catalina.startup.Catalina load
WARNING: Permissions incorrect, read permission is not allowed on the file.
May 10, 2013 9:19:32 AM org.apache.catalina.startup.Catalina start
SEVERE: Cannot start server. Server instance is not configured.

注意:我已经定义了 JAVA_HOME 变量。

4

4 回答 4

1

Tomcat在文件系统层面加强了安全要求,这就是为什么如果你从早期版本升级,你会遇到这个问题。

来自:https ://tomcat.apache.org/tomcat-7.0-doc/security-howto.html

文件权限也应该受到适当的限制。以 ASF 上的 Tomcat 实例为例(其中禁用了自动部署,Web 应用程序部署为展开的目录),标准配置是让所有 Tomcat 文件由具有组 Tomcat 的 root 拥有,而所有者具有读/写权限,组只有读取,世界没有权限。

意味着您必须限制其他人对 tomcat 目录的访问权限。特别是 $TOMCAT_HOME/conf。这就是您收到错误的原因,因为 Tomcat 启动所需的最低访问权限更多。

长话短说,只允许运行该进程的用户访问 Tomcat 目录。

Tomcat 用户而非 root 拥有的日志、临时和工作目录除外。

于 2017-01-27T11:44:28.663 回答
0

它是与linux中的文件权限有关的问题。检查你的tomcat安装目录的文件权限,修改一下就可以了。

因为看到这行日志

May 10, 2013 9:19:32 AM org.apache.catalina.startup.Catalina load
WARNING: Permissions incorrect, read permission is not allowed on the file.

异常本身就是在喊我有文件权限问题。

于 2013-05-10T08:40:13.940 回答
0

对于 Windows 用户,请按照以下步骤操作

  • 右键单击Tomcat目录并选择属性
  • 在 下Security tab,确保为用户权限分配了完全控制权
  • 单击高级按钮。
  • Advanced Security Settings弹出窗口中,单击添加按钮并添加用户selecting the principal
于 2020-01-03T09:45:06.957 回答
0

一个选项如下:

sudo chgrp -R <user> <directory_server.xml>

例如 :

sudo chgrp -R tomcat /opt/apache-tomcat-7.0.39

在哪里 :

  • chgrp -R是许可证的分配
  • tomcat是用户
  • /opt/tomcat是它所在的目录server.xml
于 2018-06-12T07:27:11.757 回答