Using the input agent will allow you to specify the way a keyboard with a given PHYS ID is assigned to a given VT.
From /etc/hotplug/input.agent (see Appendix->Scripts):
...... # Edit here Your keyboard physicaly names # Read about Your keyboard /proc/bus/input/devices kbd_phys0="isa0060/serio0/input0" kbd_phys1="isa0060/serio1/input0" kbd_phys2="usb1:2/input0" ...... |
kbd_phys0 is the address of the keyboard bound to VT0
The keyboard plugged in the first PS2 port will be bound to VT0 (tty0-tty7)
kbd_phys1 is the address of the keyboard bound to VT1
The keyboard plugged in the second PS2 port will be bound to VT1 (tty8-tty15)
kbd_phys2 is the address of the keyboard bound to VT2
The USB keyboard plugged in ??? will be bound to VT2 (tty16-tty23)
< FIX-ME usb1:2 comes from older version of Backstreet Ruby, with the current version you'll have something like "usb-00:10.1-1.1/input0", which means [bus type]=usb "-" [PCI function of the USB controller]=00:10.1 "-" [usb device id]=1.1 "/input" [interface number]=0. >
So if I wanted to use the PS2 keyboard for the primary Display and for the VGA console, I would have:
...... # Edit here Your keyboard physicaly names # Read about Your keyboard /proc/bus/input/devices kbd_phys0="isa0060/serio0/input0" kbd_phys1="usb-00:10.1-1.1/input0" ...... |
Or, if I want to use the USB keyboard for the primary Display and for the VGA console:
...... # Edit here Your keyboard physicaly names # Read about Your keyboard /proc/bus/input/devices kbd_phys0="usb-00:10.1-1.1/input0" kbd_phys1="isa0060/serio0/input0" ...... |