在linux系統下安裝配置java和tomcat

來源:互聯網
上載者:User

標籤:str   源碼包   lnp   添加   mat   允許   user   source   檔案   

 

個人習慣將源碼包放到opt下

 

1.安裝jdk

       jdk是java的運行環境,整個jenkins就是一個var包,是java寫的程式。

1.1.通過yum安裝

       A.安裝yum:

 #yum install wget

           在opt目錄下下載

  #cd opt  #wget http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

B.下載上傳

         A.oracle官方下載最新版jdk(jdk-8u171-linux-x64.tar.gz):

             http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

         B.安裝上傳命令

yum -y install lrzsz 

         C.在opt目錄下,運行rz -be,上傳檔案。

rz -be
1.3.解壓tar包
tar -zxvf jdk-8u171-linux-x64.tar.gz

          ls確認已解壓:(補圖)           

1.4  將解壓後的檔案挪到/usr/local/
mv jdk1.8.0_171/ /usr/local/

         在/usr/local/下ls確認已移動:(補圖)

1.5  製作java 軟連結  
 ln -s /usr/loca/jdk /usr/local/java

            ln -s /usr/loca/jdk /usr/local/java

            ********刪除軟連結:rm java********

            ********為什麼要做軟連結***********

           jdk經常要升版本,如果升級,做了軟連結,只需要將之前的軟連結刪掉,重新做一個軟連結就可以了(ln -s jdk1.9.0/  java)。程式裡面的路徑也不用改,設定檔,環境變數也不要重新配。

           ******不管是java,tomcat,nginx都是做軟連結,連結到一個版本號碼上,如果要升級,就把軟連結指到新的版本號碼上********

1.6  配置環境變數

          1. 開啟環境變數

[[email protected] local]# vi /etc/profile

          2. 將/usr/local/java加入PATH:

              將以下這句話放置在/etc/profile最後。PATH=/usr/local/java/bin:$PATH

          3. 退出重新登入,或者直接執行source /etc/profile

          4. 運行java -version看是否成功。

[[email protected] local]# java -versionjava version "1.8.0_171"Java(TM) SE Runtime Environment (build 1.8.0_171-b11)Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)

 

2.安裝tomcat

   tomcat是一個java容器,本身也是web容器,可以提供web頁面,也可以提供java頁面的解析。

   所有java開發的,要麼直接用var包直接起,要麼用容器。

 2.1 在opt目錄下,apache官方網站下載最新版tomcat。

[[email protected] opt]# wget http://apache.fayea.com/tomcat/tomcat-8/v8.5.30/bin/apache-tomcat-8.5.30.tar.gz

[[email protected] opt]# ll
total 195740
-rw-r--r--. 1 root root   9541892 Apr  4 04:35 apache-tomcat-8.5.30.tar.gz
-rw-r--r--. 1 root root 190890122 Apr 27 17:15 jdk-8u171-linux-x64.tar.gz

 2.2 tomcat直接解開啟動即可使用,前提是jdk安裝正確

[[email protected] opt]# tar -zxvf apache-tomcat-8.5.30.tar.gz

[[email protected] opt]# ll
total 195740
drwxr-xr-x. 9 root root       160 Apr 28 11:08 apache-tomcat-8.5.30
-rw-r--r--. 1 root root   9541892 Apr  4 04:35 apache-tomcat-8.5.30.tar.gz
-rw-r--r--. 1 root root 190890122 Apr 27 17:15 jdk-8u171-linux-x64.tar.gz

2.3 移動到/usr/local/

[[email protected] opt]# mv apache-tomcat-8.5.30 /usr/local/[[email protected] opt]# cd /usr/local/[[email protected] local]# lltotal 0drwxr-xr-x. 9 root root 160 Apr 28 11:08 apache-tomcat-8.5.30

   2.4 製作軟連結

[[email protected] local]# ln -s apache-tomcat-8.5.30/ tomcat[[email protected] local]# lsapache-tomcat-8.5.30  etc    include  jdk1.8.0_171  lib64    sbin   srcbin                   games  java     lib           libexec  share  tomcat

  2.5  tomcat需要啟動

      tomcat啟動和停止的命令:都在主目錄的bin下面,有一個catalina.sh

[[email protected] local]# cd tomcat/[[email protected] tomcat]# lsbin   lib      logs    RELEASE-NOTES  temp     workconf  LICENSE  NOTICE  RUNNING.txt    webapps
[[email protected] tomcat]# cd bin/
[[email protected] bin]# ls
bootstrap.jar                 daemon.sh         startup.sh
catalina.bat                  digest.bat        tomcat-juli.jar
catalina.sh                   digest.sh         tomcat-native.tar.gz
catalina-tasks.xml            setclasspath.bat  tool-wrapper.bat
commons-daemon.jar            setclasspath.sh   tool-wrapper.sh
commons-daemon-native.tar.gz  shutdown.bat      version.bat
configtest.bat                shutdown.sh       version.sh
configtest.sh                 startup.bat

  啟動:   sh catalina.sh start

[[email protected] bin]# sh catalina.sh startUsing CATALINA_HOME:   /usr/local/tomcatUsing CATALINA_TMPDIR: /usr/local/tomcat/tempUsing JRE_HOME:        /usr/local/javaUsing CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jarTomcat started.

       通常啟動的時候加一個節點:將tomcat啟動起來,順便將log開啟。

     (沒有var包的情況半秒就可以啟動起來。這個時候沒有var包,如果開啟網站是空白頁)

[[email protected] bin]# sh catalina.sh start;tail -f ../logs/catalina.outUsing CATALINA_BASE:   /usr/local/tomcatUsing CATALINA_HOME:   /usr/local/tomcatUsing CATALINA_TMPDIR: /usr/local/tomcat/tempUsing JRE_HOME:        /usr/local/javaUsing CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jarTomcat started.

2.6 查看連接埠8080是否啟動:

            看是否啟動成功,tomcat預設的連接埠是8080

           *****netstat -lnp:是查看連接埠的*******

        A.安裝net-tools:

[[email protected] bin]# yum install net-tools

     B.查看連接埠:

[[email protected] bin]# yum install net-tools

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name   
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1144/sshd          
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1243/master        
tcp6       0      0 :::8080                 :::*                    LISTEN      1728/java

  拿瀏覽器登入:

現在Edge登入找不到頁面,是因為8080連接埠沒有添加到防火牆允許訪問內。可以添加進去或者將防火牆關掉。

[[email protected] conf]# systemctl stop firewalld.service[[email protected] conf]# systemctl disable firewalld.serviceRemoved symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

[[email protected] conf]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)

 

3.如何配置tomcat:   3.1停掉tomcat:

       進入/tomcat/bin裡面stop catalina.sh,停掉後用ps -ef | grep java來看是否真的停掉(java進程沒有了)。

[[email protected] bin]# sh catalina.sh stopUsing CATALINA_BASE:   /usr/local/tomcatUsing CATALINA_HOME:   /usr/local/tomcatUsing CATALINA_TMPDIR: /usr/local/tomcat/tempUsing JRE_HOME:        /usr/local/javaUsing CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar[[email protected] bin]# ps -ef | grep javaroot      1882  1320  0 13:16 pts/0    00:00:00 grep --color=auto java

     3.2 進入主目錄(tomcat)/webapps下,其他的都刪掉,只留一個root,root下也清空。

       包括manage也要刪掉,如果用了manage,並且對公網發布,那麼瞬間就會被破掉。

[[email protected] tomcat]# cd webapps/[[email protected] webapps]# lsdocs  examples  host-manager  manager  ROOT[[email protected] webapps]# rm -rf docs/ examples/ host-manager/ manager/[[email protected] webapps]# lsROOT[[email protected] webapps]# pwd/usr/local/tomcat/webapps[[email protected] webapps]# cd ROOT/[[email protected] ROOT]# pwd/usr/local/tomcat/webapps/ROOT[[email protected] ROOT]# rm -rf *[[email protected] ROOT]# ls[[email protected] ROOT]# 

  3.3  在tomcat/conf/server.xml中將大寫的SHUTDOWN隨便改為什麼。

  這是一個在頁面上可以關閉tomcat的功能,將這個功能禁用。(或者將8005連接埠禁用也可以)

[[email protected] tomcat]# cd conf/[[email protected] conf]# vi server.xml 

  ---------到此tomcat的安全強化做完了,可以往裡加東西了。至少不會從tomcat本身的漏洞進來出問題了,至少不會從tomcat的頁面,以及manager,shutdown很簡單的可以利用的漏洞進來。

       3.4 如何將工程放到tomcat

       tomcat本身自身可以解開var包,但是這裡有一個弊端:將var包放到大root目錄下,一啟動tomcat,var包就會自動解開。這個時候如果要修改var包裡面的一些參數,配置,修改之後,下次啟動tomcat的時候,又會重新從var包解開啟動之前修改的參數和配置就沒有了就需要重新設定。

        所以我們都是將var包解開之後再放到tomcat路徑下再載入,一般放到大root目錄下或者是與大root平級的目錄下。

 4. 安裝jenkins

4.1 通過 wget下載jenkins

[[email protected] opt]# wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war

4.2 建立一個目錄jenkins,並將var包拷貝進來

     放置jenkins var包解壓出來的內容

      因為jenkins的var包解開沒有

[[email protected] opt]# mkdir jenkins[[email protected] opt]# mv jenkins.war jenkins/[[email protected] opt]# cd jenkins[[email protected] jenkins]# lltotal 72824-rw-r--r--. 1 root root 74568464 Apr 10 04:42 jenkins.war

4.3 解壓var包

[[email protected] jenkins]# jar -xvf jenkins.war

[[email protected] jenkins]# ls
bootstrap                    LogFileOutputStream$2.class
ColorFormatter.class         LogFileOutputStream.class
css                          Main.class
dc-license.txt               MainDialog$1$1.class
executable                   MainDialog$1.class
favicon.ico                  MainDialog.class
help                         Main$FileAndDescription.class
images                       META-INF
jenkins.war                  robots.txt
JNLPMain.class               scripts
jsbundles                    WEB-INF
LogFileOutputStream$1.class  winstone.jar

 ****注意:上面的jenkins.var包一定要刪掉。如果放在這裡,駭客可以把這個var包拿走。**********

[[email protected] jenkins]# rm jenkins.war

4.4 將jenkins挪到tomcat目錄中webapps下。

[[email protected] opt]# cp jenkins.war /usr/local/tomcat/webapps/

[[email protected] opt]# cd /usr/local/tomcat/webapps/
[[email protected] webapps]# ls
jenkins  jenkins.war  ROOT

4.3 啟動(重啟)tomcat。

[[email protected] bin]# sh catalina.sh startUsing CATALINA_BASE:   /usr/local/tomcatUsing CATALINA_HOME:   /usr/local/tomcatUsing CATALINA_TMPDIR: /usr/local/tomcat/tempUsing JRE_HOME:        /usr/local/javaUsing CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jarTomcat started.

4.4 瀏覽器訪問

IP:8080/jenkins

 

 

5.tomcat的使用

5.1 log地址:tomcat/logs/catalina.out

[[email protected] tomcat]# cd logs/[[email protected] logs]# lscatalina.2018-04-28.log      localhost.2018-04-28.logcatalina.out                 localhost_access_log.2018-04-28.txthost-manager.2018-04-28.log  manager.2018-04-28.log[[email protected] logs]# tail -f catalina.out

5.2 連接埠

[[email protected] conf]# vi server.xml

監聽連接埠為8080

    <Connector port="8080" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="8443" />

   一般會將8080改掉,可以任意改。一般現在不會用8080或者80,現在一般前面有一個ngnix做轉寄,做動靜分離。

    現在效能好了,不講究動靜分離了,但是還是會動態/java的東西給tomcat,靜態給ngnix,動態東西。

   串連數預設是150,一般不要去調。如果需要擴充,通常是橫向擴充,1台容器不夠,就做2台。

 

 mv /tmp/zz/* ./-----將全部內容拷貝到目前的目錄

 

在linux系統下安裝配置java和tomcat

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.