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 .TH KBD 1 "Jan 29, 2007" 7 .SH NAME 8 kbd \- manipulate the state of keyboard, or display the type of keyboard, or 9 change the default keyboard abort sequence effect 10 .SH SYNOPSIS 11 .LP 12 .nf 13 \fBkbd\fR [\fB-r\fR] [\fB-t\fR ] [\fB-l\fR] [\fB-a\fR enable | disable | alternate] 14 [\fB-c\fR on | off] [\fB-d\fR \fIkeyboard device\fR] 15 [\fB-D\fR \fIautorepeat delay\fR] [\fB-R\fR \fIautorepeat rate\fR] 16 .fi 17 18 .LP 19 .nf 20 \fBkbd\fR [\fB-i\fR] [\fB-d\fR \fIkeyboard device\fR] 21 .fi 22 23 .LP 24 .nf 25 \fBkbd\fR \fB-s\fR [\fIlanguage\fR] 26 .fi 27 28 .LP 29 .nf 30 \fBkbd\fR \fB-b\fR [\fBkeyboard\fR | \fBconsole\fR] \fIfrequency\fR 31 .fi 32 33 .SH DESCRIPTION 34 .LP 35 The \fBkbd\fR utility manipulates the state of the keyboard, or displays the 36 keyboard type, or allows the default keyboard abort sequence effect to be 37 changed. The abort sequence also applies to serial console devices. The 38 \fBkbd\fR utility sets the \fB/dev/kbd\fR default keyboard device. 39 .SH EXTENDED DESCRIPTION 40 .LP 41 The \fB-i\fR option reads and processes default values for the keyclick and 42 keyboard abort settings from the \fB/etc/default/kbd\fR keyboard default file. 43 Only keyboards that support a clicker respond to the \fB-c\fR option. To turn 44 clicking on by default, add or change the value of the \fBKEYCLICK\fR variable 45 in the \fB/etc/default/kbd\fR file to: 46 .sp 47 .in +2 48 .nf 49 KEYCLICK=on 50 .fi 51 .in -2 52 .sp 53 54 .sp 55 .LP 56 Next, run the command \fBkbd\fR \fB-i\fR to change the setting. Valid settings 57 for the \fBKEYCLICK\fR variable are \fBon\fR and \fBoff\fR; all other values 58 are ignored. If the \fBKEYCLICK\fR variable is not specified in the default 59 file, the setting is unchanged. 60 .sp 61 .LP 62 The keyboard abort sequence effect can only be changed by a super-user using 63 the \fB-a\fR option. This sequence is typically Stop-A or L1-A and Shift-Pause 64 on the keyboard on \fBSPARC\fR systems, F1-A and Shift-Pause on x86 systems, 65 and BREAK on the serial console input device on most systems. 66 .sp 67 .LP 68 A \fBBREAK\fR condition that originates from an erroneous electrical signal 69 cannot be distinguished from one deliberately sent by remote \fBDCE\fR. As a 70 remedy, use the \fB-a\fR option with Alternate Break to switch break 71 interpretation. Due to the risk of incorrect sequence interpretation, binary 72 protocols such as \fBSLIP\fR and others should not be run over the serial 73 console port when Alternate Break sequence is in effect. 74 .sp 75 .LP 76 Although PPP is a binary protocol, it has the ability to avoid using characters 77 that interfere with serial operation. The default alternate break sequence is 78 CTRL-m \fB~\fR CTRL-b, or \fB0D 7E 02\fR in hexadecimal. In PPP, this can be 79 avoided by setting either \fB0x00000004\fR or \fB0x00002000\fR in the ACCM. 80 This forces an escape for the CTRL-b or CTRL-m characters, respectively. 81 .sp 82 .LP 83 To do this in Solaris PPP 4.0, add: 84 .sp 85 .in +2 86 .nf 87 asyncmap 0x00002000 88 .fi 89 .in -2 90 .sp 91 92 .sp 93 .LP 94 to the \fB/etc/ppp/options\fR file or any of the other configuration files used 95 for the connection. See \fBpppd\fR(1M). 96 .sp 97 .LP 98 SLIP has no comparable capability, and must not be used if the Alternate Break 99 sequence is in use. 100 .sp 101 .LP 102 The Alternate Break sequence has no effect on the keyboard abort. For more 103 information on the Alternate Break sequence, see \fBzs\fR(7D), \fBse\fR(7D), 104 and \fBasy\fR(7D). 105 .sp 106 .LP 107 On many systems, the default effect of the keyboard abort sequence is to 108 suspend the operating system and enter the debugger or the monitor. Some 109 systems feature key switches with a \fBsecure\fR position. On these systems, 110 setting the key switch to the \fBsecure\fR position overrides any software 111 default set with this command. 112 .sp 113 .LP 114 To permanently change the software default effect of the keyboard abort 115 sequence, first add or change the value of the \fBKEYBOARD_ABORT\fR variable in 116 the \fB/etc/default/kbd\fR file to: 117 .sp 118 .in +2 119 .nf 120 KEYBOARD_ABORT=disable 121 .fi 122 .in -2 123 .sp 124 125 .sp 126 .LP 127 Next, run the command \fBkbd\fR \fB-i\fR to change the setting. Valid settings 128 are \fBenable\fR, \fBdisable\fR, and \fBalternate\fR; all other values are 129 ignored. If the variable is not specified in the default file, the setting is 130 unchanged. 131 .sp 132 .LP 133 To set the abort sequence to the hardware BREAK, set the value of the 134 \fBKEYBOARD_ABORT\fR variable in the \fB/etc/default/kbd\fR file to: 135 .sp 136 .in +2 137 .nf 138 KEYBOARD_ABORT=enable 139 .fi 140 .in -2 141 .sp 142 143 .sp 144 .LP 145 To change the current setting, run the command \fBkbd\fR \fB-i\fR. To set the 146 abort sequence to the Alternate Break character sequence, first set the current 147 value of the \fBKEYBOARD_ABORT\fR variable in the \fB/etc/default/kbd\fR file 148 to: 149 .sp 150 .in +2 151 .nf 152 KEYBOARD_ABORT=alternate 153 .fi 154 .in -2 155 .sp 156 157 .sp 158 .LP 159 Next, run the command \fBkbd\fR \fB-i\fR to change the setting. When the 160 Alternate Break sequence is in effect, only serial console devices are 161 affected. 162 .sp 163 .LP 164 To set the autorepeat delay by default, set the \fBREPEAT_DELAY\fR variable in 165 the file \fB/etc/default/kbd\fR to the expected value with units in 166 milliseconds (ms). To avoid making the keyboard unusable due to a typographical 167 error, delay values below \fBKIOCRPTDELAY_MIN\fR (defined in 168 \fB/usr/include/sys/kbio.h\fR) are rejected with \fBEINVAL\fR: 169 .sp 170 .in +2 171 .nf 172 REPEAT_DELAY=500 173 .fi 174 .in -2 175 .sp 176 177 .sp 178 .LP 179 To set the autorepeat rate by default, set the \fBREPEAT_RATE\fR variable in 180 the file \fB/etc/default/kbd\fR to the expected value with units in 181 milliseconds. Negative and zero repeat rates are ejected with \fBEINVAL\fR: 182 .sp 183 .in +2 184 .nf 185 REPEAT_RATE=33 186 .fi 187 .in -2 188 .sp 189 190 .sp 191 .LP 192 To change the current settings of \fIdelay\fR and \fIrate\fR, run the command, 193 \fBkbd\fR \fB-i\fR. When the Auto Repeat Delay and/or Auto Repeat Rate are in 194 effect, only command line mode is affected. 195 .sp 196 .LP 197 To set the language by default, set the \fBLAYOUT\fR variable in the file 198 \fB/etc/default/kbd\fR to the expected language. These languages supported in 199 kernel can be found by running \fBkbd\fR \fB-s\fR. Other values are ignored. 200 For example, the following sets Spanish layout to the keyboard: 201 .sp 202 .in +2 203 .nf 204 LAYOUT=Spanish 205 .fi 206 .in -2 207 .sp 208 209 .sp 210 .LP 211 Next, run the \fBkbd\fR \fB-i\fR to change the setting. When Solaris reboots, 212 the Spanish key table is loaded into the kernel. These layouts are valid for 213 \fBusb\fR and \fBps/2\fR keyboards. 214 .sp 215 .LP 216 To set the keyboard beeper frequency by default, set the \fBKBD_BEEPER_FREQ\fR 217 variable in the file \fB/etc/default/kbd\fR to the expected value with units in 218 HZ. This value should be between 0 and 32767, inclusive. Otherwise will be 219 rejected with \fBEINVAL\fR: 220 .sp 221 .in +2 222 .nf 223 KBD_BEEPER_FREQ=2000 224 .fi 225 .in -2 226 .sp 227 228 .sp 229 .LP 230 To set the console beeper frequency by default, set the 231 \fBCONSOLE_BEEPER_FREQ\fR variable in the file \fB/etc/default/kbd\fR to the 232 expected value with units in HZ. This value should be between 0 and 32767, 233 inclusive. Otherwise will be rejected with \fBEINVAL\fR: 234 .sp 235 .in +2 236 .nf 237 CONSOLE_BEEPER_FREQ=900 238 .fi 239 .in -2 240 .sp 241 242 .sp 243 .LP 244 To change the current settings of keyboard beeper frequency and console beeper 245 frequency, run \fBkbd\fR \fB-i\fR. 246 .SH OPTIONS 247 .LP 248 The following options are supported: 249 .sp 250 .ne 2 251 .na 252 \fB\fB-a\fR \fBenable\fR | \fBdisable\fR | \fBalternate\fR\fR 253 .ad 254 .sp .6 255 .RS 4n 256 Enables, disables, or alternates the keyboard abort sequence effect. By 257 default, a keyboard abort sequence suspends the operating system on most 258 systems. This sequence is typically Stop-A or L1-A and Shift-Pause on the 259 keyboard on \fBSPARC\fR systems, F1-A and Shift-Pause on x86 systems, and BREAK 260 on the serial console device. 261 .sp 262 The default keyboard behavior can be changed using this option. The \fB-a\fR 263 option can only be used by a super-user. 264 .sp 265 .ne 2 266 .na 267 \fB\fBenable\fR\fR 268 .ad 269 .RS 13n 270 Enables the default effect of the keyboard abort sequence (suspend the 271 operating system and enter the debugger or the monitor). 272 .RE 273 274 .sp 275 .ne 2 276 .na 277 \fB\fBdisable\fR\fR 278 .ad 279 .RS 13n 280 Disables the default/alternate effect and ignores keyboard abort sequences. 281 .RE 282 283 .sp 284 .ne 2 285 .na 286 \fB\fBalternate\fR\fR 287 .ad 288 .RS 13n 289 Enables the alternate effect of the keyboard abort sequences (suspend the 290 operating system and enter the debugger or the monitor) upon receiving the 291 Alternate Break character sequence on the console. The Alternate Break sequence 292 is defined by the drivers \fBzs\fR(7D), \fBse\fR(7D), \fBasy\fR(7D). Due to a 293 risk of incorrect sequence interpretation, binary protocols cannot be run over 294 the serial console port when this value is used. 295 .RE 296 297 .RE 298 299 .sp 300 .ne 2 301 .na 302 \fB\fB-b\fR \fBkeyboard\fR | \fBconsole\fR\fR 303 .ad 304 .sp .6 305 .RS 4n 306 Sets the beeper frequency for keyboard or console. 307 .sp 308 .ne 2 309 .na 310 \fB\fBkeyboard\fR\fR 311 .ad 312 .RS 12n 313 Set the keyboard beeper frequency to the operand in HZ. See \fBOPERANDS\fR. 314 .RE 315 316 .sp 317 .ne 2 318 .na 319 \fB\fBconsole\fR\fR 320 .ad 321 .RS 12n 322 Sets the console beeper frequency to the operand in HZ. See \fBOPERANDS\fR. 323 .RE 324 325 .RE 326 327 .sp 328 .ne 2 329 .na 330 \fB\fB-c\fR \fBon\fR | \fBoff\fR\fR 331 .ad 332 .sp .6 333 .RS 4n 334 Turns the clicking of the keyboard on or off. 335 .sp 336 .ne 2 337 .na 338 \fB\fBon\fR\fR 339 .ad 340 .RS 7n 341 Enables clicking 342 .RE 343 344 .sp 345 .ne 2 346 .na 347 \fB\fBoff\fR\fR 348 .ad 349 .RS 7n 350 Disables clicking 351 .RE 352 353 .RE 354 355 .sp 356 .ne 2 357 .na 358 \fB\fB-d\fR \fIkeyboard device\fR\fR 359 .ad 360 .sp .6 361 .RS 4n 362 Specifies the keyboard device being set. The default setting is \fB/dev/kbd\fR. 363 .RE 364 365 .sp 366 .ne 2 367 .na 368 \fB\fB-D\fR \fIautorepeat delay\fR\fR 369 .ad 370 .sp .6 371 .RS 4n 372 Sets the autorepeat delay in milliseconds. 373 .RE 374 375 .sp 376 .ne 2 377 .na 378 \fB\fB-i\fR\fR 379 .ad 380 .sp .6 381 .RS 4n 382 Sets keyboard properties from the keyboard default file. With the exception of 383 \fB-d\fR \fIkeyboard device\fR, this option cannot be used with any other 384 option. The \fB-i\fR option instructs the keyboard command to read and process 385 keyclick and keyboard abort default values from the \fB/etc/default/kbd\fR 386 file. The \fB-i\fR option can only be used by a user or role with the Device 387 Security Rights Profile. 388 .RE 389 390 .sp 391 .ne 2 392 .na 393 \fB\fB-l\fR\fR 394 .ad 395 .sp .6 396 .RS 4n 397 Returns the layout code of the keyboard being used, and the autorepeat delay 398 and autorepeat rate being used. 399 .sp 400 If used with -R or -D option, this option returns the value before the changes. 401 .RE 402 403 .sp 404 .ne 2 405 .na 406 \fB\fB-r\fR\fR 407 .ad 408 .sp .6 409 .RS 4n 410 Resets the keyboard as if power-up. 411 .RE 412 413 .sp 414 .ne 2 415 .na 416 \fB\fB-R\fR \fIautorepeat rate\fR\fR 417 .ad 418 .sp .6 419 .RS 4n 420 Sets the autorepeat rate in milliseconds. 421 .RE 422 423 .sp 424 .ne 2 425 .na 426 \fB\fB\fR\fB-s\fR \fB[\fR\fIlanguage\fR\fB]\fR\fR 427 .ad 428 .sp .6 429 .RS 4n 430 Sets the keyboard layout into the kernel. 431 .sp 432 If \fIlanguage\fR is specified, the layout is set to \fIlanguage\fR, and 433 \fBloadkeys\fR(1) runs implicitly. If \fIlanguage\fR is not specified, a list 434 of available layouts are presented, prompting for the user to specify the 435 \fIlanguage\fR. See \fBOPERANDS\fR. 436 .RE 437 438 .sp 439 .ne 2 440 .na 441 \fB\fB-t\fR\fR 442 .ad 443 .sp .6 444 .RS 4n 445 Returns the type of the keyboard being used. 446 .RE 447 448 .SH OPERANDS 449 .LP 450 The following operands are supported: 451 .sp 452 .ne 2 453 .na 454 \fBfrequency\fR 455 .ad 456 .RS 13n 457 The frequency value specified to be set in kernel. The receiver of this value 458 is specified by the \fB-b\fR option. This value should be between 0 and 32767 459 otherwise will be ejected with \fBEINVAL\fR. 460 .RE 461 462 .sp 463 .ne 2 464 .na 465 \fBlanguage\fR 466 .ad 467 .RS 13n 468 The language specified to be set in kernel. If the language is not found, the 469 languages supported are listed for selection. It only applies to \fB-s\fR 470 option. 471 .RE 472 473 .SH EXAMPLES 474 .LP 475 \fBExample 1 \fRDisplaying the Keyboard Type 476 .sp 477 .LP 478 The following example displays the keyboard type: 479 480 .sp 481 .in +2 482 .nf 483 example% kbd -t 484 Type 4 Sun keyboard 485 example% 486 .fi 487 .in -2 488 .sp 489 490 .LP 491 \fBExample 2 \fRSetting Keyboard Defaults 492 .sp 493 .LP 494 The following example sets the keyboard defaults as specified in the keyboard 495 default file: 496 497 .sp 498 .in +2 499 .nf 500 example# kbd -i 501 example# 502 .fi 503 .in -2 504 .sp 505 506 .LP 507 \fBExample 3 \fRDisplaying Information 508 .sp 509 .LP 510 The following example displays keyboard type and layout code. It also displays 511 auto repeat delay and rate settings. 512 513 .sp 514 .in +2 515 .nf 516 example% kbd -l 517 type=4 518 layout=43 (0x2b) 519 delay(ms)=500 520 rate(ms)=33 521 example% 522 .fi 523 .in -2 524 .sp 525 526 .LP 527 \fBExample 4 \fRSetting Keyboard Autorepeat Delay 528 .sp 529 .LP 530 The following example sets the keyboard autorepeat delay: 531 532 .sp 533 .in +2 534 .nf 535 example% kbd -D 300 536 example% 537 .fi 538 .in -2 539 .sp 540 541 .LP 542 \fBExample 5 \fRSetting Keyboard Autorepeat Rate 543 .sp 544 .LP 545 The following example sets the keyboard autorepeat rate: 546 547 .sp 548 .in +2 549 .nf 550 example% kbd -R 50 551 example% 552 .fi 553 .in -2 554 .sp 555 556 .LP 557 \fBExample 6 \fRSelecting and Setting the Keyboard Language 558 .sp 559 .LP 560 The following example selects and sets the keyboard language from a list of 561 languages specified: 562 563 .sp 564 .in +2 565 .nf 566 example% kbd -s 567 1. Albanian 16. Malta_UK 568 2. Belarusian 17. Malta_US 569 3. Belgian 18. Norwegian 570 4. Bulgarian 19. Portuguese 571 5. Croatian 20. Russian 572 6. Danish 21. Serbia-And-Montenegro 573 7. Dutch 22. Slove 574 \&...... 575 576 To select the keyboard layout, enter a number [default n]: 577 578 example% 579 .fi 580 .in -2 581 .sp 582 583 .sp 584 .LP 585 The following example sets the keyboard language specified: 586 587 .sp 588 .in +2 589 .nf 590 example% kbd -s Dutch 591 example% 592 .fi 593 .in -2 594 .sp 595 596 .LP 597 \fBExample 7 \fRSetting the Keyboard Beeper Frequency 598 .sp 599 .LP 600 The following example sets the keyboard beeper frequency: 601 602 .sp 603 .in +2 604 .nf 605 example% kbd -b keyboard 1000 606 example% 607 .fi 608 .in -2 609 .sp 610 611 .SH FILES 612 .ne 2 613 .na 614 \fB\fB/dev/kbd\fR\fR 615 .ad 616 .RS 20n 617 Keyboard device file. 618 .RE 619 620 .sp 621 .ne 2 622 .na 623 \fB\fB/etc/default/kbd\fR\fR 624 .ad 625 .RS 20n 626 Keyboard default file containing software defaults for keyboard configurations. 627 .RE 628 629 .SH SEE ALSO 630 .LP 631 \fBloadkeys\fR(1), \fBsvcs\fR(1), \fBinetd\fR(1M), \fBinetadm\fR(1M), 632 \fBkadb\fR(1M), \fBsvcadm\fR(1M), \fBpppd\fR(1M), \fBkeytables\fR(4), 633 \fBattributes\fR(5), \fBsmf\fR(5), \fBkb\fR(7M), \fBzs\fR(7D), \fBse\fR(7D), 634 \fBasy\fR(7D), \fBvirtualkm\fR(7D) 635 .SH NOTES 636 .LP 637 Some server systems have key switches with a \fBsecure\fR key position that can 638 be read by system software. This key position overrides the normal default of 639 the keyboard abort sequence effect and changes the default so the effect is 640 disabled. When the key switch is in the \fBsecure\fR position on these systems, 641 the keyboard abort sequence effect cannot be overridden by the software 642 default, which is settable with the \fBkbd\fR utility. 643 .sp 644 .LP 645 Currently, there is no way to determine the state of the keyboard click 646 setting. 647 .sp 648 .LP 649 The \fBkdb\fR service is managed by the service management facility, 650 \fBsmf\fR(5), under the service identifier: 651 .sp 652 .in +2 653 .nf 654 svc:/system/keymap:default 655 .fi 656 .in -2 657 .sp 658 659 .sp 660 .LP 661 Administrative actions on this service, such as enabling, disabling, or 662 requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for 663 initiating and restarting this service is delegated to \fBinetd\fR(1M). Use 664 \fBinetadm\fR(1M) to make configuration changes and to view configuration 665 information for this service. The service's status can be queried using the 666 \fBsvcs\fR(1) command.