Check out my first novel, midnight's simulacra!
Consoles
From dankwiki
The nomenclature here is annoying. The system console is a device concept, mapped to a character device (usually a serial port or virtual terminal). Kernel messages (having a priority above console_loglevel, see linux/kernel.h> and the klogd(8) man page) are sent there, and single-mode login is supported through this device.
Documentation
- Documentation/consoles/console.txt explains console binding
- Documentation/svga.txt explains VGA text consoles
- Documentation/fb/fbcon.txt explains framebuffer consoles
- /dev/tty0 is the current console at any given time
- How does X interact with this, especially in [xgk]dm's presence?
- Man page console_codes(4) details terminal control codes for the Linux console
- Man pages for setterm(1), setfont(8), loadkeys(1), fbset(1)
Kernel options
Character devices
- CONFIG_VT=y enables virtual terminals, and is necessary to access...
- CONFIG_VT_CONSOLE=y enables sending kernel console messages to virtual terminals
- CONFIG_VT_HW_CONSOLE_BINDING=y enables runtime rebinding of console drivers to virtual terminals
- CONFIG_SERIAL_8250=y is necessary to access...
- CONFIG_SERIAL_8250_CONSOLE=y enables sending kernel console messages to serial ports
Graphics support
- CONFIG_FB=[ym] enables the framebuffer abstraction, and is necessary to access...
Console display driver support
- CONFIG_VGA_CONSOLE=y enables virtual terminals on VGA hardware, and is necessary to access...
- CONFIG_VGACON_SOFT_SCROLLBACK=y enables placing scrollback data in system memory
- CONFIG_VIDEO_SELECT=y enables video mode selection support
- CONFIG_VIDEO_SELECT=y enables text mode selection on system startup using the vga=... parameter
- CONFIG_FRAMEBUFFER_CONSOLE=y enables virtual terminals on framebuffers
Kernel command line parameters
- console=ttyX sets the system console
- By default, this is tty0 (see note above regarding tty0)
- Use ttySX for the Xth serial port
- If no VGA card is installed, the default system console will go to ttyS1.
- no-scroll disables use of hardware scrolling
- "Required by some Braille machines", according to bootparam(7)
- vga=... sets up the VGA text console
Management
- Switch to virtual terminal X with Alt+Fn+X
- setterm command controls virtual term parameters
- setterm -blength 0 disables the console bell for a virtual terminal
- setfont command controls virtual terminal fonts
- Supplied by the Debian packages kbd and kbd-compat
- loadkey command controls virtual terminal keybindings
- Supplied by the Debian packages console-tools and kbd
- fbset command controls framebuffer settings
sysfs
- /sys/devices/virtual/vtconsole, to which /sys/class/vtconsole's contents link