Many programs use the TERM
variable and the database /etc/termcap
or /usr/lib/terminfo/*
to decide which strings to send for clear screen, move cursor, etc., and sometimes also to decide which string is sent by the users backspace key, function keys etc. This value is first set by the kernel (for the console). Usually, this variable is re-set by getty
, using /etc/ttytype
or the argument specified in /etc/inittab
. Sometimes, it is also set in /etc/profile
.
Older systems use TERM=console
or TERM=con80x25
. Newer systems (with ncurses 1.8.6) use the more specific TERM=linux
or TERM=linux-80x25
. However, old versions of setterm
test for TERM=con*
and hence fail to work with TERM=linux
.
Since kernel version 1.3.2, the kernel default for the console is TERM=linux
.
If you have a termcap without entry for linux, add the word linux to the entry for the console:
and make
console|con80x25|linux:\
/usr/lib/terminfo/l/linux
a copy of or symbolic link to /usr/lib/terminfo/c/console
.
The terminfo entry for the linux console from ncurses 1.8.6 misses the entry kich1=\E[2~
, needed by some programs. Edit the file and tic
it.