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
    這個選項指定 xinetd 每 interval 秒對內部狀態進行一次定時的一致性檢查。

syslog 和 filelog 選項是互相獨立的。如果沒有指定任何一個，預設將使用 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