Scroll to navigation

XINETD(8) System Manager's Manual XINETD(8)

NAME

xinetd - 擴展的互聯網服務守護進程

總覽 SYNOPSIS

xinetd [options]

描述 DESCRIPTION

xinetd 執行與 inetd 相同的任務:它啓動提供互聯網服務的程序。與在系統初始化時啓動這些服務器,讓它們保持休眠,直到有連接請求到達才提供服務這種做法不同, fBxinetd 是唯一的被啓動的守護進程,它偵聽各種服務在它們各自的配置文件中列出的所有端口。當一個請求到達,xinetd 啓動合適的服務器。因爲它以這種方式操作,xinetd (還有 inetd) 常被稱作超級服務器。

列在 xinetd 的配置文件中的服務可以分爲兩組。第一組的服務稱爲 多線程的 (multi-threaded) 並且它們需要爲每個新的連接請求產生 (fork) 一個新的服務器進程。接下來新的服務器將處理那個連接。對於這些服務,xinetd 保持偵聽新的請求從而可以孵化 (spawn) 新的服務器。另一方面,第二組包含着需要由服務器守護進程處理所有新的連接請求的服務。這些服務稱爲 單線程的 (single-threaded) 並且 xinetd 將停止爲它們處理新的請求,直到這個服務器退出。這個組中的服務一般都是基於數據報的。

至今,超級服務器存在的唯一理由是通過避免大量產生生命週期中大部分時間可能都是空閒着的進程,從而節省系統資源。當實現這種功能時, fBxinetd 從超級服務器這種思想中獲得了好處,可以提供訪問控制和日誌等特性。更進一步,xinetd 不僅限於偵聽 /etc/services 中列出的服務。因此,任何人都可以使用 xinetd 來啓動特殊用途的服務器。

選項 OPTIONS

-d
啓用調試模式。這樣將產生大量調試輸出,並且使得在 xinetd 上使用一個調試器成爲可能。
-syslog syslog_facility
這個選項使得 syslog 使用指定的日誌功能來記錄 xinetd 產生的消息。可以使用下列功能: daemon, auth, user, local[0-7] (參見 syslog.conf(5) 來查看它們的意義)。這個選項在 debug 模式是無效的,因爲所有的相關信息都將送到終端上。
-filelog logfile
xinetd 產生的信息將放到指定文件中。信息總是添加到文件之後。如果文件不存在,將會被創建。這個選項在 debug 模式無效,因爲所有的相關信息都將送到終端上。
-f config_file
決定xinetd 用來配置的文件。默認設置是 /etc/xinetd.conf
-pidfile pid_file

進程 ID 被寫入的文件。這個選項在 debug 模式無效。
-dontfork
指定xinetd 在前臺運行,而不是分離自身以支持由 init 或 daemontools 運行。這個選項自動設置了 -stayalive (參見下面)。
-stayalive
指定xinetd 保持運行,即使沒有指定服務。
-limit proc_limit
這個選項爲 xinetd 可以啓動的並行運行的進程數設置了一個上限。目的是防止進程表溢出。
-logprocs limit
這個選項爲服務遠程用戶的並行運行的進程數設置了一個上限。
-version
這個選項使得 xinetd 打印出它的版本信息。
-inetd_compat
這個選項使得 xinetd 在標準的配置文件之外,附加地讀取/etc/inetd.conf/etc/inetd.conf 的讀取是在讀取標準的配置文件之後。
-cc interval
這個選項指定 xinetdinterval 秒對內部狀態進行一次定時的一致性檢查。

syslogfilelog 選項是互相獨立的。如果沒有指定任何一個,默認將使用 syslog 的 daemon 功能。你不應將 xinetd 信息與和服務日誌相關的信息相混淆。後者只有在配置文件中指定之後纔會記錄。

控制 xinetd CONTROLLING XINETD

xinetd 收到一定的信號時會執行一定的動作。與特定信號相關聯的特定動作可以通過修改 config.h 並且重新編譯來重新定義。
SIGHUP
導致一個強制的重新配置,意味着 xinetd 重新讀取配置文件,停止不再有效的服務的服務器。在正在運行的服務器上將刷新訪問控制,檢查遠程位置,訪問時間和服務器實例。如果允許的服務器實例數減少了,一些隨機選取的服務器將會被殺掉來滿足限制; 這將在任何服務器停止之後發生,因爲不能通過遠程位置或訪問時間的檢查(this will happen after any servers are terminated because of failing the remote location or access time checks)。還有,如果 INTERCEPT 標誌被清除後又重新設置,此服務的任何運行中的服務器將被停止。這樣做的目的是保證在強制的重新配置之後,沒有那種接受從不遵循訪問控制標準的地址發來的包的服務器在運行。
SIGQUIT
導致程序退出。
SIGTERM
xinetd 退出之前,停止所有運行中的服務器。
SIGUSR1
導致內部狀態轉儲 (默認的轉儲文件是 /var/run/xinetd.dump;要改變文件名,修改 config.h 然後重新編譯。)
SIGIOT
導致一個內部一致性檢查來覈對程序使用的數據結構沒有崩潰。當檢查結束時, xinetd 將產生一個消息,報告測試是成功了還是失敗了。

重新配置的時候,日誌文件被關閉又重新打開。這樣做允許移除舊的日誌文件。

文件 FILES

/etc/xinetd.conf
默認的配置文件
/var/run/xinetd.dump
默認的轉儲文件

參見 SEE ALSO

inetd(8),

xinetd.conf(5),

xinetd.log(5)

http://cr.yp.to/daemontools.html

作者 AUTHOR

Panos Tsirigotis, CS Dept, University of Colorado, Boulder Rob Braun

發音 PRONUNCIATION

zy-net-d

[中文版維護人]

袁乙鈞 <bbbush@163.com>

[中文版最新更新]

2003.11.04

《中國linux論壇man手冊頁翻譯計劃》:

http://cmpp.linuxforum.net

本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh
14 June 2001