tomcat startup script permission on mac os x
我正在努力使用最近开始用于开发的macOS x 10.5.8。我成功安装了tomcat并为我的环境变量创建了launchd.conf。我相信它可以正常工作。因为我可以使用netbeans构建项目 成功使用maven和cargo插件,因此我在线找到了启动和停止tomcat的脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| #!/bin/bash
case $1 in
start)
sh /Library/apache-tomcat-6.0.20/bin/startup.sh
;;
stop)
sh /Library/apache-tomcat-6.0.20/bin/shutdown.sh
;;
restart)
sh /Library/apache-tomcat-6.0.20/bin/shutdown.sh
sh /Library/apache-tomcat-6.0.20/bin/startup.sh
;;
*)
echo"Usage :start|stop|restart"
;;
esac
exit 0 |
该脚本是在sudo sh中用nano创建的
但是当我想运行它。 吐这个
sh: /usr/bin/tomcat: Permission denied
我在/Library/apache-tomcat-6.0.20/bin中添加了chmod 755 * .sh和* .bat
仍然拒绝访问,所以该怎么办?我在计算机上拥有管理员权限
谢谢阅读
转到tomcat bin目录并运行以下命令:
chmod + x * .sh
这对我有用。
-
在macOS 10.12.6上成功使用Apache Tomcat 8.5.16
您将tomcat脚本安装在哪里?我建议您将其安装到/usr/bin。安装后,请确保权限正确(即chmod 755 /usr/bin/tomcat)。然后可以使用ls -l /usr/bin/tomcat进行确认。
如果/usr/bin/tomcat上的权限正确后仍然出现错误,则可以在#!/bin/bash行之后添加以下两行。
在上面的几行中,bash将输出其他信息,这些信息将使您能够知道正在执行的内容以及发生错误的位置。
-
好的,非常感谢您的tips.it确实启动和停止了服务器,但是当我执行tomcat stop时,它抛出了异常,但是尽管如此,它仍在停止服??务器
-
这是我在/etc/launchd.conf中的环境变量setenv JAVA_VERSION 1.6 setenv JAVA_HOME /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/H ome / lib / setenv JRE_HOME / System / Library / Frameworks / JavaVM。 framework / Versions / 1.6.0 / H ome / setenv CATALINA_BASE /Library/apache-tomcat-6.0.20 setenv CATALINA_HOME /Library/apache-tomcat-6.0.20 setenv CATALINA_TMPDIR /Library/apache-tomcat-6.0.20/temp
-
这是错误EVERE:Catalina.stop:java.net.ConnectException:java.net的java.net.PlainSocketImpl.socketConnect(本机方法)的连接被拒绝java.net的java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) .PlainSocketImpl.connectToAddress(PlainSocketImpl.ja va:195)at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:432)at java.net.Socket.connect (Socket.java:525)在java.net.Socket.connect(Socket.java:475)在java.net.Socket。(Socket.java:372)在java.net.Socket。( Socket.java:186)
-
在org.apache.catalina.startup.Catalina.stopServer(Catalina.jav a:422)在java.net.Socket。(Socket.java:186)在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)位于sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe thodAccessorImpl.jav a:25)处的sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce ssorImpl.java:39)位于java.lang.reflect.Method.invoke(Method.java:597)处org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:41 5)上的org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.j ava:337)
-
使用CATALINA_BASE:/Library/apache-tomcat-6.0.20使用CATALINA_HOME:/Library/apache-tomcat-6.0.20使用CATALINA_TMPDIR:/Library/apache-tomcat-6.0.20/temp使用JRE_HOME:/ System / Library / Frameworks /JavaVM.framework/Versions/1.6.0/H ome / touch:/Library/apache-tomcat-6.0.20/logs/catalina.out:权限被拒绝/Library/apache-tomcat-6.0.20/bin/catalina。 sh:第310行:/Library/apache-tomcat-6.0.20/logs/catalina.out:权限被拒绝
-
解决这个问题。但是似乎netbeans或eclispe都无法发布它。在netbeans上我有以下内容:java.io.FileNotFoundException:/Library/apache-tomcat-6.0.20/work/Catalina/localhost/host-m anager / SESSIONS.ser(权限被拒绝)有什么想法吗?
1)转到tomcat目录,该目录最好为" / usr / local / folder-name"
2)检查文件夹的权限:ls -l
3)使用以下命令更改权限:sudo chmod -R 755文件夹名称
4)将所有者更改为当前所有者:sudo chown -R owner-name:group-name folder-name
例如sudo chown -R userName:admin文件夹名称
尝试再次执行脚本,它应该可以工作。