作者: 賴榮樞
http://www.goodman-lai.idv.tw
系統服務位居NT家族作業系統的重要角色,這類的程式通常沒有使用者操作介面,大多在幕後默默執行,因此使用者可能會忽略了這類程式的存在;絕大多數伺服端軟體都是以這種方式執行,並藉由TCP/IP(即適當的協定和通訊埠)與用戶端或其他伺服端通訊,而這也更為凸顯了系統服務的重要性。
系統服務的確影響Windows甚鉅,您可能在討論系統安全的書籍讀過類似這樣的話:「為了Windows系統安全,應該關閉不必要的系統服務」;或許您也曾經在說明Windows系統效能的文件看過類似的說明:「為了提高Windows執行效能,您可以關閉不必要的系統服務」。
系統服務能不能關閉、該不該關閉,端視您的電腦需不需要系統服務所提供的功能,也就是說,不同角色、身處不同環境的電腦,所需要的系統服務也就不同;例如網域伺服器所需要的系統服務,與檔案伺服器就有些為差異。因此本文希望能列舉、說明常用的系統服務,以作為使用者調校Windows的參考資料。
何謂系統服務 | |
常用的系統服務 | |
未完待續 |
Service這個字在Windows世界出現的相當頻繁,相對的,中譯的「服務」也經常可見於中文的Windows世界。因此在正式說明本文之前,必須先對本文意欲探討的「系統服務」作個清楚的說明。
本文指稱的「系統服務」,是指由SCM(service control manager,服務控制管理員)所執行、控制的程式。這種程式通常稱為Windows Services,也因源起於Windows NT,因此之前稱為NT Services,而且只有NT血緣的Windows才支援這種類型的程式(Windows 2000/XP/2003都支援,但Windows 95/98/Me則不支援)。
系統服務是由Windows系統的SCM控制,使用者可以利用圖形操作介面或命令列,透過SCM控制系統服務的啟動、暫停、繼續執行、結束;例如系統管理工具的「服務」(services.msc),就是經常用來操控系統服務的MMC(Microsoft Management Console)工具,而Net指令搭配Start、Stop、Pause、Continue,則可以從命令列環境操控系統服務。系統服務是由SCM啟動,執行之初必須向SCM註冊,而SCM則會以登錄資料庫維護系統服務的相關資訊(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services)。
系統服務可以在任何使用者登入系統之前,就從系統開機時自動執行,就算開機之後沒有使用者登入Windows系統,系統也可以自動執行系統服務。也就是因為系統服務不需要使用者登入系統亦能執行,因此需要在背景持續執行、且與系統層級功能有關的軟體,通常就會實作成系統服務。
系統服務程式通常會有三個名稱(以Windows Time為例):一個是程式執行檔的檔案名稱,例如Svchost.exe;第二個是用來顯示,因此也稱為「顯示名稱」或friendly name(例如Windows Time);第三個通常是用在命令列操控,也稱為「服務名稱」或system name(以此例為W32Time)。一般來說,一支系統服務程式可能內附了好幾個系統服務,而因為系統服務程式在執行之初需要向系統的SCM註冊,因此SCM能瞭解程式裡的細節,所以若是以GUI管理工具設定系統服務的選項,管理工具能透過SCM顯示、設定各個系統服務;但若要以命令列指令操控,就需要指定系統服務的「服務名稱」。
系統服務有三種啟動類型:
• | 自動(Automatic):系統服務會隨電腦啟動而自動執行。 |
• | 手動(Manual):系統服務「不」會隨電腦啟動而自動執行,但可以由使用者或其他程式啟動執行。 |
• | 已停用(Disabled):系統服務無法被啟動。 |
只要系統服務不是設定成「已停用」,都可以由使用者或其他程式調整其執行狀態,包括啟動(Start)、停止(Stop,也就是結束)或繼續(Resume)、暫停(Pause,尚未結束,還留在記憶體)。
要注意的是,系統服務是一種程式的規格,因此其他的廠商也可以利用這種規格來實作自家的軟體。再者,不同版本Windows所內建的系統服務也會有所不同。
每個系統服務也都有其登入的身份,而不同的身份可能會有不同的執行權。此外,系統服務也會互相依存;例如假設A和B相互依存,若停用A,那麼B也無法啟動。如果系統服務的登入身份權限不足,或者停用了執行其他系統服務需要的系統服務,都會影響系統服務的正常執行,而如果系統服務的執行出了問題,通常都必須利用事件檢視器觀閱錯誤訊息。
以下我將簡要說明常用的Windows系統服務(版本則以Windows Server 2003為主,也會穿插若干Windows XP的系統服務),這些說明能作為您是否要停用系統服務的參考。括號裡的是系統服務的服務名稱(SCM對服務名稱是不分大小寫),而我也會列出伺服端系統服務所使用的協定以及通訊埠。此外,以下所列舉的系統服務包含了Windows內建(例如Alerter)、額外安裝了Windows內建的功能才會出現(例如Microsoft POP3 Service),或者額外安裝了伺服器軟體才會出現(例如MSSQLSERVER),而且有些系統服務適用於用戶端電腦,有些是伺服端專屬,有些則是兩者都有。
• | Alerter(Alerter):這個系統服務與Messenger(不是微軟的即時通訊軟體)類似,因此一起說明。這兩個可算是古老的系統服務了,它們使用相同的方式提供簡易的網路訊息傳遞功能,例如Messenger可以讓Net Send指令將文字訊息傳到另一部電腦(不過Net Send及Net Name等指令已沒有作用),而Alerter的原始目的是讓系統管理員將系統管理的警示傳給其他電腦。但是這兩個系統服務的功能太陽春,而且有安全疑慮,因此許多版本的Windows Service Pack都會停用這兩個系統服務,而且Windows Server 2003預設也已停用兩個系統服務(您也應該停用)。 | ||||||||||||||||
• | Application Layer Gateway Service(ALG):網際網路連線共用(ICS)和Windows防火牆需要這個系統服務,Windows Server 2003的預設啟動類型是手動。這個系統服務不只能讓網路協定通過Windows防火牆,還能讓網路協定於ICS之後運作;ALG會開啟通訊埠並更改封包裡的通訊埠、IP位址等資料。ALG是以外掛的方式協助特定的網路協定與Windows防火牆和ICS共同運作,也就是說,各種網路協定就可能需要不同的ALG外掛。 | ||||||||||||||||
• | Application Management(AppMgmt):Windows 2000開始提供的軟體安裝服務需要這個系統服務(例如透過網路將軟體「指派」、「發行」給用戶端,或者從用戶端將軟體移除)。Windows Server 2003的預設啟動類型是手動。 | ||||||||||||||||
• | ASP.NET State Service(aspnet_state):這個系統服務會儲存階段(session)資料,讓ASP.NET可以利用socket作行程外(out-of-process)的通訊。系統預設並不會安裝這個系統服務,除非您為網站伺服器安裝了ASP.NET。 | ||||||||||||||||
• | Automatic Updates(Wuauserv):用在「自動更新」的系統服務,讓電腦能夠自動連上微軟的網站檢查、下載、安裝修補程式;不建議將此系統服務設為停用。 | ||||||||||||||||
• | Background Intelligent Transfer Service(BITS):這個系統服務能利用HTTP 1.1在網路閒置時於背景傳送資料,Windows Update會用到這項系統服務。不建議設為停用。 | ||||||||||||||||
• | Certificate Services(CertSvc):這個系統服務是用來發行、管理數位憑證,並且是以RPC和DCOM與用戶端通訊;諸如S/MIME(Secure/Multipurpose Internet Mail Extensions)、SSL(Secure Sockets Layer)、EFS(Encrypting File System)、IPSec(IP Security)、智慧卡等眾多的應用登需要數位憑證。
| ||||||||||||||||
• | ClipBook(ClipSrv):讓Windows能透過網路共享剪貼簿資料的系統服務。因為有安全疑慮,因此應該停用。Windows Server 2003預設已停用。停用這項系統服務只是不能共用遠端電腦的剪貼簿資料,並不會影響本機電腦的應用程式彼此透過剪貼簿共用資料。 | ||||||||||||||||
• | Cluster Service(ClusSvc):如果想讓伺服器具備叢集功能,就不能停用這項系統服務。Web版的Windows Server 2003並不支援叢集功能。
| ||||||||||||||||
• | COM+ Event System(EventSystem):與COM+有關的系統服務,能自動將COM元件相關的事件傳送給元件的訂閱者(subscriber,相對於提供COM元件功能的發行者,publisher)。建議不應停用這項系統服務,可設為手動。 | ||||||||||||||||
• | COM+ System Application(COMSysApp):這項系統服務掌管COM+的服務,並且管理COM+應用程式的設定。如果停用這項系統服務,COM+應用程式就無法執行,而且也無法管理系統的COM+或OLE機制。 | ||||||||||||||||
• | Computer Browser(Brower):與Server、Workstation等系統服務共同提供Windows網路功能。Windows Server 2003預設為自動。 | ||||||||||||||||
• | Cryptographic Services(CryptSvc):這項系統服務提供了金鑰管理的功能,是由類別目錄資料庫服務、受保護的根目錄服務、金鑰服務等三項服務所構成。 | ||||||||||||||||
• | DHCP Server及DHCP Client(DHCPServer/Dhcp):用在DHCP協定的系統服務。
| ||||||||||||||||
• | Distributed File System(Dfs):分散式檔案系統伺服端所需要的系統服務,Windows Server 2003預設是自動。
| ||||||||||||||||
• | Distributed Link Tracking Server及Distributed Link Tracking Client(TrkSvr/TrkWks):用來追蹤網域裡分散式檔案的移動情形。
| ||||||||||||||||
• | Distributed Transaction Coordinator(MSDTC):這是個用來協調分散式環境「交易」、管理相關資源的系統服務。分散式環境裡的訊息、資料庫、檔案系統大多以「交易」的方式進行傳遞,MSDTC可以擔任交易時的協調工作,例如COM+、MSMQ或SQL Server都需要這項系統服務。Windows Server 2003預設是自動啟用這項系統服務。
| ||||||||||||||||
• | DNS Server及DNS Client(DNS/Dnscache):非常重要的網路系統服務,是用來提供網路名稱服務(Domain Name Service)。
| ||||||||||||||||
• | Error Reporting Service(ERSvc):用來將系統的錯誤回報給微軟的系統服務,預設都是自動。 | ||||||||||||||||
• | Event Log(Eventlog):記錄由系統及程式所產生的事件訊息,並可由『事件檢視器』關閱所記錄的事件訊息。預設都是自動。
| ||||||||||||||||
• | Fax Service(Fax):提供用戶端傳真功能的系統服務。
| ||||||||||||||||
• | File Replication(NtFrs):這項系統服務讓Windows 2000/2003網域控制器能夠複製SYSVOL資料夾的內容。
| ||||||||||||||||
• | File Server for Macintosh(MacFile):麥金塔電腦能夠透過網路,存取執行這項系統服務的伺服器。
| ||||||||||||||||
• | FTP Publishing Service(MSFTPSVC):這項系統服務可以讓電腦具備FTP伺服器的功能,IIS的FTP功能就是使用這項系統服務。
| ||||||||||||||||
• | Help and Support(helpsvc):Windows的『說明及支援』需要這項系統服務才能運作。 |
本文列舉了常用的Windows系統服務(而且將重點放在伺服端),而Windows的系統服務當然不只本文所列,在下一篇的文章,我們將繼續說明其他的系統服務,並且也會說明不同角色的伺服器,所需要的最小、最基本的系統服務。
參考資料
• | Windows System Programming 3/e中文版(碁峰出版,Johnson M. Hart著,賴榮樞譯) |
• | Service overview and network port requirements for the Windows Server system |
自由广告区 |
分类导航 |
邮件新闻资讯: IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮 电子邮箱 | 反垃圾邮件|邮件客户端|网络安全 行业数据 | 邮件人物 | 网站公告 | 行业法规 网络技术: 邮件原理 | 网络协议 | 网络管理 | 传输介质 线路接入 | 路由接口 | 邮件存储 | 华为3Com CISCO技术 | 网络与服务器硬件 操作系统: Windows 9X | Linux&Uinx | Windows NT Windows Vista | FreeBSD | 其它操作系统 邮件服务器: 程序与开发 | Exchange | Qmail | Postfix Sendmail | MDaemon | Domino | Foxmail KerioMail | JavaMail | Winwebmail |James Merak&VisNetic | CMailServer | WinMail 金笛邮件系统 | 其它 | 反垃圾邮件: 综述| 客户端反垃圾邮件|服务器端反垃圾邮件 邮件客户端软件: Outlook | Foxmail | DreamMail| KooMail The bat | 雷鸟 | Eudora |Becky! |Pegasus IncrediMail |其它 电子邮箱: 个人邮箱 | 企业邮箱 |Gmail 移动电子邮件:服务器 | 客户端 | 技术前沿 邮件网络安全: 软件漏洞 | 安全知识 | 病毒公告 |防火墙 攻防技术 | 病毒查杀| ISA | 数字签名 邮件营销: Email营销 | 网络营销 | 营销技巧 |营销案例 邮件人才:招聘 | 职场 | 培训 | 指南 | 职场 解决方案: 邮件系统|反垃圾邮件 |安全 |移动电邮 |招标 产品评测: 邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端 |