將tomcat以普通用戶啟動
1、為tomcat創建一個專用啟動用戶
useradd -M -r -d /dev/null -s /sbin/nologin tomcat
2、編譯jsvc
① 進入tomcat的bin目錄下
② 解壓commons-daemon-native.tar.gz: tar -xf commons-daemon-native.tar.gz
③ 進入解壓後的unix目錄: cd commons-daemon-1.0.15-native-src/unix/
④ 執行buildconf命令: sh support/buildconf.sh
⑤ 編譯: ./configure --with-java=/usr/local/java/jdk-9, --with-java後面的值是jdk的安裝目錄
⑥ 編譯: make
⑦ 將jsvc文件拷貝到tomcat的bin目錄下: cp jsvc /usr/local/tomcat/apache-tomcat-9.0.1/bin/
⑧ 移除daemon編譯文件: rm -rf commons-daemon-1.0.15-native-src/
3、配置jsvc啟動腳本
① 進入tomcat的bin目錄下,拷貝daemon.sh到/etc/init.d下: cp daemon.sh /etc/init.d/tomcat
② 編輯tomcat: vim /etc/init.d/tomcat
③ 在文件頭部加上環境變量
export JAVA_HOME=/usr/local/java/jdk-9
export TOMCAT_HOME=/usr/local/tomcat/apache-tomcat-9.0.1
export CATALINA_HOME=/usr/local/tomcat/apache-tomcat-9.0.1
export CATALINA_BASE=/usr/local/tomcat/apache-tomcat-9.0.1
export CATALINA_TMPDIR=/usr/local/tomcat/apache-tomcat-9.0.1/temp
④ daemon默認的普通用戶的用戶名為tomcat,如果不是,則修改相應的用戶:將 test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat 這句話最後面的tomcat修改成指定的用戶名
⑤ 保持退出 :wq
4、啟動tomcat
/etc/ini.d/tomcat start
註意: 將tomcat的所有者切換成tomcat用戶,不然會因為權限不足導致無法啟動tomcat(chown -R tomcat:tomcat tomcat目錄)
錯誤解決:
1、執行buildconf命令時,提示
答: 缺少autoconf命令,直接安裝autoconf即可。 yum install autoconf
將tomcat以普通用戶啟動