stack overflow 给出的答案:
catalina.sh
run starts tomcat in the foreground, displaying the logs on the console that you started it. Hitting Ctrl-C will terminate tomcat.
startup.sh
will start tomcat in the background. You'll have to tail -f logs/catalina.out
to see the logs.
Both will do the same things, apart from the foreground/background distinction.
Actually, startup.sh
is quite small. If you inspect the file, you'll see that it in turn calls catalina.sh
start. And in catalina.sh
you can just search for occurrences of run and start in order to see the difference in how they're handled.
service tomcat start
is typically starting a daemon in the background on Linux (or *nix), through yet another (non-tomcat) OS-script e.g. in /etc/init.d
. It typically also takes care of running tomcat as a specific user (often called "tomcat" or similar). If you're using your Linux-distribution's tomcat, you should only start with this script. Otherwise you're risking that temporary files or log files can't be overwritten, because they belong to a different user that you used to start tomcat with earlier.
答案网址:stack overflow
本文由个人 hexo 博客 co2fe.com 迁移
date: 2017-09-25 16:06:10