換源、Tomcat及jdk的安裝配置和設定Tomcat自動啟動
- 換源(CentOs更換為阿里云的源)
- Tomcat及jdk的安裝配置和設定Tomcat自動啟動
- 上傳及下載檔案
- 上傳jdk和tomcat的安裝檔案到指定檔案夾
- linux壓縮和解壓命令
- linux中JDK的安裝與配置
- tomcat安裝與配置
- Centos7下設定Tomcat開機自啟動
- 附錄
- 附錄一:CentOS7防火墻查詢、啟動和關閉
- 附錄二:CentOS 7快速開放埠
- 附錄三:
- 附錄四:
換源(CentOs更換為阿里云的源)
- 確保更換之前自己是否安裝
wget,若是沒有安裝wget,直接安裝即可
yum list wget

yum -y install wget


- 首先備份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak - 下載阿里云的
yum源到/etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

-
清除快取
yum clean all

-
更新本地YUM快取
yum makecache

-
按一個軟體試下,查看下載源是否已經變成阿里云了
yum -y install lrzsz

注:lrzsz是一款在linux里可代替ftp上傳和下載的程式,
Tomcat及jdk的安裝配置和設定Tomcat自動啟動
上傳及下載檔案
- 安裝及使用lrzsz
- 上傳
rz - 下載
sz 檔案名
上傳jdk和tomcat的安裝檔案到指定檔案夾
mkdir /usr/local/mytools

注1:安裝見資料
apache-tomcat-8.5.20.tar.gz
jdk-8u151-linux-x64.tar.gz

linux壓縮和解壓命令
-
tar壓縮命令
tar壓縮命令為 tar -zcvf 壓縮名.tar.gz 檔案/目錄
tar解壓命令為 tar -zxvf 壓縮包名 -
zip檔案
zip壓縮命令 zip -q -r 壓縮包名.zip 目錄/檔案名
zip -r xxx.zip ./*
zip解壓命令 unzip filename.zip
linux中JDK的安裝與配置
- 操作:解壓jdk
cd /usr/local/mytools
tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local 解壓到指定檔案夾
注1:在解壓的時候 -C 是解壓到指定目錄中,一定要加-C引數,而且區分大小寫的,-_- 555555555555555,“很痛的很痛的很痛的領悟”
注2:&&可將多條命令合成一行
cd /usr/local/mytools && tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local
- 操作:配置jdk的環境變數
vim /etc/profile
#打開組態檔并在檔案的最后添加如下內容(注意:=兩邊沒有空格)
export JAVA_HOME=/usr/local/jdk1.8.0_151
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
-
重啟系統使環境變數生效
reboot- 執行如下命令,也可以讓環境變數生效
source /etc/profile
- 執行如下命令,也可以讓環境變數生效
-
查看環境變數是否配置成功
java -version

tomcat安裝與配置
-
解壓tomcat到指定路徑
tar -zxvf apache-tomcat-8.5.20.tar.gz -C /usr/local -
解壓完成后進入tomcat的bin目錄
cd /usr/local/apache-tomcat-8.5.20/bin -
啟動或關閉tomcat
cd /usr/local/apache-tomcat-8.5.20/bin
./startup.sh
./shutdown.sh

注1:如何查看遠程服務器的日志
cd /usr/local/apache-tomcat-8.5.20/logs
tail -f catalina.out #實時查看日志檔案
tail -100f catalina.out #實時查看日志檔案后一百行

注2:tomcat啟動后,外部瀏覽器無法訪問,原因:防火墻中8080埠未開放,
防火墻的開啟詳情見:附錄二
ESC服務器-安全組規則
以上步驟完成后,還是無法發布專案的
- 添加管理員、密碼、權限
cd /usr/local/apache-tomcat-8.5.20/conf
vim tomcat-users.xml
然后在`<tomcat-users>`標簽中插入以下內容(即添加管理員、密碼、權限
<role rolename="manager-gui"/>
<user username="admin" password="123" roles="manager-gui"/>
- 允許admin遠程訪問tomcat
此步驟完成后manager應用仍然會拒絕訪問,因為tomcat8.5以后在manager應用中,默認只允許本機訪問
cd /usr/local/apache-tomcat-8.5.20/webapps/manager/META-INF
vim context.xml
將Valve標簽注釋即可
<Context antiResourceLocking="false" privileged="true" >
<!--將下面的一行代碼注釋即可
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
<Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>
了解如何修改tomcat的埠號即可,無需修改
6.將tomcat埠號port="8080"改為80
cd /usr/local/java/apache-tomcat-8.5.20/conf
vim server.xml
-
重啟tomcat,使修改生效
cd /usr/local/apache-tomcat-8.5.20/bin
./shutdown.sh -
通過admin用戶遠程發布web專案,例如:hello.war
-
但是重啟CentOS7之后,hello專案無法再次訪問
Centos7下設定Tomcat開機自啟動
- systemctl命令
- 查看全部服務命令:systemctl list-unit-files --type service ctrl+c可以回到命令輸入
- 查看服務:systemctl status 服務名.service
- 啟動服務:systemctl start 服務名.service
- 停止服務:systemctl stop 服務名.service
- 重啟服務:systemctl restart 服務名.service
- 增加開機啟動:systemctl enable 服務名.service
- 洗掉開機啟動:systemctl disable 服務名.service
注1:后綴.service可以省略
- tomcat增加啟動引數
-
tomcat需要增加一個pid檔案(注意:此檔案由系統自動創建,我們只需要指定此檔案的位置即可)
tomcat.pid檔案與bin目錄平級, -
在tomcat的bin目錄下面,增加setenv.sh配置,catalina.sh啟動的時候會呼叫,同時配置Java記憶體引數
vim /usr/local/apache-tomcat-8.5.20/bin/setenv.sh在setenv.sh增加以下內容:
#add tomcat pid
CATALINA_PID="$CATALINA_BASE/tomcat.pid"
#add java opts
#測驗環境下記憶體可適當調小一些,正式環境下當然是越大越好
#JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"
JAVA_OPTS="-server -XX:PermSize=128M -XX:MaxPermSize=512m -Xms256M -Xmx512M -XX:MaxNewSize=128m"注意:檔案的保存路徑不要搞錯了“tomcat/bin/setenv.sh”
-
在/usr/lib/systemd/system目錄下創建tomcat.service檔案
#vim編輯檔案,檔案不存在就創建此檔案,并進行編輯
vim /usr/lib/systemd/system/tomcat.service
-
注1:詳情見:資料/tomcat.service
tomcat.service
###注意:請將jdk和tomcat改為自己的安裝路徑
###/usr/local/jdk1.8.0_151改為自己的jdk路徑
###/usr/local/apache-tomcat-8.5.20改為自己的tomcat路徑
###Environment="JAVA_HOME=/usr/local/jdk1.8.0_151"這里要配置環境變數,在/etc/profile中的配置在系統服務中不生效
###[unit]配置了服務的描述,規定了在network啟動之后執行,[service]配置服務的pid,服務的啟動,停止,重啟
###[install]配置了使用用戶
[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
Environment="JAVA_HOME=/usr/local/jdk1.8.0_151"
PIDFile=/usr/local/apache-tomcat-8.5.20/tomcat.pid
ExecStart=/usr/local/apache-tomcat-8.5.20/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
-
重啟系統讓tomcat.service檔案生效(此次tomcat還未自動啟動)
-
接下來配置tomcat開機啟動
- 設定tomcat開機啟動:systemctl enable tomcat
- 啟動tomcat服務:systemctl start tomcat
- 查看服務中有沒有tomcat:ps -ef |grep tomcat

-
reboot再次重啟系統后,發現tomcat已自動啟動了
附錄
附錄一:CentOS7防火墻查詢、啟動和關閉
CentOS 7.0默認使用的是firewall作為防火墻
-
查看防火墻狀態
firewall-cmd --state

-
停止firewall
systemctl stop firewalld.service -
禁止firewall開機啟動
systemctl disable firewalld.service
附錄二:CentOS 7快速開放埠
CentOS7防火墻firewalld默認是開啟的,下面記錄如何使用firewalld開放Linux埠:
-
開啟埠
firewall-cmd --zone=public --add-port=8080/tcp --permanent

-
洗掉指定埠
firewall-cmd --zone=public --remove-port=8080/tcp --permanent -
查詢指定埠號是否開啟:
firewall-cmd --query-port=8080/tcp -
重啟防火墻(不重啟以上的設定是不會生效的):
firewall-cmd --reload

-
查詢有哪些埠是開啟的:
firewall-cmd --list-port

-
命令含義:
–zone #作用域
–add-port=8080/tcp #添加埠,格式為:埠/通訊協議
–permanent #永久生效,沒有此引數重啟后失效
附錄三:
- SSH是什么?
ssh是一種安全協議,主要用于給遠程登錄會話資料進行加密,保證資料傳輸的安全 - SSH分為客戶端和服務端,
服務端是一個守護行程,一般是sshd行程,在后臺運行并回應來自客戶端的請求,提供了對遠程請求的處理,一般包括公共密鑰認證、密鑰交換、對稱密鑰加密和非安全連接 - 作業機制
3.1 客戶端發送一個連接請求到遠程服務端
3.2 服務端檢查申請的包和IP地址,再發送密鑰給SSH客戶端;
3.3 客戶端再將密鑰發回服務端,自此建立連接
附錄四:
Linux 軟體安裝到 /usr,/usr/local/ 還是 /opt 目錄?
- /usr:系統級的目錄,可以理解為C:/Windows/,/usr/lib理解為C:/Windows/System32,
- /usr/local:用戶級的程式目錄,可以理解為C:/Progrem Files/,用戶自己編譯的軟體默認會安裝到這個目錄下,
- /opt:用戶級的程式目錄,可以理解為D:/Software,opt有可選的意思,這里可以用于放置第三方大型軟體(或游戲),當你不需要時,直接rm -rf掉即可,
在硬碟容量不夠時,也可將/opt單獨掛載到其他磁盤上使用,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/155772.html
標籤:其他
