深入理解Linux守护进程
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                深入理解Linux守护进程
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.                        
                                
                            
                            
                            深入理解Linux守護(hù)進(jìn)程Linux服務(wù)器在啟動(dòng)時(shí)需要啟動(dòng)很多系統(tǒng)服務(wù),它們向本地和網(wǎng)絡(luò)用戶提供了Linux的系統(tǒng)功能接口,直接面向應(yīng)用程序和用戶。提供這些服務(wù)的程序是由運(yùn)行在后臺(tái)的守護(hù)進(jìn)程(daemons)來(lái)執(zhí)行的。守護(hù)進(jìn)程是生存期長(zhǎng)的一種進(jìn)程。它們獨(dú)立于控制終端并且周期性的執(zhí)行某種任務(wù)或等待處理某些發(fā)生的事件。他們常常在系統(tǒng)引導(dǎo)裝入時(shí)啟動(dòng),在系統(tǒng)關(guān)閉時(shí)終止。linux系統(tǒng)有很多守護(hù)進(jìn)程,大多數(shù)服務(wù)器都是用守護(hù)進(jìn)程實(shí)現(xiàn)的。同時(shí),守護(hù)進(jìn)程完成許多系統(tǒng)任務(wù),比如,作業(yè)規(guī)劃進(jìn)程crond、打印進(jìn)程lqd等。有些書(shū)籍和資料也把守護(hù)進(jìn)程稱(chēng)作:“服務(wù)”。選擇運(yùn)行哪些守護(hù)進(jìn)程,要根據(jù)具體需求決定。查看系統(tǒng)可以提供的守護(hù)進(jìn)程對(duì)應(yīng)的服務(wù),使用下面方法,以root權(quán)限運(yùn)行:
#ntsysv界面如圖1所示的窗口,下面詳細(xì)介紹一下各項(xiàng)系統(tǒng)服務(wù)的功能。以英文字母為序:
一、Linux守護(hù)進(jìn)程簡(jiǎn)介
1.?alsasound?:Alsa聲卡驅(qū)動(dòng)守護(hù)程序。Alsa聲卡驅(qū)動(dòng)程序本來(lái)是為了?一種聲卡Gravis?UltraSound(GUS)而寫(xiě)的,該程序被證?明很優(yōu)秀,于是作者就開(kāi)始為一般的聲卡寫(xiě)?驅(qū)動(dòng)程序。?Alsa和OSS/Free?及OSS/Linux兼容,但是有自己的接?口,甚至比OSS優(yōu)秀。
2.?acpid:acpid(Advanced?Configuration?and?Power?Interface)是為替代傳統(tǒng)的APM電源管理標(biāo)準(zhǔn)而推出的新型電源管理標(biāo)準(zhǔn)。通常筆記本電腦需要啟動(dòng)電源進(jìn)行管理。
3.?atalk:AppleTalk網(wǎng)絡(luò)守護(hù)進(jìn)程。注意不要在后臺(tái)運(yùn)行該程序,該程序的數(shù)據(jù)結(jié)構(gòu)必須在運(yùn)行其他進(jìn)程前先花一定時(shí)間初始化。
4.?amd:?自動(dòng)安裝NFS守護(hù)進(jìn)程。
5.?anacron:一個(gè)自動(dòng)化運(yùn)行任務(wù)守護(hù)進(jìn)程。Red?Hat?Linux?隨帶四個(gè)自動(dòng)化任務(wù)的工具:cron、?anacron、at、和?batc。當(dāng)你的Linux服務(wù)器并不是全天運(yùn)行,這個(gè)anacron就可以幫你執(zhí)行在"crontab"設(shè)定的時(shí)間內(nèi)沒(méi)有執(zhí)行的工作。
6.?apmd:apmd(Advanced?Power?Management)是高級(jí)電源管理。傳統(tǒng)的電源管理標(biāo)準(zhǔn),對(duì)于筆記本電腦比較有用,可以了解系統(tǒng)的電池電量信息。并將相關(guān)信息通過(guò)syslogd?寫(xiě)入日志。也可以用來(lái)在電源不足時(shí)關(guān)機(jī)。
7.?arptables_jf?:為arptables網(wǎng)絡(luò)的用戶控制過(guò)濾的守護(hù)進(jìn)程。
8.?arpwatch:?記錄日志并構(gòu)建一個(gè)在LAN接口上看到的以太網(wǎng)地址和IP地址對(duì)數(shù)據(jù)庫(kù)?。
atd:at和batch命令守護(hù)進(jìn)程,用戶用at命令調(diào)度的任務(wù)。Batch用于在系統(tǒng)負(fù)荷比較低時(shí)?運(yùn)行批處理任務(wù)。
9.?autofs:自動(dòng)安裝管理進(jìn)程automount,與NFS相關(guān),依賴于NIS服務(wù)器。
10.?bootparamd:引導(dǎo)參數(shù)服務(wù)器,為L(zhǎng)AN上的無(wú)盤(pán)工作站提供引導(dǎo)所需的相關(guān)信息。
11.?bluetooch:藍(lán)牙服務(wù)器守護(hù)進(jìn)程。
12.?crond?:cron是Unix下的一個(gè)傳統(tǒng)程序,該程序周期地運(yùn)行用戶?調(diào)度的任務(wù)。比起傳統(tǒng)的Unix版本,Linux版本添加了不少屬性,而且更安全,配置更簡(jiǎn)單。類(lèi)似計(jì)劃任務(wù)。
13.?chargen:使用tcp協(xié)議的chargen?server,chargen(Character?Generator?Protocol)是一種網(wǎng)絡(luò)服務(wù),主要功能是提供類(lèi)似遠(yuǎn)程打字的功能。
14.?chargen-udp:使用UDP協(xié)議的chargen?server。
15.?cpuspeed:監(jiān)測(cè)系統(tǒng)空閑百分比,降低或加快CPU時(shí)鐘速度和電壓從而在系統(tǒng)空閑時(shí)將能源消耗降為最小,而在系統(tǒng)繁忙時(shí)最大化加快系統(tǒng)執(zhí)行速度。
16.?dhcpd:動(dòng)態(tài)主機(jī)控制協(xié)議(Dynamic?Host?Control?Protocol)的服務(wù)守護(hù)進(jìn)程。
17.?cups:?cups(Common?UNIX?Printing?System)是通用UNIX打印守護(hù)進(jìn)程,為L(zhǎng)inux提供第三代打印功能。
18.?cups-config-daemons:cups打印系統(tǒng)切換守護(hù)進(jìn)程。
19.?cups-lpd:cups行打印守護(hù)進(jìn)程。
20.?daytime:使用TCP?協(xié)議的Daytime守護(hù)進(jìn)程,該協(xié)議為客戶機(jī)實(shí)現(xiàn)從遠(yuǎn)程服務(wù)器獲取日期?和時(shí)間的功能。預(yù)設(shè)端口:13。
21.?daytime-udp:使用UDP?協(xié)議的Daytime守護(hù)進(jìn)程。
22.?dc_server:使用SSL安全套接字的代理服務(wù)器守護(hù)進(jìn)程。
23.?dc_client:使用SSL安全套接字的客戶端守護(hù)進(jìn)程。
24.?diskdump:服務(wù)器磁盤(pán)備份守護(hù)進(jìn)程。
25.?echo:服務(wù)器回顯客戶數(shù)據(jù)服務(wù)守護(hù)進(jìn)程。
26.?echo-udp:使用UDP協(xié)議的服務(wù)器回顯客戶數(shù)據(jù)服務(wù)守護(hù)進(jìn)程。
27.?eklogin:接受rlogin會(huì)話鑒證和用kerberos5加密的一種服務(wù)的守護(hù)進(jìn)程。
28.?gated?:網(wǎng)關(guān)路由守護(hù)進(jìn)程。它支持各種路由協(xié)議,包括RIP版本1和2、DCN?HELLO協(xié)議、?OSPF版本2以及EGP版本2到4。
29.?gpm:gpm(General?Purpose?Mouse?Daemon?)守護(hù)進(jìn)程為文本模式下的Linux程序如mc(Midnight?Commander)提供了鼠標(biāo)的支持。它也支持控制臺(tái)下鼠標(biāo)?的拷貝,粘貼操作以及彈出式菜單。
30.?gssftp:?使用kerberos?5認(rèn)證的ftp守護(hù)進(jìn)程
31.?httpd:Web服務(wù)器Apache守護(hù)進(jìn)程,可用來(lái)提供HTML文件以?及CGI動(dòng)態(tài)內(nèi)容服務(wù)。
32.?inetd?:因特網(wǎng)操作守護(hù)程序。監(jiān)控網(wǎng)絡(luò)對(duì)各種它管理的服務(wù)的需求,并在必要的時(shí)候啟動(dòng)相應(yīng)的服務(wù)程序。在Redhat?和Mandrake?linux中被xinetd代替。Debian,?Slackware,?SuSE仍然使用。
33.?innd:Usenet新聞服務(wù)器守護(hù)進(jìn)程。
34.?iiim:中文輸入法服務(wù)器守護(hù)進(jìn)程。
35.?iptables:iptables防火墻守護(hù)進(jìn)程。
36.?irda:紅外端口守護(hù)進(jìn)程。
37.?isdn:isdn啟動(dòng)和中止服務(wù)守護(hù)進(jìn)程。
38.?krb5-telnet:使用kerberos?5認(rèn)證的telnet守護(hù)進(jìn)程。
39.?klogin:遠(yuǎn)程登陸守護(hù)進(jìn)程。
40.?keytable:?該進(jìn)程的功能是轉(zhuǎn)載在/etc/sysconfig/keyboards里定義的鍵盤(pán)映射表,該表可以通過(guò)kbdconfig工具進(jìn)行選擇。您應(yīng)該使該程序處于激活狀態(tài)。
41.?irqbalance:對(duì)多個(gè)系統(tǒng)處理器環(huán)境下的系統(tǒng)中斷請(qǐng)求進(jìn)行負(fù)載平衡的守護(hù)程序。如果你只安裝了一個(gè)CPU,就不需要加載這個(gè)守護(hù)程序。
42.?kshell?:kshell守護(hù)進(jìn)程。
43.?kudzu:硬件自動(dòng)檢測(cè)程序,會(huì)自動(dòng)檢測(cè)硬件是否發(fā)生變動(dòng),并相應(yīng)進(jìn)行硬件的添加、刪除工作。當(dāng)系統(tǒng)啟動(dòng)時(shí),kudzu會(huì)對(duì)當(dāng)前的硬件進(jìn)行檢測(cè),并且和存儲(chǔ)在?/etc/sysconfig/hwconf中的硬件信息進(jìn)行對(duì)照,如果某個(gè)硬件從系統(tǒng)中被添加或者刪除時(shí),那么kudzu就會(huì)察覺(jué)到,并且通知用戶是否進(jìn)行相關(guān)配置,然后修改etc/sysconfig/hwconf,使硬件資料與系統(tǒng)保持同步。如果/etc/sysconfig/hwconf這個(gè)文件不存在,那么kudzu將會(huì)從/etc/modprobe.conf,/etc/sysconfig/network-scripts/和?etc/X11/XF86Config中探測(cè)已經(jīng)存在的硬件。如果你不打算增加新硬件,那么就可以關(guān)閉這個(gè)啟動(dòng)服務(wù),以加快系統(tǒng)啟動(dòng)時(shí)間。
44.?ldap:ldap(Lightweight?Directory?Access?Protocol)目錄訪問(wèn)協(xié)議服務(wù)器守護(hù)進(jìn)程。
45.?lm_seroems:檢測(cè)主板工作情況守護(hù)進(jìn)程。
46.?lpd?:lpd是老式打印守護(hù)程序,負(fù)責(zé)將lpr等程序提交給打印?作業(yè)。
47.?mdmonitor:RAID相關(guān)設(shè)備的守護(hù)程序。
48.?messagebus:D-BUS是一個(gè)庫(kù),為兩個(gè)或兩個(gè)以上的應(yīng)用程序提供一對(duì)一的通訊。?dbus-daemon-1是一個(gè)應(yīng)用程序,它使用這個(gè)庫(kù)來(lái)實(shí)現(xiàn)messagebus守護(hù)程序。多個(gè)應(yīng)用程序通過(guò)連接messagebus守護(hù)程序可以實(shí)現(xiàn)與其他程序交換信息。
49.?microcode_ctl:可編碼以及發(fā)送新的微代碼到內(nèi)核以更新Intel?IA32系列處理器守護(hù)進(jìn)程。
50.?mysqld:?一個(gè)快速高效可靠的輕型SQL數(shù)據(jù)庫(kù)引擎守護(hù)進(jìn)程。
51.?named:DNS(BIND)服務(wù)器守護(hù)進(jìn)程。
52.?netplugd:netplugd(network?cable?hotplug?management?daemon)守護(hù)程序,用于監(jiān)控一個(gè)或多個(gè)網(wǎng)絡(luò)接口的狀態(tài),當(dāng)某些事件觸發(fā)時(shí)運(yùn)行一個(gè)外部腳本程序。
53.?netdump:遠(yuǎn)程網(wǎng)絡(luò)備份服務(wù)器守護(hù)進(jìn)程。
54.?netfs:Network?Filesystem?Mounter,該進(jìn)程安裝和卸載NFS、SAMBA和NCP網(wǎng)絡(luò)文件系統(tǒng)。
55.?nfs:網(wǎng)絡(luò)文件系統(tǒng)守護(hù)進(jìn)程。
56.?nfslock:NFS是一個(gè)流行的通過(guò)TCP/IP網(wǎng)絡(luò)共享文件的協(xié)議,此守護(hù)進(jìn)程提供了NFS文件鎖定功能。
57.?ntpd:Network?time?Protocol?daemon(網(wǎng)絡(luò)時(shí)間校正協(xié)議)。ntpd是用來(lái)使系統(tǒng)和一個(gè)精確的時(shí)間源保持時(shí)間同步的協(xié)議守護(hù)進(jìn)程。
58.?network:激活/關(guān)閉啟動(dòng)時(shí)的各個(gè)網(wǎng)絡(luò)接口守護(hù)進(jìn)程。
59.?psacct:該守護(hù)進(jìn)程包括幾個(gè)工具用來(lái)監(jiān)控進(jìn)程活動(dòng)的工具,包括ac,lastcomm,?accton?和sa。
60.?pcmcia:主要用于支持筆記本電腦接口守護(hù)進(jìn)程。
61.?portmap:該守護(hù)進(jìn)程用來(lái)支持RPC連接,RPC被用于NFS以及NIS?等服務(wù)。
62.?postgresql:?PostgreSQL?關(guān)系數(shù)據(jù)庫(kù)引擎。
63.?proftpd:?proftpd?是Unix下的一個(gè)配置靈活的ftp服務(wù)器的守護(hù)程序。
64.?pppoe:ADSL連接守護(hù)進(jìn)程。
65.?random?:保存和恢復(fù)系統(tǒng)的高質(zhì)量隨機(jī)數(shù)生成器,這些隨機(jī)數(shù)是系?統(tǒng)一些隨機(jī)行為提供的。
66.?rawdevices:在使用集群文件系統(tǒng)時(shí)用于加載raw設(shè)備的守護(hù)進(jìn)程。
67.?readahead、readahead_early:readahead和readahead_early是在Fedora?core?2中最新推出的兩個(gè)后臺(tái)運(yùn)行的守護(hù)程序。其作用是在啟動(dòng)系統(tǒng)期間,將啟動(dòng)系統(tǒng)所要用到的文件首先讀取到內(nèi)存中,然后在內(nèi)存中進(jìn)行執(zhí)行,以加快系統(tǒng)的啟動(dòng)速度。
68.?rhnsd:Red?Hat?網(wǎng)絡(luò)服務(wù)守護(hù)進(jìn)程。通知官方的安全信息以及為系統(tǒng)打補(bǔ)丁。
69.?routed?:該守護(hù)程序支持RIP協(xié)議的自動(dòng)IP路由表維護(hù)。RIP主要?使用在小型網(wǎng)絡(luò)上,大一點(diǎn)的網(wǎng)絡(luò)就需要復(fù)雜一點(diǎn)的協(xié)議。
70.?rsync:remote?sync遠(yuǎn)程數(shù)據(jù)備份守護(hù)進(jìn)程。?
71.?rsh?:遠(yuǎn)程主機(jī)上啟動(dòng)一個(gè)shell,并執(zhí)行用戶命令。
72.?rwhod:?允許遠(yuǎn)程用戶獲得運(yùn)行rwho守護(hù)程序的機(jī)器上所有已登錄用戶的列表。
73.?rstatd:一個(gè)為L(zhǎng)AN上的其它機(jī)器收集和提供系統(tǒng)信息的守候進(jìn)程。
74.?ruserd:遠(yuǎn)程用戶定位服務(wù),這是一個(gè)基于RPC的服務(wù),它提供關(guān)于當(dāng)前記錄到LAN上一個(gè)機(jī)器日志中的用戶信息
75.?rwalld:激活rpc.rwall服務(wù)進(jìn)程,這是一項(xiàng)基于RPC的服務(wù),允許用戶給每個(gè)注冊(cè)到LAN機(jī)器上的其他終端寫(xiě)消息?。
76.?rwhod:激活rwhod服務(wù)進(jìn)程,它支持LAN的rwho和ruptime服務(wù)。
77.?saslauthd:?使用SASL的認(rèn)證守護(hù)進(jìn)程。
78.?sendmail:郵件服務(wù)器sendmail守護(hù)進(jìn)程。
79.?smb:Samba文件共享/打印服務(wù)守護(hù)進(jìn)程。
80.?snmpd:本地簡(jiǎn)單網(wǎng)絡(luò)管理守護(hù)進(jìn)程。
81.?squid:代理服務(wù)器squid守護(hù)進(jìn)程。
82.?sshd:OpenSSH服務(wù)器守護(hù)進(jìn)程。Secure?Shell?Protocol可以實(shí)現(xiàn)安全地遠(yuǎn)程管理主機(jī)。
83.?smartd:Self?Monitor?Analysis?and?Reporting?Technology?System,監(jiān)控你的硬盤(pán)是否出現(xiàn)故障。
84.?syslog:一個(gè)讓系統(tǒng)引導(dǎo)時(shí)起動(dòng)syslog和klogd系統(tǒng)日志守候進(jìn)程的腳本。
85.?time?:該守護(hù)進(jìn)程從遠(yuǎn)程主機(jī)獲取時(shí)間和日期,采用TCP協(xié)議。
86.?time-udp:?該守護(hù)進(jìn)程從遠(yuǎn)程主機(jī)獲取時(shí)間和日期,采用UDP協(xié)議。
87.?tux:在Linux內(nèi)核中運(yùn)行apache服務(wù)器的守護(hù)進(jìn)程。
88.?vsftpd:vsftpd服務(wù)器的守護(hù)進(jìn)程。
89.?vncserver:?VNC?(Virtual?Network?Computing,虛擬網(wǎng)絡(luò)計(jì)算),它提供了一種在本地系統(tǒng)上顯示遠(yuǎn)程計(jì)算機(jī)整個(gè)"桌面"的輕量型協(xié)議。
90.?xfs:X?Window字型服務(wù)器守護(hù)進(jìn)程,為本地和遠(yuǎn)程X服務(wù)器提供字型集。
91.?xinetd:支持多種網(wǎng)絡(luò)服務(wù)的核心守護(hù)進(jìn)程。
92.?ypbind:為NIS(網(wǎng)絡(luò)信息系統(tǒng))客戶機(jī)激活ypbind服務(wù)進(jìn)程?。
93.?yppasswdd:NIS口令服務(wù)器守護(hù)進(jìn)程。
94.?ypserv:NIS主服務(wù)器守護(hù)進(jìn)程。
95.?yum:RPM操作系統(tǒng)自動(dòng)升級(jí)和軟件包管理守護(hù)進(jìn)程。二、守護(hù)進(jìn)程工作原理和方式
在Client/Server模式下。服務(wù)器監(jiān)聽(tīng)(Listen)在一個(gè)特定的端口上等待客戶連接。連接成功后服務(wù)器和客戶端通過(guò)端口進(jìn)行數(shù)據(jù)通信。守護(hù)進(jìn)程的工作就是打開(kāi)一個(gè)端口,并且等待(Listen)進(jìn)入連接。如果客戶端產(chǎn)生一個(gè)連接請(qǐng)求,守護(hù)進(jìn)程就創(chuàng)建(Fork)一個(gè)子服務(wù)器響應(yīng)這個(gè)連接,而主服務(wù)器繼續(xù)監(jiān)聽(tīng)其他的服務(wù)請(qǐng)求。2.守護(hù)進(jìn)程工作方式:
(1)運(yùn)行獨(dú)立的守護(hù)進(jìn)程
獨(dú)立運(yùn)行的守護(hù)進(jìn)程由init腳本負(fù)責(zé)管理,所有獨(dú)立運(yùn)行的守護(hù)進(jìn)程的腳本在/etc/rc.d/init.d/目錄下。系統(tǒng)服務(wù)都是獨(dú)立運(yùn)行的守護(hù)進(jìn)程包括:syslogd和cron等。運(yùn)行獨(dú)立的守護(hù)進(jìn)程工作方式稱(chēng)作:stand-alone。它Unix傳統(tǒng)的C/S模式的訪問(wèn)模式。服務(wù)器監(jiān)聽(tīng)(Listen)在一個(gè)特點(diǎn)的端口上等待客戶端的聯(lián)機(jī)。如果客戶端產(chǎn)生一個(gè)連接請(qǐng)求,守護(hù)進(jìn)程就創(chuàng)建(Fork)一個(gè)子服務(wù)器響應(yīng)這個(gè)連接,而主服務(wù)器繼續(xù)監(jiān)聽(tīng)。以保持多個(gè)子服務(wù)器池等待下一個(gè)客戶端請(qǐng)求。stand-alone模式工作原理見(jiàn)圖1。圖1?stand-alone工作模式
工作在stand-alone模式下的網(wǎng)絡(luò)服務(wù)有route、gated。另外是大家最熟悉是Web服務(wù)器:Apache和郵件服務(wù)器?Sendmail、域名服務(wù)器Bind。因?yàn)檫@些負(fù)載很大服務(wù)器上,預(yù)先創(chuàng)子服務(wù)器,可以通過(guò)客戶的服務(wù)速度。在Linux系統(tǒng)中通過(guò)stand-?alone工作模式啟動(dòng)的服務(wù)由/etc/rc.d/下面對(duì)應(yīng)的運(yùn)行級(jí)別當(dāng)中的符號(hào)鏈接啟動(dòng)。(2)xinetd模式
從守護(hù)進(jìn)程的概念可以看出,對(duì)于系統(tǒng)所要通過(guò)的每一種服務(wù),都必須運(yùn)行一個(gè)監(jiān)聽(tīng)某個(gè)端口連接所發(fā)生的守護(hù)進(jìn)程,這通常意味著資源浪費(fèi)。為了解決這個(gè)問(wèn)題,Linux引進(jìn)了“網(wǎng)絡(luò)守護(hù)進(jìn)程服務(wù)程序”的概念。Redhat?Linux?9.0使用的網(wǎng)絡(luò)守護(hù)進(jìn)程是xinted(eXtended?InterNET?daemon)。和stand-alone模式相比xinted模式也稱(chēng)?Internet?Super-Server(超級(jí)服務(wù)器)。xinetd能夠同時(shí)監(jiān)聽(tīng)多個(gè)指定的端口,在接受用戶請(qǐng)求時(shí),他能夠根據(jù)用戶請(qǐng)求的端口不同,啟動(dòng)不同的網(wǎng)絡(luò)服務(wù)進(jìn)程來(lái)處理這些用戶請(qǐng)求??梢园褁inetd看做一個(gè)管理啟動(dòng)服務(wù)的管理服務(wù)器,它決定把一個(gè)客戶請(qǐng)求交給那個(gè)程序處理,然后啟動(dòng)相應(yīng)的守護(hù)進(jìn)程。?xinetd模式工作原理見(jiàn)圖3。圖3?xinetd工作模式
和stand-alone工作模式相比,系統(tǒng)不想要每一個(gè)網(wǎng)絡(luò)服務(wù)進(jìn)程都監(jiān)聽(tīng)其服務(wù)端口。運(yùn)行單個(gè)xinetd就可以同時(shí)監(jiān)聽(tīng)所有服務(wù)端口,這樣就降低了系統(tǒng)開(kāi)銷(xiāo),保護(hù)系統(tǒng)資源。但是對(duì)于訪問(wèn)量大、經(jīng)常出現(xiàn)并發(fā)訪問(wèn)時(shí),xinetd想要頻繁啟動(dòng)對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)進(jìn)程,反而會(huì)導(dǎo)致系統(tǒng)性能下降。察看系統(tǒng)為L(zhǎng)inux服務(wù)提供那種模式方法在Linux命令行可以使用pstree命令可以看到兩種不同方式啟動(dòng)的網(wǎng)絡(luò)服務(wù)。一般來(lái)說(shuō)系統(tǒng)一些負(fù)載高的服務(wù):?sendmail、Apache服務(wù)是單獨(dú)啟動(dòng)的。而其他服務(wù)類(lèi)型都可以使用xinetd超級(jí)服務(wù)器管理。查看目前運(yùn)行的守護(hù)進(jìn)程可以使用命令:?“pstree”三、守護(hù)進(jìn)程管理工具
Linux提供了三種不同的守護(hù)進(jìn)程管理工具:redhat-config-services、ntsysv、chkconfig,可以根據(jù)具體需要靈活運(yùn)用。
(1)?redhat-config-services
redhat-config-services是一個(gè)一個(gè)圖形化應(yīng)用程序,它顯示了每項(xiàng)服務(wù)的描述,以及每項(xiàng)服務(wù)是否在引導(dǎo)時(shí)啟動(dòng)(運(yùn)行級(jí)別3、4、?5),并允許你啟動(dòng)、停止、或重新啟動(dòng)/etc/rc.d/init.d?中的哪些?SysV?服務(wù),哪些?xinetd?服務(wù)。要從桌面啟動(dòng)服務(wù)配置工具,點(diǎn)擊面板上的「主菜單」?=>?「系統(tǒng)設(shè)置」?=>?「服務(wù)器設(shè)置」?=>?「服務(wù)」,或在?shell?提示下,鍵入命令:“redhat-config-services”?(見(jiàn)圖4)。圖4?redhat-config-services配置工具
redhat-config-services列出了?/etc/rc.d/init.d?中的服務(wù)和由?xinetd?控制的服務(wù)。點(diǎn)擊左側(cè)列表中的服務(wù)名來(lái)顯示該服務(wù)的簡(jiǎn)短描述以及它的服務(wù)狀態(tài)。如果這個(gè)服務(wù)不是?xinetd?服務(wù),狀態(tài)窗口會(huì)顯示該服務(wù)目前是否在運(yùn)行。如果該服務(wù)被?xinetd?所控制,狀態(tài)窗口會(huì)顯示「xinetd?服務(wù)」這個(gè)短語(yǔ)。要立即啟動(dòng)、停止、或重新啟動(dòng)某項(xiàng)服務(wù),從列表中選擇該項(xiàng)服務(wù),然后點(diǎn)擊工具欄上的相應(yīng)按鈕(或從「行動(dòng)」拉下菜單中選擇行動(dòng))。如果該服務(wù)是一個(gè)?xinetd?服務(wù),行動(dòng)按鈕會(huì)被禁用,因?yàn)樗鼈儾荒鼙粏蝹€(gè)地啟動(dòng)或停止。?如果你通過(guò)選擇或取消選擇服務(wù)名旁的復(fù)選箱來(lái)啟用或禁用了?xinetd?服務(wù),你必須從拉下菜單中選擇「文件」?=>?「保存改變」來(lái)重新啟動(dòng)?xinetd,并立即啟用或禁用你所改變的?xinetd?服務(wù)。xinetd?還被配置成自動(dòng)記憶設(shè)置。你可以同時(shí)啟用或禁用多個(gè)?xinetd?服務(wù),在結(jié)束后再保存改變。
(2)ntsysv
ntsysv?工具為激活或停運(yùn)服務(wù)提供了簡(jiǎn)單的界面。你可以使用?ntsysv?來(lái)啟動(dòng)或關(guān)閉由?xinetd?管理的服務(wù)。你還可以使用?ntsysv?來(lái)配置運(yùn)行級(jí)別。按照默認(rèn)設(shè)置,只有當(dāng)前運(yùn)行級(jí)別會(huì)被配置。要配置不同的運(yùn)行級(jí)別,使用?--level?選項(xiàng)來(lái)指定一個(gè)或多個(gè)運(yùn)行級(jí)別。譬如,命令?ntsysv?--level?345?配置運(yùn)行級(jí)別3、4、和5。?ntsysv?的工作界面見(jiàn)圖1。使用上下箭頭來(lái)上下查看列表。使用空格鍵來(lái)選擇或取消選擇服務(wù),或用來(lái)“按”「確定」和「取消」按鈕。要在服務(wù)列表和「確定」、「取消」按鈕中切換,使用?[Tab]鍵。*?標(biāo)明某服務(wù)被設(shè)為啟動(dòng)。[F1]?鍵會(huì)彈出每項(xiàng)服務(wù)的簡(jiǎn)短描述。
(3)chkconfig
chkconfig?命令也可以用來(lái)激活和解除服務(wù)。chkconfig?--list?命令顯示系統(tǒng)服務(wù)列表,以及這些服務(wù)在運(yùn)行級(jí)別0到6中已被啟動(dòng)(on)還是停止(off)。chkconfig?還能用來(lái)設(shè)置某一服務(wù)在某一指定的運(yùn)行級(jí)別內(nèi)被啟動(dòng)還是被停運(yùn)。譬如,要在運(yùn)行級(jí)別3、4、5中停運(yùn)?nfs?服務(wù),使用下面的命令:
chkconfig?--level?345?nfs?off
四、合理選擇守護(hù)進(jìn)程規(guī)避安全隱患
運(yùn)行不必要或有漏洞的守護(hù)進(jìn)程會(huì)給操作系統(tǒng)帶來(lái)安全和性能上的影響。對(duì)于系統(tǒng)安全來(lái)說(shuō),如果操作系統(tǒng)中的任何一個(gè)漏洞,都可能使整個(gè)系統(tǒng)受到***。所以,增加系統(tǒng)安全的最佳辦法就是盡量監(jiān)視系統(tǒng)的功能。文章開(kāi)始介紹了重要的守護(hù)進(jìn)程,其中“crond、syslog、keytable、xinetd、?kudzu、iptables”等是需要運(yùn)行的,echo、echo-udp、daytime、daytime-udp、chargen、chargen?-udp主要是做調(diào)試用,普通用戶基本用不到,可以關(guān)閉。
r字開(kāi)頭的守護(hù)進(jìn)程:rsh、rstatd、rsync、rusersd、rwalld這些命令都是Berkley遠(yuǎn)程命令,因?yàn)槎家宰帜竢開(kāi)頭,故稱(chēng)?r*命令。主要使用來(lái)使一臺(tái)計(jì)算機(jī)上的某個(gè)用戶以相同的帳戶遠(yuǎn)程執(zhí)行另一臺(tái)計(jì)算機(jī)的一個(gè)程序。但是,r命令已經(jīng)被證實(shí)存在安全風(fēng)險(xiǎn)。對(duì)于確實(shí)需要的守護(hù)進(jìn)程,應(yīng)該盡量選用最新的版本程序,并增加其安全防范。?
另外我們還要合理選擇守護(hù)進(jìn)程例如innd是運(yùn)行新聞組服務(wù)的進(jìn)程,如果用戶不做Usenet服務(wù)器,應(yīng)該關(guān)掉??偨Y(jié):
基于開(kāi)放源代碼的Linux給用戶提供了這樣一個(gè)平臺(tái):可以根據(jù)自己的軟、硬件環(huán)境,定制自己的Linux守護(hù)進(jìn)程。因此,根據(jù)每個(gè)用戶不同的應(yīng)用范圍定制應(yīng)用環(huán)境,可以將Linux系統(tǒng)的安全和性能提升到新的高度
                        
                        
                        轉(zhuǎn)載于:https://blog.51cto.com/evils798/1420845
總結(jié)
以上是生活随笔為你收集整理的深入理解Linux守护进程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
 
                            
                        - 上一篇: 孕妇做梦梦到骆驼什么意思
- 下一篇: 做梦梦到红内裤是什么意思
