您好,登錄后才能下訂單哦!
這篇文章主要介紹“linux的服務類型有哪些”,在日常操作中,相信很多人在linux的服務類型有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”linux的服務類型有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
linux的服務按管理方式分為“stand-alone”和“super-daemon”兩大類,也就是獨立管理服務和統一管理服務。獨立管理服務可以自行獨立啟動,無需通過其他機制的管理;而統一管理服務通過一個統一的daemon來負責啟動、管理。
本教程操作環境:CentOS6系統、Dell G3電腦。
Linux系統的服務,又稱為daemon,是指常駐在內存中持續運行,以提供所需服務(系統或網絡服務)的進程。
Linux系統的服務按管理方式主要有兩大類:stand-alone和super-daemon,即獨立管理服務和統一管理服務。
stand-alone:這種類型的服務機制較為簡單,可以獨立啟動服務。其特點是:
1、可以自行獨立啟動,無需通過其他機制的管理
2、stand-alone服務一旦啟動加載到內存后,就會一直占用內存空間和系統資源,知道該服務被停止。
3、由于服務一直在運行,所以對client的請求有更快的響應速度。典型的stand-alone服務有:httpd、和ftp
super-daemon:這種管理機制通過一個統一的daemon來負責啟動、管理其他服務。在 CentOS6.X 中這個super-daemon就是xinetd這個程序。特點有:
1、所有的服務由xinetd控管,因此對xinetd可以有安全控管的機制,如網絡防火墻
2、clinet請求前,所需服務是未啟動的;直到client請求服務時,xinetd才會喚醒相應服務;一旦連接結束后,相應服務會被關閉。所以super-daemon方式不會一直占用系統資源
3、既然有請求才會去啟動服務,所以server端的響應速度自然不如stand-alone方式來得快典型的super-daemon服務有:telnet等
Linux中的不同的服務都有不同的啟動腳本,以在服務啟動前進行環境的檢測、配置文件的分析、PID文件的規劃等相關操作。stand-alone方式和super-daemon方式的啟動腳本放置位置有所不同,啟動方式自然也是有區別的。
stand-alone
啟動腳本
stand-alone方式的啟動腳本位于/etc/init.d/目錄下,事實上幾乎所有的服務啟動腳本都在這里。
[root@localhost init.d]# ls /etc/init.d/ abrt-ccpp htcacheclean ntpd smartd abrtd httpd ntpdate snmpd xinetd ......(省略)
你有沒有發現該目錄下不僅有httpd這些我們已知的stand-alone服務啟動腳本,竟然還有xinetd!這說明什么?
這說明xinetd這個服務其實也是使用stand-alone的管理方式。你想啊,因為xinetd要負責啟用停止許多super-daemon的服務,那它是不是得常駐內存~
啟動方法
方法一:由于所有的啟動腳本都在/etc/init.d/里了,所有直接調用不就好了!
[root@localhost init.d]# /etc/init.d/crond Usage: /etc/init.d/crond {start|stop|status|restart|condrestart|try-restart|reload|force-reload}
直接調用它會告訴你Usage,那
[root@localhost init.d]# /etc/init.d/crond restart Stopping crond: [ OK ] Starting crond: [ OK ]
就是這樣簡單啦!
方法二:還可以使用service這個腳本:
[root@localhost init.d]# service crond status crond (pid 3278) is running...
這樣更簡單,不過service只能用來管理stand-alone的服務。
還有,這個用法可以查看系統所有stand-alone服務的狀態 [root@localhost init.d]# service --status-all abrt-ccpp hook is installed abrtd (pid 2331) is running... abrt-dump-oops is stopped acpid (pid 1807) is running... ......(省略)
NOTE:鑒于service這個腳本不是所有Linux發行版都有,所以還是建議使用/etc/init.d/* [action]的方式較好。還有助于理解原理~~~
super-daemon
啟動腳本
super-daemon方式的啟動腳本放在了/etc/xinetd.d/中。
[root@localhost xinetd.d]# ls /etc/xinetd.d/ chargen-dgram daytime-stream echo-dgram tcpmux-server time-stream ......(省略)
查看 super-daemon方式啟動的服務有哪些:
方式一:使用chkconfig可以看到xinetd based services一項中服務的啟動情況:
[root@localhost xinetd.d]# chkconfig ...... xinetd based services: echo-dgram: off echo-stream: off rsync: off tcpmux-server: off telnet: on ......
方式二:直接查看服務的啟動腳本
[root@localhost xinetd.d]# grep -i 'disable' /etc/xinetd.d/* ...... /etc/xinetd.d/daytime-dgram: disable = yes /etc/xinetd.d/daytime-stream: disable = yes /etc/xinetd.d/discard-dgram: disable = yes /etc/xinetd.d/discard-stream: disable = yes /etc/xinetd.d/echo-dgram: disable = yes /etc/xinetd.d/telnet: disable = no ......
上面disable= no就表示該服務已開啟。
啟動方法
我們已經知道啟動腳本中有一項disable= no的就表示該服務已開啟,所以我們的啟動方式就是:
1、先編輯啟動腳本,將需要開啟的服務disable一項改為no
2、然后重啟xinetd:/etc/init.d/xintd restart【因為xinetd本身是stand-alone的服務】
到此,關于“linux的服務類型有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。