kbd [-r] [-t ] [ -l] [-a enable | disable | alternate] [-c on | off] [-d keyboard device ] [-D autorepeat delay] [ -R autorepeat rate]
kbd [-i] [-d keyboard device]
kbd -s [language]
kbd -b [keyboard | console] frequency
kbd 实用程序操控键盘的状态、显示键盘类型或允许更改缺省的键盘异常中止序列影响。异常中止序列也适用于串口控制台设备。kbd 实用程序将 /dev/kbd 设置为缺省键盘设备。
对于具有 solaris.smf.value.keymap 授权的用户,例如具有设备安全权限配置文件的那些用户,所有更改都是永久的,除非提供了 –T 选项或者在命令行上指定了键盘设备时。
–i 选项从键盘配置服务 svc:/system/keymap:default 读取并处理 keyclick 和 keyboard 异常中止设置的缺省值。只有支持按键发音器的键盘可以响应 –c 选项。
只有超级用户可以使用 –a 选项更改键盘异常中止序列影响。通常,该序列在 SPARC 系统的键盘上为 Stop-A 或 L1-A 和 Shift-Pause,在 x86 系统上为 F1-A 和 Shift-Pause,在大多数系统的串口控制台输入设备上为 BREAK。
无法将由错误的电子信号导致的 BREAK 情况与由远程 DCE 故意发送的该指令进行区分。作为修正措施,可以将 –a 选项与“替代中断”结合使用来切换中断解释。由于存在序列解释错误的风险,在施行“替代中断”序列时,不应通过串口控制台端口运行二进制协议(如 SLIP 和其他协议)。
尽管 PPP 是二进制协议,但它具有避免使用会干扰串行操作的字符的能力。缺省的“替代中断”序列为 CTRL-m ~ CTRL-b 或十六进制的 0D 7E 02。在 PPP 中,这可以通过在 ACCM 中设置 0x00000004 或 0x00002000 来避免。这分别强制实施 CTRL-b 和 CTRL-m 字符的转义。
要在 Solaris PPP 4.0 中执行此操作,应将以下内容:
asyncmap 0x00002000
添加到 /etc/ppp/options 文件或用于连接的任何其他配置文件。请参见 pppd(1M)。
SLIP 没有类似功能,使用“替代中断”序列时,不得使用 SLIP。
“替代中断”序列对键盘异常中止没有影响。有关“替代中断”序列的更多信息,请参见 zs(7D)、se(7D) 和 asy(7D)。
在许多系统上,键盘异常中止序列的缺省影响是暂停操作系统并进入调试器或监视器。某些系统具有带有一个安全位置的键开关。在这些系统上,将键开关设置到该安全位置可以覆盖该命令的任何软件缺省设置。
当施行“替代中断”序列时,只有串口控制台设备会受影响。
支持以下选项:
重新引导系统、运行 kbd -i 或刷新 svc:/system/keymap:default 时,所有更改都是临时的并且将被恢复。对于没有适当授权的用户,无论是否提供了 –T 选项,所有更改都是临时的。
启用、禁用或替代键盘异常中止序列影响。缺省情况下,在大多数系统上,键盘异常中止序列会暂停操作系统。通常,该序列在 SPARC 系统的键盘上为 Stop-A 或 L1-A 和 Shift-Pause,在 x86 系统上为 F1-A 和 Shift-Pause,在串口控制台设备上为 BREAK。
可以使用该选项更改缺省的键盘行为。只有超级用户可以使用 –a 选项。
设置键盘或控制台的蜂鸣器频率。
将键盘蜂鸣器频率设置为操作数,以 HZ 为单位。请参见“操作数”部分。
将控制台蜂鸣器频率设置为操作数,以 HZ 为单位。请参见“操作数”部分。
打开或关闭键盘按键音。
启用按键音
禁用按键音
指定要进行设置的键盘设备。缺省设置为 /dev/kbd。
设置自动重复延迟,以毫秒为单位。
通过 keymap 服务设置键盘属性。除了 -d keyboard device 之外,该选项不能与任何其他选项一起使用。-i 选项指示键盘命令从 keymap 服务中的键盘属性读取和处理 keyclick 和 keyboard 异常中止缺省值。–i 选项只能由具有 "Device Security"(设备安全)权限配置文件的用户或角色使用。
返回正在使用的键盘布局代码,以及正在使用的自动重复延迟和自动重复频率。
如果与 –R 或 –D 选项一起使用,该选项将返回更改之前的值。
将键盘重置为刚打开电源时的设置。
设置自动重复速率,以毫秒为单位。
将键盘布局设置到内核。
如果指定了 language,则会将布局设置为 language。如果未指定 language,则会显示可用的布局列表,用以提示用户指定 language。请参见“操作数”部分。
返回正在使用的键盘的类型。
支持下列操作数:
所指定的要在内核中设置的频率值。该值的接收方是由 –b 选项指定的。该值应该介于 0 和 32767 之间,否则将会被拒绝并返回 EINVAL。
所指定的要在内核中设置的语言。如果未发现语言,则会列出受支持的语言以供选择。它仅适用于 –s 选项。
以下示例显示了键盘类型:
example% kbd -t Type 4 Sun keyboard example%示例 2 设置键盘缺省值
以下示例将键盘缺省值设置为 keymap 服务中指定的值:
example# kbd -i example#示例 3 显示信息
以下示例显示了键盘类型和布局代码。它还显示了自动重复延迟和自动重复频率设置。
example% kbd -l type=4 layout=43 (0x2b) delay(ms)=500 rate(ms)=33 example%示例 4 设置键盘自动重复延迟
以下示例设置键盘自动重复延迟:
example% kbd -D 300 example%示例 5 设置键盘自动重复频率
以下示例设置键盘自动重复频率:
example% kbd -R 50 example%示例 6 选择和设置键盘语言
以下示例从指定的语言列表中选择并设置键盘语言:
example% kbd -s 1. Albanian 16. Malta_UK 2. Belarusian 17. Malta_US 3. Belgian 18. Norwegian 4. Bulgarian 19. Portuguese 5. Croatian 20. Russian 6. Danish 21. Serbia-And-Montenegro 7. Dutch 22. Slove ...... To select the keyboard layout, enter a number [default n]: example%
以下示例设置指定的键盘语言:
example% kbd -s Dutch example%示例 7 设置键盘蜂鸣器频率
以下示例设置键盘蜂鸣器频率:
example% kbd -b keyboard 1000 example%
键盘设备文件
有关下列属性的说明,请参见 attributes(5):
|
kmdb(1)、loadkeys(1)、svcs(1)、svccfg(1M)、svcadm(1M)、pppd(1M)、keytables(4)、attributes(5)、smf(5)、kb(7M)、zs(7D)、se(7D)、asy(7D)、virtualkm(7D)
某些服务器系统具有带有一个安全键位置的键开关,系统软件可以读取该键位置。该键位置覆盖了键盘异常中止序列影响的正常缺省值,并更改缺省值以禁用该影响。在这些系统上,当键开关位于安全位置时,键盘异常中止序列影响不能被可使用 kbd 实用程序设置的软件缺省值覆盖。
目前,没有方法可用来确定键盘单击设置的状态。
kdb 服务由服务管理工具 smf(5) 管理,其服务标识符为:
svc:/system/keymap:default
可以使用 svcadm(1M) 来对此服务执行管理操作(如启用、禁用或请求重新启动)。启动和重新启动该服务的职责已委托给 inetd(1M)。使用 inetadm(1M) 可以为该服务进行配置更改以及查看该服务的配置信息。可以使用 svcs(1) 命令来查询服务的状态。