回覆列表
  • 1 # Tel你一搜

    在linux系統下,設定某個服務自啟動的話,需要在/etc/rcX.d下掛載,還要在/etc/init.d/下寫啟動指令碼的。  

    1、在/etc/init.d/下新建一個檔案tomcat(需要在root許可權下操作)。  

    2、vi /etc/init.d/tomcat  寫入如下程式碼:  # tomcat自啟動指令碼  #!/bin/sh  # chkconfig: 345 99 10  # description: Auto-starts tomcat  # /etc/init.d/tomcatd  # Tomcat auto-start  # Source function library.  #. /etc/init.d/functions  # source networking configuration.  #. /etc/sysconfig/network  RETVAL=0  export JDK_HOME=/usr/java/jdk1.7.0_45 (請填寫真實的JDK目錄)  export CATALINA_HOME=/home/ldatum/usr/apache-tomcat-7.0.10(請填寫真實的tomcat目錄)  export CATALINA_BASE=/home/ldatum/usr/apache-tomcat-7.0.10(請填寫真實的tomcat目錄)  start()  {  if [ -f $CATALINA_HOME/bin/startup.sh ];  then  echo $"Starting Tomcat"  $CATALINA_HOME/bin/startup.sh  RETVAL=$?  echo " OK"  return $RETVAL  fi  }  stop()  {  if [ -f $CATALINA_HOME/bin/shutdown.sh ];  then  echo $"Stopping Tomcat"  $CATALINA_HOME/bin/shutdown.sh  RETVAL=$?  sleep 1  ps -fwwu tomcat | grep apache-tomcat|grep -v grep | grep -v PID | awk "{print $2}"|xargs kill -9  echo " OK"  # [ $RETVAL -eq 0 ] && rm -f /var/lock/...  return $RETVAL  fi  }  case "$1" in  start)  start  ;;  stop)  stop  ;;  restart)  echo $"Restaring Tomcat"  $0 stop  sleep 1  $0 start  ;;  *)  echo $"Usage: $0 {start|stop|restart}"  exit 1  ;;  esac  exit $RETVAL  

    3、新增完畢之後,給其增加可執行許可權:chmod +x /etc/init.d/tomcat.之後就是將這個shell檔案的link連到/etc/rc2.d/目錄下。  

    4、linux的/etc/rcX.d/目錄中的數字代表開機啟動時不同的run level,也就是啟動的順序,Ubuntu9.10下有0-5六個level,不能隨便連到其他目錄下,可能在那個目錄中的程式啟動時Tomcat所需要的一些庫尚未被載入,用ln命令將tomcat的連結鏈過去:ln -s /etc/init.d/tomcat /etc/rc2.d/S16Tomcat。  注意:rcX.d目錄下的命名規則是很有講究的,更具不同需要可能是S開頭,也可能是K開頭,之後的數字代表他們的啟動順序,詳細看各自目錄下的Readme檔案。  

    5、接下來就是把這個指令碼設定成系統啟動時自動執行,系統關閉時自動停止,使用如下命令:chkconfig ——add tomcat。如果chkconfig沒有安裝,則使用apt-get 或者yum之類的程式進行安裝,一般伺服器版本的Linux都已經自帶了。  

    6、最後,就是reboot重啟系統了。重啟之後就會發現,Tomcat已經成功運行了。

  • 中秋節和大豐收的關聯?
  • 手機螢幕越來越大,三星有考慮推出一款小尺寸的Galaxy Note 10機型嗎?