tomcat吧 关注:3,128贴子:9,255
  • 1回复贴,共1

求教:linux下tomcat启动问题

取消只看楼主收藏回复

就是启不起来,,连log都没有,不管是startup.sh还是catalina.sh run都是这副模样,windows上木有这个问题,tomcat文件夹已经给所有用户读写执行权限
drwxrwxrwx 2 mansonxzh 4096 11月 3 11:43 bin
drwxrwxrwx 2 mansonxzh 4096 11月 3 11:43 conf
drwxrwxrwx 2 mansonxzh 4096 11月 3 11:43 lib
-rwxrwxrwx 1 mansonxzh 57862 11月 3 11:43 LICENSE
drwxrwxrwx 2 mansonxzh 4096 11月 3 11:39 logs
-rwxrwxrwx 1 mansonxzh 1228 11月 3 11:43 NOTICE
-rwxrwxrwx 1 mansonxzh 9193 11月 3 11:43 RELEASE-NOTES
-rwxrwxrwx 1 mansonxzh 16682 11月 3 11:43 RUNNING.txt
drwxrwxrwx 2 mansonxzh 4096 11月 3 11:43 temp
drwxrwxrwx 7 mansonxzh 4096 11月 3 11:43 webapps
drwxrwxrwx 2 mansonxzh 4096 11月 3 11:39 work
========================================================
mansonxzh@mansonxzh-linux-mint-qiana:~/SW/apache-tomcat-7.0.57/bin > ./startup.sh
Using CATALINA_BASE: /home/mansonxzh/SW/apache-tomcat-7.0.57
Using CATALINA_HOME: /home/mansonxzh/SW/apache-tomcat-7.0.57
Using CATALINA_TMPDIR: /home/mansonxzh/SW/apache-tomcat-7.0.57/temp
Using JRE_HOME: /home/mansonxzh/SW/jdk1.8.0_25/:JRE_HOME=/home/mansonxzh/SW/jdk1.8.0_25/jre/:ANDROID_SDK_HOME=/home/mansonxzh/SW/adt-bundle-linux-x86_64-20140702/sdk/:NDK=/home/mansonxzh/SW/android-ndk-r10c/
Using CLASSPATH: /home/mansonxzh/SW/apache-tomcat-7.0.57/bin/bootstrap.jar:/home/mansonxzh/SW/apache-tomcat-7.0.57/bin/tomcat-juli.jar
Usage: catalina.sh ( commands ... )
commands:
debug Start Catalina in a debugger
debug -security Debug Catalina with a security manager
jpda start Start Catalina under JPDA debugger
run Start Catalina in the current window
run -security Start in the current window with security manager
start Start Catalina in a separate window
start -security Start in a separate window with security manager
stop Stop Catalina, waiting up to 5 seconds for the process to end
stop n Stop Catalina, waiting up to n seconds for the process to end
stop -force Stop Catalina, wait up to 5 seconds and then use kill -KILL if still running
stop n -force Stop Catalina, wait up to n seconds and then use kill -KILL if still running
configtest Run a basic syntax check on server.xml - check exit code for result
version What version of tomcat are you running?
Note: Waiting for the process to end and use of the -force option require that $CATALINA_PID is defined
========================================================
mansonxzh@mansonxzh-linux-mint-qiana:~/SW/apache-tomcat-7.0.57/bin > ./catalina.sh run
Using CATALINA_BASE: /home/mansonxzh/SW/apache-tomcat-7.0.57
Using CATALINA_HOME: /home/mansonxzh/SW/apache-tomcat-7.0.57
Using CATALINA_TMPDIR: /home/mansonxzh/SW/apache-tomcat-7.0.57/temp
Using JRE_HOME: /home/mansonxzh/SW/jdk1.8.0_25/:JRE_HOME=/home/mansonxzh/SW/jdk1.8.0_25/jre/:ANDROID_SDK_HOME=/home/mansonxzh/SW/adt-bundle-linux-x86_64-20140702/sdk/:NDK=/home/mansonxzh/SW/android-ndk-r10c/
Using CLASSPATH: /home/mansonxzh/SW/apache-tomcat-7.0.57/bin/bootstrap.jar:/home/mansonxzh/SW/apache-tomcat-7.0.57/bin/tomcat-juli.jar
Usage: catalina.sh ( commands ... )
commands:
debug Start Catalina in a debugger
debug -security Debug Catalina with a security manager
jpda start Start Catalina under JPDA debugger
run Start Catalina in the current window
run -security Start in the current window with security manager
start Start Catalina in a separate window
start -security Start in a separate window with security manager
stop Stop Catalina, waiting up to 5 seconds for the process to end
stop n Stop Catalina, waiting up to n seconds for the process to end
stop -force Stop Catalina, wait up to 5 seconds and then use kill -KILL if still running
stop n -force Stop Catalina, wait up to n seconds and then use kill -KILL if still running
configtest Run a basic syntax check on server.xml - check exit code for result
version What version of tomcat are you running?
Note: Waiting for the process to end and use of the -force option require that $CATALINA_PID is defined


IP属地:湖北1楼2014-11-18 21:54回复
    问题已解决,有始有终,贴上解决方案:
    因为以前从来没有在linux下开启过tomcat,一直是用办公室的台式机或者家用旧笔记本局域网开tomcat测试用,所以不知道linux下的tomcat需要在root权限下运行,即使给目录下文件赋予可执行权限也不行,所以采取了这个方法(个人不喜欢动不动就提升root权限,能不用root权限就尽量不用)接下来真题。。。。。。
    楼主机器是linux-mint-17,kde桌面,jdk在home目录下的SW文件夹里面(不喜欢那种把jdk放opt或者usr目录的做法,我爱放哪放哪,系统如果非要强迫我放哪,我也有强迫症,宁愿不用,扯点闲话~~~)
    其实tomcat-windows压缩包也可以在linux下面使用,我是64位的,就下载了一个apache-tomcat-8.0.15-windows-x64.zip,解压后,在bin目录下有一个commons-daemon-native.tar.gz,继续解压到当前目录,就是一个commons-daemon-1.0.15-native-src的文件夹,这个文件夹里面有个unix文件夹,打开,在这个目录下进入终端,输入.configure,接下来也许会提示你找不到jni-md什么文件,或者提示你加入java环境变量,这个时候终端export JAVA_HOME和JRE_HOME就行了,然后接着./configure,划过一大片代码之后会提示里可以make,这个时候终端输入make,就可以发现unix目录下面多了一个jsvc的文件,把这个文件拷贝到bin目录下面,接下来就开始修改bin目录下面的daemon.sh了,无文本格式编辑器打开daemon.sh,大约在89行的样子,你会看到这样一串代码:
    # Use the maximum available, or set MAX_FD != -1 to use that
    test ".$MAX_FD" = . && MAX_FD="maximum"
    # Setup parameters for running the jsvc
    #
    test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat
    # Set JAVA_HOME to working JDK or JRE
    # JAVA_HOME=/opt/jdk/
    # If not set we*ll try to guess the JAVA_HOME
    # from java binary if on the PATH
    #
    把test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat改成
    test ".$TOMCAT_USER" = . && TOMCAT_USER=mansonxzh (mansonxzh是我的linux登录名,表示以后我用mansonxzh这个用户可以启动tomcat,不需要root就可以启动,你想用那个用户启动就写哪个用户名)
    然后# JAVA_HOME=/opt/jdk/改成
    JAVA_HOME=/home/mansonxzh/SW/jdk1.8.0_25/ (这里指向我自己jdk的目录,你jdk放哪就写哪个目录,记得把前面的#去掉,不然这一句不生效)
    修改完之后保存,进入bin目录,然后就可以使用./daemon.sh start开启tomcat ./daemon.sh stop关闭tomcat了,如果这个命令不能执行,请chmod +x deamon.sh赋予可执行权限即可。


    IP属地:湖北2楼2014-11-19 02:32
    收起回复