xref: /illumos-gate/usr/src/man/man1/kbd.1 (revision de11c9b6)
1'\" te
2.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
3.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
4.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
5.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
6.Dd April 29, 2019
7.Dt KBD 1
8.Os
9.Sh NAME
10.Nm kbd
11.Nd
12manipulate the state of keyboard, or display the type of keyboard, or
13change the default keyboard abort sequence effect
14.Sh SYNOPSIS
15.Nm
16.Op Fl r
17.Op Fl t
18.Op Fl l
19.Op Fl a Ar enable | Ar disable | Ar alternate
20.Op Fl c Ar on | Ar off
21.Op Fl d Ar keyboard device
22.Op Fl A Ar autorepeat count
23.Op Fl D Ar autorepeat delay
24.Op Fl R Ar autorepeat rate
25.Nm
26.Op Fl i
27.Op Fl d Ar keyboard device
28.Nm
29.Fl s Op Ar language
30.Nm
31.Fl b Op Ar keyboard | Ar console
32.Ar frequency
33.Sh DESCRIPTION
34The
35.Nm
36utility manipulates the state of the keyboard, or displays the
37keyboard type, or allows the default keyboard abort sequence effect to be
38changed.
39The abort sequence also applies to serial console devices.
40The
41.Nm
42utility sets the
43.Pa /dev/kbd
44default keyboard device.
45.Sh EXTENDED DESCRIPTION
46The
47.Fl i
48option reads and processes default values for the keyclick and
49keyboard abort settings from the keyboard configuration service,
50.Sy svc:/system/keymap:default .
51Only keyboards that support a clicker respond to the
52.Fl c
53option.
54.Pp
55The keyboard abort sequence effect can only be changed by a super-user using
56the
57.Fl a
58option.
59This sequence is typically Stop-A or L1-A and Shift-Pause on the keyboard on
60.Sy SPARC
61systems, F1-A and Shift-Pause on x86 systems,
62and BREAK on the serial console input device on most systems.
63.Pp
64A
65.Sy BREAK
66condition that originates from an erroneous electrical signal
67cannot be distinguished from one deliberately sent by remote
68.Sy DCE .
69As a remedy, use the
70.Fl a
71option with Alternate Break to switch break interpretation.
72Due to the risk of incorrect sequence interpretation, binary
73protocols such as
74.Sy SLIP
75and others should not be run over the serial console port when Alternate Break
76sequence is in effect.
77.Pp
78Although PPP is a binary protocol, it has the ability to avoid using characters
79that interfere with serial operation.
80The default alternate break sequence is
81CTRL-m
82.Sy ~
83CTRL-b, or
84.Sy 0D 7E 02
85in hexadecimal.
86In PPP, this can be avoided by setting either
87.Sy 0x00000004
88or
89.Sy 0x00002000
90in the ACCM.
91This forces an escape for the CTRL-b or CTRL-m characters, respectively.
92.Pp
93To do this in Solaris PPP 4.0, add:
94.Pp
95.Dl asyncmap 0x00002000
96.Pp
97to the
98.Pa /etc/ppp/options
99file or any of the other configuration files used for the connection.
100See
101.Xr pppd 8 .
102.Pp
103SLIP has no comparable capability, and must not be used if the Alternate Break
104sequence is in use.
105.Pp
106The Alternate Break sequence has no effect on the keyboard abort.
107For more information on the Alternate Break sequence, see
108.Xr asy 4D .
109.Pp
110On many systems, the default effect of the keyboard abort sequence is to
111suspend the operating system and enter the debugger or the monitor.
112Some systems feature key switches with a
113.Sy secure
114position.
115On these systems, setting the key switch to the
116.Sy secure
117position overrides any software default set with this command.
118.Sh OPTIONS
119The following options are supported:
120.Bl -hang
121.It Fl a Ar enable | Ar disable | Ar alternate
122.Pp
123Enables, disables, or alternates the keyboard abort sequence effect.
124By default, a keyboard abort sequence suspends the operating system on most
125systems.
126This sequence is typically
127.Sy Stop-A
128or
129.Sy L1-A
130and
131.Sy Shift-Pause
132on the keyboard on
133.Sy SPARC
134systems,
135.Sy F1-A
136and
137.Sy Shift-Pause
138on x86 systems, and
139.Sy BREAK
140on the serial console device.
141.Pp
142The default keyboard behavior can be changed using this option.
143The
144.Fl a
145option can only be used by a super-user.
146.Bl -hang
147.It Ar enable
148Enables the default effect of the keyboard abort sequence (suspend the
149operating system and enter the debugger or the monitor).
150.It Ar disable
151Disables the default/alternate effect and ignores keyboard abort sequences.
152.It Ar alternate
153Enables the alternate effect of the keyboard abort sequences (suspend the
154operating system and enter the debugger or the monitor) upon receiving the
155Alternate Break character sequence on the console.
156The Alternate Break sequence is defined by the
157.Xr asy 4D
158driver.
159Due to a risk of incorrect sequence interpretation, binary protocols cannot be
160run over the serial console port when this value is used.
161.El
162.It Fl A Ar count
163.Pp
164Sets autorepeat count.
165Value
166.Sy -1
167denotes unlimited autorepeat (default).
168.It Fl b Ar keyboard | Ar console
169.Pp
170Sets the beeper frequency for keyboard or console.
171.Bl -hang
172.It Ar keyboard
173Set the keyboard beeper frequency to the operand in HZ.
174See
175.Sx OPERANDS .
176.It Ar console
177Sets the console beeper frequency to the operand in HZ.
178See
179.Sx OPERANDS .
180.El
181.It Fl c Ar on | Ar off
182.Pp
183Turns the clicking of the keyboard on or off.
184.Bl -hang
185.It Ar on
186Enables clicking
187.It Ar off
188Disables clicking
189.El
190.It Fl d Ar keyboard device
191.Pp
192Specifies the keyboard device being set.
193The default setting is
194.Pa /dev/kbd .
195.It Fl D Ar autorepeat delay
196.Pp
197Sets the autorepeat delay in milliseconds.
198.It Fl i
199.Pp
200Sets keyboard properties from the keyboard default file.
201With the exception of
202.Fl d Ar keyboard device ,
203this option cannot be used with any other option.
204The
205.Fl i
206option instructs the keyboard command to read and process
207keyclick and keyboard abort default values from the keyboard configuration
208service,
209.Sy svc:/system/keymap:default .
210The
211.Fl i
212option can only be used by a user or role with the
213.Sy Device Security Rights Profile .
214.It Fl l
215.Pp
216Returns the layout code of the keyboard being used, and the autorepeat delay
217and autorepeat rate being used.
218.Pp
219If used with
220.Fl R
221or
222.Fl D
223option, this option returns the value before the changes.
224.It Fl r
225Resets the keyboard as if power-up.
226.It Fl R Ar autorepeat rate
227.Pp
228Sets the autorepeat rate in milliseconds.
229.It Fl s Op Ar language
230.Pp
231Sets the keyboard layout into the kernel.
232.Pp
233If
234.Ar language
235is specified, the layout is set to
236.Ar language ,
237and
238.Xr loadkeys 1
239runs implicitly.
240If
241.Ar language
242is not specified, a list of available layouts are presented, prompting for the
243user to specify the
244.Ar language .
245See
246.Sx OPERANDS .
247.It Fl t
248.Pp
249Returns the type of the keyboard being used.
250.El
251.Sh OPERANDS
252The following operands are supported:
253.Bl -hang
254.It Ar frequency
255The frequency value specified to be set in kernel.
256The receiver of this value is specified by the
257.Fl b
258option.
259This value should be between 0 and 32767 otherwise will be ejected with
260.Sy EINVAL .
261.It Ar language
262The language specified to be set in kernel.
263If the language is not found, the languages supported are listed for selection.
264It only applies to
265.Fl s
266option.
267.El
268.Sh FILES
269.Bl -ohang
270.It Pa /dev/kbd
271Keyboard device file.
272.El
273.Sh EXAMPLES
274.Bl -ohang
275.It Sy Example 1 Displaying the Keyboard Type
276.Pp
277The following example displays the keyboard type:
278.Pp
279.Dl example% kbd -t
280.Dl Type 4 Sun keyboard
281.Dl example%
282.El
283.Bl -ohang
284.It Sy Example 2 Setting Keyboard Defaults
285.Pp
286The following example sets the keyboard defaults as specified in the keyboard
287default file:
288.Pp
289.Dl example# kbd -i
290.Dl example#
291.El
292.Bl -ohang
293.It Sy Example 3 Displaying Information
294.Pp
295The following example displays keyboard type and layout code.
296It also displays auto repeat delay, rate and count settings.
297.Pp
298.Dl example% kbd -l
299.Dl type=6
300.Dl layout=274 (0x112)
301.Dl delay(ms)=500
302.Dl rate(ms)=40
303.Dl count=unlimited
304.Dl example%
305.El
306.Bl -ohang
307.It Sy Example 4 Setting Keyboard Autorepeat Delay
308.Pp
309The following example sets the keyboard autorepeat delay:
310.Pp
311.Dl example% kbd -D 300
312.Dl example%
313.El
314.Bl -ohang
315.It Sy Example 5 Setting Keyboard Autorepeat Rate
316.Pp
317The following example sets the keyboard autorepeat rate:
318.Pp
319.Dl example% kbd -R 50
320.Dl example%
321.El
322.Bl -ohang
323.It Sy Example 6 Selecting and Setting the Keyboard Language
324.Pp
325The following example selects and sets the keyboard language from a list of
326languages specified:
327.Pp
328.Bd -literal -offset indent -compact
329example% kbd -s
3301. Albanian                      16. Malta_UK
3312. Belarusian                    17. Malta_US
3323. Belgian                       18. Norwegian
3334. Bulgarian                     19. Portuguese
3345. Croatian                      20. Russian
3356. Danish                        21. Serbia-And-Montenegro
3367. Dutch                         22. Slove
337\&......
338
339To select the keyboard layout, enter a number [default n]:
340
341example%
342.Ed
343.Pp
344The following example sets the keyboard language specified:
345.Pp
346.Dl example% kbd -s Dutch
347.Dl example%
348.El
349.Bl -ohang
350.It Sy Example 7 Setting the Keyboard Beeper Frequency
351.Pp
352The following example sets the keyboard beeper frequency:
353.Pp
354.Dl example% kbd -b keyboard 1000
355.Dl example%
356.El
357.Sh SEE ALSO
358.Xr loadkeys 1 ,
359.Xr svcs 1 ,
360.Xr asy 4D ,
361.Xr virtualkm 4D ,
362.Xr kb 4M ,
363.Xr keytables 5 ,
364.Xr attributes 7 ,
365.Xr smf 7 ,
366.Xr kadb 8 ,
367.Xr pppd 8 ,
368.Xr svcadm 8
369.Sh NOTES
370Some server systems have key switches with a
371.Sy secure
372key position that can be read by system software.
373This key position overrides the normal default of the keyboard abort sequence
374effect and changes the default so the effect is disabled.
375When the key switch is in the
376.Sy secure
377position on these systems, the keyboard abort sequence effect cannot be
378overridden by the software default, which is settable with the
379.Nm
380utility.
381.Pp
382Currently, there is no way to determine the state of the keyboard click
383setting.
384.Pp
385The
386.Nm
387service is managed by the service management facility,
388.Xr smf 7 ,
389under the service identifier:
390.Pp
391.Dl svc:/system/keymap:default
392.Pp
393Administrative actions on this service, such as enabling, disabling, or
394requesting restart, can be performed using
395.Xr svcadm 8 .
396Use
397.Xr svccfg 8
398to make configuration changes and to view configuration information for this
399service.
400The service's status can be queried using the
401.Xr svcs 1
402command.
403