Manpages

NAME

inetd - 因 特 网 “超 级 服 务 ”

总 览

inetd - [ -d ] [ -q 队 列 长 度 ] [ 配 置 文 件 名 ]

描 述

inetd通 常 在 系 统 启 动 时 由 /etc/rc.local引 导 。 inetd会 监 听 指 定 internet端 口 是 否 有 连 接 要 求 。 当 发 现 有 某 个 端 口 有 连 接 要 求 时 , inetd将 决 定 由 哪 个 服 务 器 进 程 来 响 应 该 连 接 要 求 , 并 调 用 该 服 务 器 程 序 。 当 程 序 运 行 结 束 后 , inetd会 继 续 对 该 端 口 进 行 监 听 ( 除 了 以 下 所 涉 及 的 原 因 ) 。 从 本 质 上 讲 , inetd可 以 只 运 行 一 个 守 护 进 程 , 该 守 护 进 程 可 以 在 需 要 时 调 用 其 它 服 务 进 程 , 从 而 减 轻 系 统 负 担 。

选 项

inetd的 可 用 选 项 :

-d 打 开 调 试 功 能 。

-q 队 列 长 度 设 置 端 口 监 听 队 列 的 长 度 值 , 默 认 值 为

128。

说 明

在 运 行 时 , inetd会 读 取 它 的 配 置 文 件 , 默 认 为 /etc/inetd.conf。 该 配 置 文 件 的 每 一 个 栏 都 有 一 个 条 目 , 栏 中 每 一 项 由 空 格 或 制 表 符 进 行 分 隔 。 以 井 号 开 头 的 是 注 释 文 本 。 其 格 式 如 下 所 示 :

service name 服 务 名

socket type 接 口 类 型
protocol 协 议 名

wait/nowait[.max] 等 待 /不 等 待

user[.group] 用 户 /组

server program 服 务 器 程 序

server program arguments 服 务 器 程 序 参 数 如 果 定 义 的 是 基 于 Sun-RPC的 服 务 , 则 将 包 含 有 以 下 内 容 :

service name/version 服 务 名

socket type 接 口 类 型

rpc/protocol 协 议 名

wait/nowait[.max] 等 待 /不 等 待

user[.group] 用 户 /组

server program 服 务 器 程 序

server program arguments 服 务 器 程 序 参 数 服 务 名 指 的 是 一 个 在 文 件 /etc/services中 有 定 义 的 合 法 服 务 。 相 对 局 域 网 而 言 ( 下 面 讨 论 ) , 服 务 名 须 为 该 服 务 的 官 方 名 称 ( 即 , 处 于 文 件 /etc/services中 的 第 一 行 ) 。 当 定 义 一 个 基 于 Sun-RPC的 服 务 时 , 此 栏 内 容 须 是 一 个 在 文 件 /etc/rpc中 有 定 义 的 合 法 服 务 名 。 在 斜 械 右 侧 的 是 RPC的 版 本 号 。 此 版 本 号 可 以 是 一 个 单 一 数 字 , 也 可 以 是 一 个 从 低 到 高 的 版 本 范 围 , 如 : “rusers/1-3”。 接 口 类 型 则 是 “stream”、 “dgram”、 “raw”、 “rdm”或 “seqpacket”中 的 一 个 , 这 取 决 于 其 数 据 的 类 型 是 什 么 。 协 议 名 须 是 在 文 件 /etc/protocols中 有 定 义 的 合 法 协 议 。 例 如 : “tcp”或 “udp”。 基 于 RPC的 服 务 可 以 定 义 为 : “rpc/tcp”或 “rpc/udp”。 等 待 /不 等 待 栏 仅 当 定 义 接 口 类 型 为 datagram时 有 效 ( 其 它 接 口 在 这 里 都 使 用 “不 等 待 ”) 。 如 果 希 望 一 个 数 据 包 到 达 它 的 同 侪 后 , 服 务 器 立 刻 释 放 端 口 , 使 inetd可 以 继 续 监 听 此 端 口 , 即 称 为 “多 线 程 服 务 ”, 此 时 该 栏 须 设 为 “不 等 待 ”。 如 果 服 务 器 都 在 一 个 端 口 传 输 数 据 包 而 且 不 会 将 此 端 口 释 放 , 则 称 此 为 “单 一 线 程 ”, 此 时 应 设 此 栏 为 “等 待 ”。 Comsat(8)talkd(8)是 后 一 种 数 据 类 型 的 应 用 。 Tftpd(8)则 是 一 个 例 外 , 此 数 据 服 务 建 立 的 是 一 个 虚 拟 的 连 接 , 为 了 避 免 竞 争 , 此 处 应 设 为 “等 待 ”。 服 务 器 读 在 取 第 一 个 数 据 包 后 , 重 新 建 立 一 个 新 的 接 口 供 inetd继 续 提 供 监 听 使 用 , 而 旧 的 接 口 将 在 处 理 完 该 任 务 后 将 自 动 中 断 。 可 选 项 后 缀 “max”( 与 “等 待 ”可 “不 等 待 ”用 逗 号 分 隔 ) 定 义 inetd在 60秒 内 提 供 服 务 的 最 大 进 程 数 , 缺 省 值 为 40。 用 户 栏 应 包 含 可 以 使 用 该 服 务 程 序 用 户 的 用 户 名 。 此 选 项 充 许 赋 于 inetd服 务 器 程 序 低 于 root的 权 限 。 可 以 在 用 户 名 后 用 逗 号 分 隔 加 上 组 名 称 , 此 选 项 可 以 使 inetd在 运 行 时 以 所 定 义 的 组 身 份 运 行 而 非 /etc/password文 件 中 定 义 的 身 份 。 如 果 在 此 定 义 了 组 名 而 所 定 义 的 用 户 名 不 是 root 时 , 该 用 户 所 在 组 的 名 字 将 自 动 附 加 到 此 处 。 服 务 器 程 序 栏 应 包 含 全 路 径 的 服 务 器 程 序 名 , inetd在 监 听 到 某 套 接 字 上 有 请 求 时 会 调 过 该 服 务 器 程 序 。 如 果 某 服 务 由 inetd内 部 提 供 , 则 此 处 应 填 “internal”。 服 务 器 程 序 参 数 栏 中 应 包 含 所 有 服 务 器 程 序 运 行 时 必 须 的 各 参 数 。 如 果 服 务 程 序 由 inetd内 部 提 供 , 则 此 处 应 填 “internal”。

inetd通 过 内 部 常 规 工 作 , 自 身 也 提 供 一 些 小 的 服 务 。 这 些 服 务 有 “echo”、 “discard”、 “chargen”、 “daytime”( 人 类 语 言 ) 和 “time”( 以 秒 为 单 位 的 机 器 语 言 , 从 1900年 1月 1日 零 时 开 始 计 时 ) 。 所 有 这 些 服 务 都 是 基 于 tcp的 。 如 想 更 深 一 步 了 解 这 些 服 务 , 可 以 从 网 上 获 得 相 关 RFC文 档 。

inetd在 接 收 到 SIGHUP挂 起 信 号 后 会 重 新 读 取 其 配 置 文 件 。 在 重 读 配 置 文 件 后 , 可 能 增 加 、 减 少 或 改 变 已 有 的 服 务 。 inetd在 运 行 时 会 创 建 一 个 /var/run/inetd.pid的 文 件 用 来 存 放 它 的 进 程 号 。

另 见 SEE ALSO

comsat(8), fingerd(8), ftpd(8), rexecd(8), rlogind(8), rshd(8), lnetd(8), tftpd(8)

历 史 HISTORY

inetd 命 令 最 早 出 现 在 4.3BSD中 。 对 基 于 Sun-RPC的 服 务 支 持 从 SunOS 4.1开 始 。

[中 文 版 维 护 人 ]

所 罗 门 <solomen [AT] email.cn>

[中 文 版 最 新 更 新 ]

2000/11/21

《 中 国 linux论 坛 man手 册 页 翻 译 计 划 》 :

http://cmpp.linuxforum.net

本 页 面 中 文 版 由 中 文 man 手 册 页 计 划 提 供 。 中 文 man 手 册 页 计 划 : https://github.com/man-pages-zh/manpages-zh