1*bdcffc5aSGreg Kroah-Hartmanconfig VT 2*bdcffc5aSGreg Kroah-Hartman bool "Virtual terminal" if EXPERT 3*bdcffc5aSGreg Kroah-Hartman depends on !S390 4*bdcffc5aSGreg Kroah-Hartman select INPUT 5*bdcffc5aSGreg Kroah-Hartman default y 6*bdcffc5aSGreg Kroah-Hartman ---help--- 7*bdcffc5aSGreg Kroah-Hartman If you say Y here, you will get support for terminal devices with 8*bdcffc5aSGreg Kroah-Hartman display and keyboard devices. These are called "virtual" because you 9*bdcffc5aSGreg Kroah-Hartman can run several virtual terminals (also called virtual consoles) on 10*bdcffc5aSGreg Kroah-Hartman one physical terminal. This is rather useful, for example one 11*bdcffc5aSGreg Kroah-Hartman virtual terminal can collect system messages and warnings, another 12*bdcffc5aSGreg Kroah-Hartman one can be used for a text-mode user session, and a third could run 13*bdcffc5aSGreg Kroah-Hartman an X session, all in parallel. Switching between virtual terminals 14*bdcffc5aSGreg Kroah-Hartman is done with certain key combinations, usually Alt-<function key>. 15*bdcffc5aSGreg Kroah-Hartman 16*bdcffc5aSGreg Kroah-Hartman The setterm command ("man setterm") can be used to change the 17*bdcffc5aSGreg Kroah-Hartman properties (such as colors or beeping) of a virtual terminal. The 18*bdcffc5aSGreg Kroah-Hartman man page console_codes(4) ("man console_codes") contains the special 19*bdcffc5aSGreg Kroah-Hartman character sequences that can be used to change those properties 20*bdcffc5aSGreg Kroah-Hartman directly. The fonts used on virtual terminals can be changed with 21*bdcffc5aSGreg Kroah-Hartman the setfont ("man setfont") command and the key bindings are defined 22*bdcffc5aSGreg Kroah-Hartman with the loadkeys ("man loadkeys") command. 23*bdcffc5aSGreg Kroah-Hartman 24*bdcffc5aSGreg Kroah-Hartman You need at least one virtual terminal device in order to make use 25*bdcffc5aSGreg Kroah-Hartman of your keyboard and monitor. Therefore, only people configuring an 26*bdcffc5aSGreg Kroah-Hartman embedded system would want to say N here in order to save some 27*bdcffc5aSGreg Kroah-Hartman memory; the only way to log into such a system is then via a serial 28*bdcffc5aSGreg Kroah-Hartman or network connection. 29*bdcffc5aSGreg Kroah-Hartman 30*bdcffc5aSGreg Kroah-Hartman If unsure, say Y, or else you won't be able to do much with your new 31*bdcffc5aSGreg Kroah-Hartman shiny Linux system :-) 32*bdcffc5aSGreg Kroah-Hartman 33*bdcffc5aSGreg Kroah-Hartmanconfig CONSOLE_TRANSLATIONS 34*bdcffc5aSGreg Kroah-Hartman depends on VT 35*bdcffc5aSGreg Kroah-Hartman default y 36*bdcffc5aSGreg Kroah-Hartman bool "Enable character translations in console" if EXPERT 37*bdcffc5aSGreg Kroah-Hartman ---help--- 38*bdcffc5aSGreg Kroah-Hartman This enables support for font mapping and Unicode translation 39*bdcffc5aSGreg Kroah-Hartman on virtual consoles. 40*bdcffc5aSGreg Kroah-Hartman 41*bdcffc5aSGreg Kroah-Hartmanconfig VT_CONSOLE 42*bdcffc5aSGreg Kroah-Hartman bool "Support for console on virtual terminal" if EXPERT 43*bdcffc5aSGreg Kroah-Hartman depends on VT 44*bdcffc5aSGreg Kroah-Hartman default y 45*bdcffc5aSGreg Kroah-Hartman ---help--- 46*bdcffc5aSGreg Kroah-Hartman The system console is the device which receives all kernel messages 47*bdcffc5aSGreg Kroah-Hartman and warnings and which allows logins in single user mode. If you 48*bdcffc5aSGreg Kroah-Hartman answer Y here, a virtual terminal (the device used to interact with 49*bdcffc5aSGreg Kroah-Hartman a physical terminal) can be used as system console. This is the most 50*bdcffc5aSGreg Kroah-Hartman common mode of operations, so you should say Y here unless you want 51*bdcffc5aSGreg Kroah-Hartman the kernel messages be output only to a serial port (in which case 52*bdcffc5aSGreg Kroah-Hartman you should say Y to "Console on serial port", below). 53*bdcffc5aSGreg Kroah-Hartman 54*bdcffc5aSGreg Kroah-Hartman If you do say Y here, by default the currently visible virtual 55*bdcffc5aSGreg Kroah-Hartman terminal (/dev/tty0) will be used as system console. You can change 56*bdcffc5aSGreg Kroah-Hartman that with a kernel command line option such as "console=tty3" which 57*bdcffc5aSGreg Kroah-Hartman would use the third virtual terminal as system console. (Try "man 58*bdcffc5aSGreg Kroah-Hartman bootparam" or see the documentation of your boot loader (lilo or 59*bdcffc5aSGreg Kroah-Hartman loadlin) about how to pass options to the kernel at boot time.) 60*bdcffc5aSGreg Kroah-Hartman 61*bdcffc5aSGreg Kroah-Hartman If unsure, say Y. 62*bdcffc5aSGreg Kroah-Hartman 63*bdcffc5aSGreg Kroah-Hartmanconfig HW_CONSOLE 64*bdcffc5aSGreg Kroah-Hartman bool 65*bdcffc5aSGreg Kroah-Hartman depends on VT && !S390 && !UML 66*bdcffc5aSGreg Kroah-Hartman default y 67*bdcffc5aSGreg Kroah-Hartman 68*bdcffc5aSGreg Kroah-Hartmanconfig VT_HW_CONSOLE_BINDING 69*bdcffc5aSGreg Kroah-Hartman bool "Support for binding and unbinding console drivers" 70*bdcffc5aSGreg Kroah-Hartman depends on HW_CONSOLE 71*bdcffc5aSGreg Kroah-Hartman default n 72*bdcffc5aSGreg Kroah-Hartman ---help--- 73*bdcffc5aSGreg Kroah-Hartman The virtual terminal is the device that interacts with the physical 74*bdcffc5aSGreg Kroah-Hartman terminal through console drivers. On these systems, at least one 75*bdcffc5aSGreg Kroah-Hartman console driver is loaded. In other configurations, additional console 76*bdcffc5aSGreg Kroah-Hartman drivers may be enabled, such as the framebuffer console. If more than 77*bdcffc5aSGreg Kroah-Hartman 1 console driver is enabled, setting this to 'y' will allow you to 78*bdcffc5aSGreg Kroah-Hartman select the console driver that will serve as the backend for the 79*bdcffc5aSGreg Kroah-Hartman virtual terminals. 80*bdcffc5aSGreg Kroah-Hartman 81*bdcffc5aSGreg Kroah-Hartman See <file:Documentation/console/console.txt> for more 82*bdcffc5aSGreg Kroah-Hartman information. For framebuffer console users, please refer to 83*bdcffc5aSGreg Kroah-Hartman <file:Documentation/fb/fbcon.txt>. 84*bdcffc5aSGreg Kroah-Hartman 85*bdcffc5aSGreg Kroah-Hartmanconfig UNIX98_PTYS 86*bdcffc5aSGreg Kroah-Hartman bool "Unix98 PTY support" if EXPERT 87*bdcffc5aSGreg Kroah-Hartman default y 88*bdcffc5aSGreg Kroah-Hartman ---help--- 89*bdcffc5aSGreg Kroah-Hartman A pseudo terminal (PTY) is a software device consisting of two 90*bdcffc5aSGreg Kroah-Hartman halves: a master and a slave. The slave device behaves identical to 91*bdcffc5aSGreg Kroah-Hartman a physical terminal; the master device is used by a process to 92*bdcffc5aSGreg Kroah-Hartman read data from and write data to the slave, thereby emulating a 93*bdcffc5aSGreg Kroah-Hartman terminal. Typical programs for the master side are telnet servers 94*bdcffc5aSGreg Kroah-Hartman and xterms. 95*bdcffc5aSGreg Kroah-Hartman 96*bdcffc5aSGreg Kroah-Hartman Linux has traditionally used the BSD-like names /dev/ptyxx for 97*bdcffc5aSGreg Kroah-Hartman masters and /dev/ttyxx for slaves of pseudo terminals. This scheme 98*bdcffc5aSGreg Kroah-Hartman has a number of problems. The GNU C library glibc 2.1 and later, 99*bdcffc5aSGreg Kroah-Hartman however, supports the Unix98 naming standard: in order to acquire a 100*bdcffc5aSGreg Kroah-Hartman pseudo terminal, a process opens /dev/ptmx; the number of the pseudo 101*bdcffc5aSGreg Kroah-Hartman terminal is then made available to the process and the pseudo 102*bdcffc5aSGreg Kroah-Hartman terminal slave can be accessed as /dev/pts/<number>. What was 103*bdcffc5aSGreg Kroah-Hartman traditionally /dev/ttyp2 will then be /dev/pts/2, for example. 104*bdcffc5aSGreg Kroah-Hartman 105*bdcffc5aSGreg Kroah-Hartman All modern Linux systems use the Unix98 ptys. Say Y unless 106*bdcffc5aSGreg Kroah-Hartman you're on an embedded system and want to conserve memory. 107*bdcffc5aSGreg Kroah-Hartman 108*bdcffc5aSGreg Kroah-Hartmanconfig DEVPTS_MULTIPLE_INSTANCES 109*bdcffc5aSGreg Kroah-Hartman bool "Support multiple instances of devpts" 110*bdcffc5aSGreg Kroah-Hartman depends on UNIX98_PTYS 111*bdcffc5aSGreg Kroah-Hartman default n 112*bdcffc5aSGreg Kroah-Hartman ---help--- 113*bdcffc5aSGreg Kroah-Hartman Enable support for multiple instances of devpts filesystem. 114*bdcffc5aSGreg Kroah-Hartman If you want to have isolated PTY namespaces (eg: in containers), 115*bdcffc5aSGreg Kroah-Hartman say Y here. Otherwise, say N. If enabled, each mount of devpts 116*bdcffc5aSGreg Kroah-Hartman filesystem with the '-o newinstance' option will create an 117*bdcffc5aSGreg Kroah-Hartman independent PTY namespace. 118*bdcffc5aSGreg Kroah-Hartman 119*bdcffc5aSGreg Kroah-Hartmanconfig LEGACY_PTYS 120*bdcffc5aSGreg Kroah-Hartman bool "Legacy (BSD) PTY support" 121*bdcffc5aSGreg Kroah-Hartman default y 122*bdcffc5aSGreg Kroah-Hartman ---help--- 123*bdcffc5aSGreg Kroah-Hartman A pseudo terminal (PTY) is a software device consisting of two 124*bdcffc5aSGreg Kroah-Hartman halves: a master and a slave. The slave device behaves identical to 125*bdcffc5aSGreg Kroah-Hartman a physical terminal; the master device is used by a process to 126*bdcffc5aSGreg Kroah-Hartman read data from and write data to the slave, thereby emulating a 127*bdcffc5aSGreg Kroah-Hartman terminal. Typical programs for the master side are telnet servers 128*bdcffc5aSGreg Kroah-Hartman and xterms. 129*bdcffc5aSGreg Kroah-Hartman 130*bdcffc5aSGreg Kroah-Hartman Linux has traditionally used the BSD-like names /dev/ptyxx 131*bdcffc5aSGreg Kroah-Hartman for masters and /dev/ttyxx for slaves of pseudo 132*bdcffc5aSGreg Kroah-Hartman terminals. This scheme has a number of problems, including 133*bdcffc5aSGreg Kroah-Hartman security. This option enables these legacy devices; on most 134*bdcffc5aSGreg Kroah-Hartman systems, it is safe to say N. 135*bdcffc5aSGreg Kroah-Hartman 136*bdcffc5aSGreg Kroah-Hartman 137*bdcffc5aSGreg Kroah-Hartmanconfig LEGACY_PTY_COUNT 138*bdcffc5aSGreg Kroah-Hartman int "Maximum number of legacy PTY in use" 139*bdcffc5aSGreg Kroah-Hartman depends on LEGACY_PTYS 140*bdcffc5aSGreg Kroah-Hartman range 0 256 141*bdcffc5aSGreg Kroah-Hartman default "256" 142*bdcffc5aSGreg Kroah-Hartman ---help--- 143*bdcffc5aSGreg Kroah-Hartman The maximum number of legacy PTYs that can be used at any one time. 144*bdcffc5aSGreg Kroah-Hartman The default is 256, and should be more than enough. Embedded 145*bdcffc5aSGreg Kroah-Hartman systems may want to reduce this to save memory. 146*bdcffc5aSGreg Kroah-Hartman 147*bdcffc5aSGreg Kroah-Hartman When not in use, each legacy PTY occupies 12 bytes on 32-bit 148*bdcffc5aSGreg Kroah-Hartman architectures and 24 bytes on 64-bit architectures. 149*bdcffc5aSGreg Kroah-Hartman 150*bdcffc5aSGreg Kroah-Hartman 151