搬磚頭

          Knocking on Heaven's Door
          posts - 34, comments - 6, trackbacks - 0, articles - 0
          以前碰到過(guò),要tomcat開機(jī)啟動(dòng)的問(wèn)題,后來(lái)用root用戶啟,但是風(fēng)險(xiǎn)很大
          這次碰巧看到了解決辦法,趕緊收了下來(lái)
          原帖名字:ubuntu7.04 安裝tomcat6
          來(lái)源:http://tristonxu.spaces.live.com/blog/cns!6C727D52D9679258!382.entry

          終于搞定了,如果僅僅安裝tomcat,那是很容易的,問(wèn)題是如何讓他隨ubuntu啟動(dòng)運(yùn)行,這才是問(wèn)題的關(guān)鍵!現(xiàn)在終于搞定了,唉...俺還是比較笨,居然用了兩天的時(shí)間才解決,而且問(wèn)題解決之后,才發(fā)現(xiàn)之前原來(lái)一直是在成功的門前徘徊。想想,人生何嘗不是這樣,有多少人用一輩子的時(shí)光在成功的門前晃蕩...
          呵呵~還是趕緊把它記錄下來(lái)吧,年紀(jì)大了阿...

          一、安裝之前
          1、下載tomcat
          最新的tomcat是apache-tomcat-6.0.13.tar.gz,下載地址是:http://tomcat.apache.org/download-60.cgi

          安裝之前要先安張jdk,最好選擇JDK5.0以上版本吧。

          二、安裝ing
          1、解壓apache-tomcat-6.0.13.tar.gz到安裝目錄下。
          根據(jù)俺的實(shí)際情況,我把tmcat安裝在/opt目錄下
          shell>sudo tar zxvf apache-tomcat-6.0.13.tar.gz /opt
          解壓之后,會(huì)在/opt下生成一個(gè)apache-tomcat-6.0.13文件夾

          2、在/usr/local下建立一個(gè)軟鏈接
          shell>cd /usr/local
          shell>sudo ln -s /opt/apache-tomcat-6.0.13 tomcat6

          3、測(cè)試安裝
          運(yùn)行啟動(dòng)腳本,測(cè)試tomcat是否安裝成功
          shell>sudo /usr/local/tomcat6/bin/startup.sh
          然后打開FF,用http://localhost:8080 訪問(wèn)tomcat。一般來(lái)講,會(huì)成功的。呵呵~

          三、讓tomcat開機(jī)啟動(dòng)
          根據(jù)apache網(wǎng)站的Document說(shuō)明(這個(gè)說(shuō)明也寫得很差,嗚嗚!),要是tomcat作為一個(gè)守護(hù)程序運(yùn)行,需要用到j(luò)svc工具。(這個(gè)工具是啥玩意,俺也不懂,懶得研究,居然tomcat自帶,那就最好了)
          1、準(zhǔn)備工作
          Tomcat安裝后,如果讓Tomcat用root身份啟動(dòng),Tomcat將會(huì)擁用root權(quán)限,這將可能給系統(tǒng)帶來(lái)安全隱患,黑客可能利用這個(gè)來(lái)攻擊我們的系統(tǒng),所以我們得添加一個(gè)獨(dú)立運(yùn)行此服務(wù)的用戶,用下面的命令:

          shell>sudo useradd -d /usr/local/tomcat6 -s /usr/sbin/nologin tomcat
          以上命令為系統(tǒng)增加一個(gè)tomcat用戶,并且設(shè)置為nologin

          設(shè)置用戶tomcat5對(duì)tomcat的權(quán)限
          shell>sudo chown -R tomcat:tomcat /usr/local/tomcat6
          shell> sudo chown -R tomcat:tomcat /opt/apache-tomcat-6.0.13

          2、安裝jsvc
          shell>cd /usr/local/tomcat6/bin
          shell>sudo tar xvfz jsvc.tar.gz
          shell>cd jsvc-src
          shell>sudo sh support/buildconf.sh
          如果成功,命令終端打印出下面report:
          support/buildconf.sh: configure script generated successfully

          [注:在此之前,我的系統(tǒng)安裝了autoconf,可以使用shell>sudo apt-get install autoconf 進(jìn)行安裝]
          為configure添加執(zhí)行權(quán)限
          shell>sudo chmod 755 configure
          shell>sudo ./configure --with-java=/usr/lib/j2sdk1.6-sun (這是俺系統(tǒng)的JDK安裝的位置)
          shell>sudo make

          okay!如果沒(méi)有出現(xiàn)錯(cuò)誤的話,jsvc就安裝成功了!

          3、設(shè)置啟動(dòng)腳本
          接下來(lái),就是把jsvc中帶有的一個(gè)tomcat5.sh的一個(gè)模板復(fù)制到/etc/init.d目錄下,然后根據(jù)自己的情況,進(jìn)行修改。
          shell>sudo cp /usr/local/tomcat6/bin/jsvc-src/native/Tomcat5.sh /etc/init.d/tomcat
          上面的命令是移動(dòng)文件tomcat5.sh到/etc/init.d/里面并改名為tomcat

          修改/etc/init.d/tomcat文件:
          shell>cd /etc/init.d
          shell>sudo gedit tomcat

          俺的tomcat文件修改完如下:

          #!/bin/sh
          ##############################################################################
          #
          # Copyright 2004 The Apache Software Foundation.
          #
          # Licensed under the Apache License, Version 2.0 (the "License");
          # you may not use this file except in compliance with the License.
          # You may obtain a copy of the License at
          #
          # http://www.apache.org/licenses/LICENSE-2.0
          #
          # Unless required by applicable law or agreed to in writing, software
          # distributed under the License is distributed on an "AS IS" BASIS,
          # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
          # See the License for the specific language governing permissions and
          # limitations under the License.
          ##############################################################################
          #
          # Small shell script to show how to start/stop Tomcat using jsvc
          # If you want to have Tomcat running on port 80 please modify the server.xml
          # file:
          #
          # <!-- Define a non-SSL HTTP/1.1 Connector on port 80 -->
          # <Connector className="org.apache.catalina.connector.http.HttpConnector"
          # port="80" minProcessors="5" maxProcessors="75"
          # enableLookups="true" redirectPort="8443"
          # acceptCount="10" debug="0" connectionTimeout="60000"/>
          #
          # That is for Tomcat-5.0.x (Apache Tomcat/5.0)
          #
          # Adapt the following lines to your configuration
          JAVA_HOME=/usr/lib/j2sdk1.6-sun
          CATALINA_HOME=/usr/local/tomcat6
          DAEMON_HOME=/usr/local/tomcat6/bin
          TOMCAT_USER=tomcat

          # for multi instances adapt those lines.
          TMP_DIR=/var/tmp
          PID_FILE=/var/run/jsvc.pid
          CATALINA_BASE=/usr/local/tomcat6

          CATALINA_OPTS=
          CLASSPATH=\
          $JAVA_HOME/lib/tools.jar:\
          $CATALINA_HOME/bin/commons-daemon.jar:\
          $CATALINA_HOME/bin/bootstrap.jar

          case "$1" in
          start)
          #
          # Start Tomcat
          #
          $DAEMON_HOME/jsvc-src/jsvc \
          -user $TOMCAT_USER \
          -home $JAVA_HOME \
          -Dcatalina.home=$CATALINA_HOME \
          -Dcatalina.base=$CATALINA_BASE \
          -Djava.io.tmpdir=$TMP_DIR \
          -wait 10 \
          -pidfile $PID_FILE \
          -outfile $CATALINA_HOME/logs/catalina.out \
          -errfile '&1' \
          $CATALINA_OPTS \
          -cp $CLASSPATH \
          org.apache.catalina.startup.Bootstrap
          #
          # To get a verbose JVM
          #-verbose \
          # To get a debug of jsvc.
          #-debug \
          exit $?
          ;;

          stop)
          #
          # Stop Tomcat
          #
          $DAEMON_HOME/src/native/unix/jsvc \
          -stop \
          -pidfile $PID_FILE \
          org.apache.catalina.startup.Bootstrap
          exit $?
          ;;

          *)
          echo "Usage tomcat.sh start/stop"
          exit 1;;
          esac

          [注:需要修改的地方,我都用紅色標(biāo)出來(lái)]
          如果在其他linux系統(tǒng),這樣就okay了,但是在ubuntu中,還需要進(jìn)行一步,就是把在rc2.d中設(shè)置一個(gè)軟鏈接

          在/etc/rc2.d目錄下建立S16apache軟聯(lián)接到/etc/init.d/tomcat
          shell>cd /etc/rc2.d
          shell>ln -s /etc/init.d/apache2 S16apache
          [注:rc2.d目錄下的文件要以S后就數(shù)字開頭,表示啟動(dòng)的順序。而rc2.d中的2,表示這個(gè)目錄下文件在開機(jī)時(shí)的運(yùn)行級(jí)別(runlevel)為2]

          四、結(jié)束
          重新啟動(dòng)系統(tǒng)
          shell>sudo reboot -n
          啟動(dòng)后,就可以在FF中直接輸入http://localhost:8080。如果成功,就可以看見一直可愛(ài)的kitten拉~~~




          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 卢氏县| 定襄县| 三台县| 林口县| 同心县| 廉江市| 社会| 临江市| 卫辉市| 新兴县| 彭山县| 克拉玛依市| 乌兰浩特市| 株洲市| 垦利县| 余江县| 赤壁市| 嵊州市| 集贤县| 辽阳县| 武安市| 金沙县| 新建县| 民丰县| 德兴市| 湾仔区| 永城市| 比如县| 化德县| 荔浦县| 托克逊县| 台山市| 峨眉山市| 元朗区| 临城县| 唐海县| 甘肃省| 繁峙县| 德令哈市| 读书| 秦安县|