linux基礎(一)服務分類與管理
前言
對於linux的眾多服務,我們可以根據其安裝形式分為:
1.rpm預設安裝的服務
2.原始碼包安裝的服務
對於rpm預設安裝的服務,又可以分為獨立的服務和基於xinetd的服務
區別
1.通過rpm安裝的服務和原始碼安裝的服務安裝後文件的位置不同
2.通過rpm安裝的服務和原始碼安裝的服務啟動方式不同
安裝位置的不同
原始碼安裝的一般都手動放在 /usr/local 目錄下
rpm安裝的服務根據不同服務功能安裝的目錄在如圖所示

location.png
啟動方式的不同
一、rpm安裝包的啟動方式
1.獨立服務的管理
注:
啟動:當前系統下服務啟動
自啟動:下次開機後服務啟動,現在服務是否啟動不知道
netstat –pantu :檢視系統啟動的服務和服務的連結和監聽狀態
ps –aux 也是可以檢視系統啟動服務
lsof -i :埠號 #檢視特定埠的服務型別
1.啟動方式:
/etc/init.d/獨立服務名start|stop|status|restart#此方式適用所有linux系統 service 獨立服務名start|stop|status||restart#redhat系列系統才有命令
2.自啟動方式:
chkconfig –level 2345 httpd on #--level 2345可以省略 編輯/etc/rc.d/rc.local 檔案,在其中加入啟動方式,例如在檔案中寫入: /etc/init/httpdstart #此方式推薦 ntsysv 注: -----/etc/rc.d/rc.local和/etc/rc.local互為軟連結,任意一個即可。 -----2種自啟動方法,二選一即可,各自不影響。 -----ntsysv命令和chkconfig 是一種方法,ntsysv是圖形介面(也是redehat系列有此方法) -----chkconfig --list 是檢視服務自啟動狀態,可以看到所有rpm包安裝的服務
2.基於xinetd服務
啟動方法(以rsync服務為例):
1.編輯.vim /etc/xinted.d/rsync檔案,更改如圖所示引數

image.png
2.rsync等服務是基於xinetd,即被xinetd管理的,則重新啟動rsync服務,要: service xinetd restart
若要自啟動:
1.chkconfig rsync on
2.ntsysv
注:rsync服務的作用:用於linux之間資料備份
注: 只有獨立的服務才有執行級別,而基於xinetd的服務沒有執行級別; chkconfig 啟動基於xinetd的服務時,不能加執行級別,否則會報錯; 獨立的服務:啟動就是啟動,自啟動就是自啟動; xinetd服務:啟動和自啟動相通,混為一談,即通過chkconfig rsync on 和編輯/etc/xinetd.d/rsync檔案的效果是一樣的,改一個,另一個也會變,包括配置檔案。
二、原始碼包的啟動方式(apache為例)
具體apache安裝方法及報錯請參考:
ofollow,noindex">https://blog.csdn.net/River_Crab/article/details/797321311.啟動方式
使用絕對路徑,呼叫啟動指令碼來啟動
/usr/local/apache/bin/apachectlstart | stop lsof -i:80#檢查是否開啟 注: 安裝時,預設放在/usr/local/,也可以加上--prefix=目錄來 指定路徑
2.自啟動方式
在配置檔案:/etc/rc.local 中寫入:/usr/local/apache/bin/apachectlstart
3.被service所啟動
ln -s /usr/local/apache/bin/apachectl /etc/init.d/httpd#做軟連結 放到/etc/init.d目錄下後,service可以識別,以便用service啟動 eg:service httpd start#開啟 lsof -i :80 #檢查是否開啟
4.被chkconfig所識別(以apache為例)
原始碼安裝的Apache,chkconfig不支援:

image.png
為了使其支援原始碼安裝的:
1.編輯/etc/init.d/httpd檔案,加入下面2行(#不可省略) #chkconfig:35 86 77 #description:source package apache 第一句話是:指定httpd指令碼可以被chkconfig命令管理,格式:chkconfig :執行級別 啟動順序關閉順序 第二句話:說明,內容隨意 注:此啟動順序 號和 關閉順序號與/etc/rc3.d/下以“s”開頭和以“k”開頭的號碼不能重複的任意號碼。 /etc/rc5.d/是執行級別五的啟動目錄 2.執行chkconfig --add httpd 即可
總結如圖:

image.png