CentOS6.10/7.6下Java8 Jdk+Tomcat環境安裝教程 開機啟動
技術支持服務電話:15308000360 【7x24提供運維服務,解決各類系統/軟硬件疑難技術問題】
系統環境:Centos6.10 64位
一. 安裝java環境 這里安裝的是jdk1.8.0_192
在/usr/local目錄下創建java目錄,可到oracle官網或鏡像網站下載jdk-8u192-linux-x64.tar.gz,放到/usr/local/java中,
cd /usr/local/java,執行解壓: tar zxvf jdk-8u192-linux-x64.tar.gz。
解壓完成后配置JAVA_HOME,JAR_HOME環境變量。打開/etc/profile文件,命令:vi /etc/profile,在最后加上
export JAVA_HOME=/usr/local/java/jdk1.8.0_192 export JRE_HOME=/usr/local/java/jdk1.8.0_192/jre export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$PATH
按ESC鍵,再輸入:wq 保存退出文檔,輸入source /etc/profile 立即生效(該方法設置一次對所有用戶有效)
查看安裝是否成功
java -version
注:修改~/.bashrc文件(該方法修改后只對當前用戶有效,對該用戶的所有shell都有效)
用vim編輯器打開~/.bashrc文件
在文件尾部加入jdk環境變量的定義。在以上方法未起到作用時可嘗試此方法
然后建立服務軟連接(根據自己的tomcat路徑自行修改)
二.安裝tomcat,這里是apache-tomcat-8.5.12.tar.gz
下載tomcat(二進制版本不是源代碼版)到/usr/local目錄中,tar zxvf apache-tomcat-8.5.12.tar.gz,得到解壓后的apache-tomcat-8.5.12
目錄,修改目錄名稱為tomcat。
設置tomcat運行用戶
useradd -M tomcat #創建沒有主目錄的tomcat用戶 chsh tomcat -s /sbin/nologin #禁止tomcat登陸操作,類似于windows的系統賬戶 chown -R tomcat /usr/local/tomcat #將/usr/local/tomcat下的所有檔案與子目錄進行相同的擁有者變更為tomcat用戶
為tomcat/bin/目錄下的*.sh添加相應的x權限位:
chmod +x /usr/local/tomcat/bin/*.sh
簡易設置開機啟動(文件所在路徑tomcat/bin/startup.sh):
vi startup.sh
然后在startup.sh的文件頂部#!/bin/sh換行后,添加如下內容
#chkconfig: 2345 80 90 #description:tomcat auto start #processname: tomcat export JAVA_HOME=/usr/local/java/jdk1.8.0_192 export JRE_HOME=/usr/local/java/jdk1.8.0_192/jre
其中2345是默認啟動級別,級別有0-6共7個級別。
等級0表示:表示關機
等級1表示:單用戶模式
等級2表示:無網絡連接的多用戶命令行模式
等級3表示:有網絡連接的多用戶命令行模式
等級4表示:不可用
等級5表示:帶圖形界面的多用戶模式
等級6表示:重新啟動
10是啟動優先級,90是停止優先級,優先級范圍是0-100,數字越大,優先級越低。
然后建立服務軟連接(根據自己的tomcat路徑自行修改)
ln -s /usr/local/tomcat/bin/startup.sh /etc/rc.d/init.d/tomcat添加執行權限
chmod +x /etc/init.d/tomcat添加開機啟動服務
chkconfig --add tomcat
其他開機啟動,編譯安裝tomcat daemon服務守候程序:
cd /usr/local/tomcat/bin/ tar xvzf commons-daemon-native.tar.gz
解壓后會生成一個commons-daemon-1.0.15-native-src目錄,cd到這個目錄的Linux子目錄:
cd commons-daemon-1.0.15-native-src/unix
執行編譯配置
./configure #(注意:需要先安裝好make,gcc等編譯工具) ./configure --with-java=/opt/jdk #如果提示沒有jdk,使用這個命令。主要是java目錄未寫入系統目錄
運行完成后會提示如下信息說明操作成功:
... *** All done *** Now you can issue "make"
make
cp jsvc /usr/local/tomcat/bin/
在tomcat/bin目錄里面有一個daemon.sh 這個文件就是啟動和關閉tomcat的服務守候程序。
注意:之前的一些tomcat版本,例如tomcat 6.0.x, 可能沒有這個文件, 其實這個文件就是放在commons-daemon-x.x.x-native-src/unix/samples/Tomcat7.sh這兒的(此目錄還有一個Tomcat5.sh),只不過新版本的tomcat把它移動到了bin目錄下,并取名為daemon.sh了。所以,如果您使用的是tomcat 6,那就把這個Tomcat7.sh文件復制到bin目錄下,并取名為daemon.sh即可。
修改daemon環境變量 :
用文本編輯器(vi或emacs等)編輯它,找到類似下面這樣配置段:
test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat # Set JAVA_HOME to working JDK or JRE # JAVA_HOME=/opt/jdk-1.6.0.22
修改TOMCAT_USER=tomcat為您要指定身份運行的linux賬號用戶名,此處指定用戶名為tomcat。
并把JAVA_HOME=...前面的注釋(即“#”號)去掉,并設置為jdk的安裝目錄路徑,最后,修改好后的配置段變成如下:
test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat # Set JAVA_HOME to working JDK or JRE JAVA_HOME=/usr/local/java/jdk1.8.0_192
現在修改/usr/local/tomcat目錄的所有者為tomcat(即您要指定身份運行的linux帳號):
useradd -M tomcat #創建沒有主目錄的tomcat用戶 chsh tomcat -s /sbin/nologin #禁止tomcat登陸操作,類似于windows的系統賬戶 chown -R tomcat /usr/local/tomcat #將/usr/local/tomcat下的所有檔案與子目錄進行相同的擁有者變更為tomcat用戶
為tomcat/bin/目錄下的*.sh添加相應的x權限位:
chmod +x /usr/local/tomcat/bin/*.sh
啟動tomcat服務器:
[root@localhost ~]# /usr/local/tomcat/bin/daemon.sh start
注意如果遠程無法訪問檢查防火墻是否放行tomcat的端口
停止Tomcat
[root@localhost ~]# /usr/local/tomcat/bin/daemon.sh stop添加tomcat為Linux的服務,這時就簡單了,只需要創建一個軟鏈到/etc/init.d/目錄中即可
[root@localhost ~]# ln -s /usr/local/tomcat/bin/daemon.sh /etc/init.d/tomcat
現在就可以用它啟動/關閉tomcat了:
/etc/init.d/tomcat start #啟動tomcat service tomcat start #啟動tomcat /etc/init.d/tomcat stop #關閉tomcat service tomcat stop #關閉tomcat
設置tomcat服務開機啟動,需要在daemon.sh中增加以下的語句:
#!/bin/sh #這句是原文件里有的,下面的2句是要添加的 # chkconfig: 2345 90 15 # description: Tomcat-en Manager
再運行 chkconfig命令增加tomcat服務,而達到自啟動:
chkconfig --add tomcat
重啟機器,測試一下。
如果想再創建一個tomcat服務,只需要將/usr/local/tomcat這個目錄復制一份,例如:
cp /usr/local/tomcat /usr/local/tomcat1
再修改一下tomcat1的端口號(/usr/local/tomcat1/conf/server.xml中的端口號不能與其它的服務重復)。最后從上面所述,創建另一個服務即可。
通過這種方式,您就可以為一臺Linux服務器創建任意多個tomcat服務了。最后只需要安裝一個前端服務器(例如Nginx或Apache),將不同域名的請求轉發到不同的tomcat服務程序就可以了。