/etc/uucp/Devices 文件包含可用于与远程计算机建立链路的所有设备的信息。这些设备包括 ACU(包括高速调制解调器)、直接链路和网络连接。
/etc/uucp/Devices 文件中的项具有以下语法:
Type Line Line2 Class Dialer-Token-Pairs |
以下是 Devices 文件中对应于与端口 A 连接且以 38,400 bps 速度运行的 U.S. Robotics V.32bis 调制解调器的项。
ACUEC cua/a - 38400 usrv32bis-ec |
对应类型字段的项。有关更多信息,请参见/etc/uucp/Devices 文件中的类型字段。
对应线路字段的项。有关更多信息,请参见/etc/uucp/Devices 文件中的线路字段。
对应线路 2 字段的项。有关更多信息,请参见/etc/uucp/Devices 文件中的线路 2 字段。
对应类字段的项。有关更多信息,请参见/etc/uucp/Devices 文件中的类字段。
对应拨号器-令牌对字段的项。有关更多信息,请参见/etc/uucp/Devices 文件中的拨号器-令牌对字段。
此字段说明设备建立的链路类型。UUCP 类型字段可以包含下面各节中介绍的某个关键字。
Direct 关键字主要出现在 cu 连接的项中。此关键字指明链路是连接其他计算机或端口选定器的直接链路。请为通过 cu 的 -l 选项引用的每一行单独创建一项。
ACU 关键字指明连接远程计算机的链路(无论通过 cu、UUCP、asppp 还是 Solaris PPP 4.0)是通过调制解调器建立的。可以将此调制解调器直接连接到您的计算机,也可以通过端口选定器间接连接到您的计算机。
端口选定器是类型字段中的变量,由端口选定器的名称替换。端口选定器是连接到网络的设备,用于提示输入呼叫调制解调器的名称,随后授予访问权限。文件 /etc/uucp/Dialers 包含仅用于 micom 和 develcon 端口选定器的调用程序脚本。可以将您自己的端口选定器项添加到 Dialers 文件中。有关更多信息,请参见UUCP /etc/uucp/Dialers 文件。
此变量由类型字段中的计算机名称替换,它指明链路是连接此特定计算机的直接链路。可使用此命名方案将 Devices 项中的行与 /etc/uucp/Systems 中用于计算机 System-Name 的项进行关联。
示例 26–5 显示 /etc/uucp/Devices 中的字段与 /etc/uucp/Systems 中的字段的比较。Devices 文件的类型字段中使用的关键字要与 Systems 文件项的第三个字段匹配。在 Devices 文件中,类型字段具有 ACUEC 项,指明本例中的自动呼叫装置为 V.32bis 调制解调器。此值与 Systems 文件中的类型字段(也包含 ACUEC 项)匹配。有关更多信息,请参见UUCP /etc/uucp/Systems 文件。
以下是 Devices 文件中的项的示例。
ACUEC cua/a - 38400 usrv32bis-ec |
以下是 Systems 文件中的项的示例。
Arabian Any ACUEC 38400 111222 ogin: Puucp ssword:beledi |
此字段包含与 Devices 项关联的线路(称为端口)的设备名称。如果与特定项关联的调制解调器已连接到 /dev/cua/a 设备(串行端口 A),则输入此字段的名称将为 cua/a。在线路字段中可以使用可选调制解调器控制标志 M 来指明设备应该处于打开状态,而无需等待载体。例如:
cua/a,M |
此字段为占位符。请始终使用连字符 (-)。 801 型拨号器(在 Solaris OS 中不受支持)使用线路 2 字段。非 801 拨号器通常不使用此配置,但仍要求在此字段中使用连字符。
如果在类型字段中使用关键字 ACU 或 Direct,则类字段包含设备的速度。不过,类字段可以包含字母和速度(如 C1200 或 D1200)以区分拨号器的类,如 Centrex 或 Dimension PBX。
由于许多大型办公室具有多种类型的电话网络,因此这种区分是必要的。一个网络可能专供内部办公室通信,而另一个网络用于处理外部通信。在这种情况下,必须区分内部通信应该使用的线路和外部通信应该使用的线路。
Devices 文件的类字段中使用的关键字应与 Systems 文件的速度字段匹配。
ACU cua/a - D2400 hayes |
某些设备可以在任何速度下使用,因此可以在类字段中使用关键字 Any。如果使用 Any,则线路可以满足 Systems 文件的速度字段中请求的任何速度。如果此字段为 Any 且 Systems 文件速度字段也为 Any,则缺省速度为 2400 bps。
拨号器-令牌对 (Dialer-Token-Pairs, DTP) 字段包含拨号器的名称及传递该名称的令牌。DTP 字段具有以下语法:
dialer token [dialer token]
dialer 部分可以是调制解调器和端口监视器的名称,也可以是直接链路设备的 direct 或 uudirect。您可以具有任意数目的拨号器-令牌对。如果 dialer 部分不存在,则可以从 Systems 文件的相关项中获取它。token 部分可以紧接在 dialer 部分之后提供。
最后一个拨号器-令牌对可能不存在,具体取决于关联的拨号器。在大多数情况下,最后一对仅包含 dialer 部分。token 部分可以从关联的 Systems 文件项的电话字段中获取。
dialer 部分中的有效项可以在 Dialers 文件中定义,也可以是几种特殊拨号器类型之一。这些特殊的拨号器类型被编译为软件,因此即使 Dialers 文件中不包含相应的项,也可以使用这些特殊的拨号器类型。以下列出了特殊的拨号器类型。
TCP/IP 网络
传输级别接口网络(不含 STREAMS)
传输级别接口网络(含 STREAMS)
有关更多信息,请参见/etc/uucp/Devices 文件中的协议定义。
可以采用四种不同的方式构建 DTP 字段,具体视与项关联的设备而定。
以下是构建 DTP 字段的第一种方式:
直接连接的调制解调器-如果调制解调器直接连接至计算机上的端口,则关联的 Devices 文件项的 DTP 字段只有一对,通常是调制解调器的名称。此名称用于将特定的 Devices 文件项与 Dialers 文件中的项进行匹配。因此,拨号器字段必须与 Dialers 文件项的第一个字段匹配。
Dialers hayes =,-, "" \\dA\pTE1V1X1Q0S2=255S12=255\r\c \EATDT\T\r\c CONNECT |
请注意,Devices 文件项的 DTP 字段中仅存在 dialer 部分 (hayes)。这意味着将被传递给拨号器的 token(在本例中为电话号码)来自 Systems 文件项的电话字段。(\T 被隐含了,如示例 26–9 所示。)
以下是构建 DTP 字段的第二种和第三种方式:
直接链路-对于与特定计算机的直接链路,关联项的 DTP 字段包含关键字 direct。这种情况对于两类直接链路项 Direct 和 System-Name 都适用。 请参阅/etc/uucp/Devices 文件中的类型字段。
同一端口选定器上的计算机-如果要与之通信的计算机与您的计算机位于同一个端口选定器交换机上,则您的计算机必须首先访问该交换机。然后,该交换机将与其他计算机进行连接。这类项只具有一对。dialer 部分用于匹配 Dialers 文件项。
Dialers develcon ,"" "" \pr\ps\c est:\007 \E\D\e \007 |
如上所示,token 部分被保留为空。这指示从 Systems 文件中检索令牌。此计算机的 Systems 文件项的电话字段中包含令牌,电话字段通常是为计算机的电话号码而保留的。有关详细信息,请参阅 UUCP /etc/uucp/Systems 文件。此类 DTP 包含转义符 (\D),可确保电话字段的内容不被解释为有效的 Dialcodes 文件项。
以下是构建 DTP 字段的第四种方式:
连接至端口选定器的调制解调器-如果高速调制解调器连接至端口选定器,则计算机必须首先访问端口选定器交换机。该交换机将与调制解调器进行连接。此类项需要两个拨号器-令牌对。每一对的 dialer 部分(项的第五个和第七个字段)用于匹配 Dialers 文件项,如下所示。
develcon "" "" \pr\ps\c est:\007 \E\D\e \007 ventel =&-% t"" \r\p\r\c $ <K\T%\r>\c ONLINE! |
在第一对中,develcon 是拨号器,vent 是传递给 Develcon 交换机的令牌,用于告知该交换机与您的计算机连接的设备,如 Ventel 调制解调器。由于可以采用不同的方式来设置每个交换机,因此该令牌对于每个端口选定器都是唯一的。连接 Ventel 调制解调器后,即可访问第二对。Ventel 是拨号器,令牌来自 Systems 文件。
DTP 字段中可以出现两个转义符:
\T-指示应使用 /etc/uucp/Dialcodes 文件来转换电话(token) 字段。此转义符通常位于与调制解调器(如 Hayes 和 U.S. Robotics)关联的每个调用程序脚本的 /etc/uucp/Dialers 文件中。因此,访问调用程序脚本之前不会进行转换。
\D-指示不应使用 /etc/uucp/Dialcodes 文件来转换电话(token) 字段。如果未在 Devices 项的结尾指定转义符,则假设具有 \D(缺省值)。\D 还可以在包含与网络交换机 develcon 和 micom 关联的项的 /etc/uucp/Dialers 文件中使用。
可以定义 /etc/uucp/Devices 中的每个设备使用的协议。由于可以使用缺省协议,也可以使用正在调用的特定系统定义协议,因此该规范通常是不必要的。有关详细信息,请参阅 UUCP /etc/uucp/Systems 文件。如果确实要指定协议,则必须使用以下格式:
Type,Protocol [parameters] |
例如,可以使用 TCP,te 来指定 TCP/IP 协议。
下表显示了 Devices 文件的可用协议。
表 26–2 /etc/uucp/Devices 中使用的协议
协议 |
说明 |
---|---|
此协议通常用于通过 TCP/IP 和其他可靠连接的传输。t 采用无错传输。 |
|
此协议是 UUCP 的固有协议。g 速度较慢,但非常可靠且适用于通过噪音较大的电话线的传输。 |
|
此协议采用通过面向消息的无错通道进行的传输,面向消息的通道与面向字节流的通道(如 TCP/IP)相反。 |
|
此协议用于通过 X.25 连接的传输。f 依赖于数据流的流控制,且对于通过(几乎)可保证无错的链路(特别是 X.25/PAD 链路)进行传输非常有意义。只能针对整个文件执行校验和。如果传输失败,接收方可以请求重新传输。 |
以下示例显示了设备项的协议名称:
TCP,te - - Any TCP - |
此示例指明,对于设备 TCP,应尝试使用 t 协议。如果传输的另一端拒绝,则使用 e 协议。