Debian Jessie에서 콘솔 로그인을 위해 설정된 "$TERM" 환경 변수는 어디에 있습니까?

Debian Jessie에서 콘솔 로그인을 위해 설정된 "$TERM" 환경 변수는 어디에 있습니까?

$TERM기본 환경 변수를 설정하는 방법과 위치에 대한 많은 기사와 SE 질문을 읽었습니다 .

$TERM불행하게도 데비안 8.1에서는 시스템에 로그인할 때 기본 변수가 어디에 설정되어 있는지 찾을 수 없는 것 같습니다 tty1.

이것이 실제로 중복된 질문인 경우 올바른 방향을 알려드리고 싶지만 다음 질문은 답변을 제공하지 않는 것 같습니다.

tmux, TERM 및 256색 지원

TERM 환경 변수 세트의 기본값은 어디에 있습니까?

$TERM 변수를 수동으로 설정하는 것이 맞습니까?

편집하다

tty1여기를 통해 로그인하면 $TERM설정은 다음과 같습니다.

$> echo $TERM
linux

list /usr/lib/systemd/, 여기에는 디렉터리가 없습니다 system.

$> ls -al
total 28
drwxr-xr-x  7 root root 4096 Aug 19 13:37 .
drwxr-xr-x 44 root root 4096 Aug 20 14:28 ..
drwxr-xr-x  2 root root 4096 Aug 19 13:37 catalog
drwxr-xr-x  2 root root 4096 May 26 02:07 network
drwxr-xr-x  2 root root 4096 Aug 19 13:37 ntp-units.d
drwxr-xr-x  2 root root 4096 Aug 19 13:37 user
drwxr-xr-x  2 root root 4096 May 26 02:07 user-generators

답변1

내 생각엔 Linux 커널이 TERM이를 linuxinit 프로세스(pid 1)로 설정한 것 같습니다.여기그리고거기. 다음에서 확인할 수 있습니다 /proc/1/environ(죄송합니다. 다음 출력은 Ubuntu 15.04의 출력입니다).

$ sudo strings /proc/1/environ 
HOME=/
init=/sbin/init
recovery=
TERM=linux
BOOT_IMAGE=/boot/vmlinuz-3.19.0-25-generic.efi.signed
PATH=/sbin:/usr/sbin:/bin:/usr/bin
PWD=/
rootmnt=/root

Debian/Ubuntu 시스템 기반 시스템에서는 ./lib/systemd/system/[email protected]

[Service]
# the VT is cleared by TTYVTDisallocate
ExecStart=-/sbin/agetty --noclear %I $TERM

TERM따라서 커널 명령줄에서 이를 재정의 할 수 있습니다 . 편집 /etc/default/grub하고 실행한 update-grub후 다시 시작해 보세요.

GRUB_CMDLINE_LINUX="TERM=vt100"

답변2

$TERM 변수는 일반적으로 사용 중인 배포판에 따라 /etc/profile 또는 .bashrc에 설정됩니다.

읽다http://www.tldp.org/HOWTO/Keyboard-and-Console-HOWTO-11.html

관련 정보