2011. 8. 6. 20:43

♧ 우분투가 멀티유저 모드(런 레벨 2, 3, 5)로 부팅되었을 때,

텍스트 기반 로그인 환경에서 [ tty1 ~ tty6 ]으로 알려진 6개의 가상 콘솔(Virtual console)이 생성.

X 윈도우 시스템이 실행중이라면, X는 가상 콘솔 7에서 실행.

X GUI환경에서 → 텍스트 가상 콘솔로 전환 :

< Ctrl+Alt+F1 > ~ < Ctrl+Alt+F6 >

텍스트 가상 콘솔에서의 이동 :

< Alt+F1 > ~ < Alt+F6 >

텍스트 가상 콘솔 → X GUI 환경 전환 :

< Alt+F7 >

 

▶ 각각의 가상 터미널은 getty 프로세스가 관리.

$ ps awx | grep -v grep | grep getty

675

tty4

Ss+

0:00

/sbin/getty

-8 38400

tty4

683

tty5

Ss+

0:00

/sbin/getty

-8 38400

tty5

397

tty2

Ss+

0:00

/sbin/getty

-8 38400

tty2

702

tty3

Ss+

0:00

/sbin/getty

-8 38400

tty3

712

tty6

Ss+

0:00

/sbin/getty

-8 38400

tty6

4004

tty1

Ss+

0:00

/sbin/getty

-8 38400

tty1

 

▷ 첫 번째 콘솔에 로그인한다.(이 사용자 로그인은 getty에 의해 관리되며, 바로 bash 쉘을 활성화)

$ ps awx | grep -v grep | grep tty

675

tty4

Ss+

0:00

/sbin/getty

-8 38400

tty4

683

tty5

Ss+

0:00

/sbin/getty

-8 38400

tty5

397

tty2

Ss+

0:00

/sbin/getty

-8 38400

tty2

702

tty3

Ss+

0:00

/sbin/getty

-8 38400

tty3

712

tty6

Ss+

0:00

/sbin/getty

-8 38400

tty6

1111

tty7

Ss+

0:19

/usr/bin/X :0

-nr -verbose -auth …[생략]…

3794

tty1

Ss

0:00

/bin/login --

 

3888

tty1

S

0:01

-bash

 

 

☞ 개별 가상 콘솔은 /etc/event.d 디렉토리에 있는 tty1, tty2 …등의 콘솔 스크립트 파일을 통해 설정.

☞ 대부분의 다른 리눅스 배포판에서는 /etc/inittab 하나의 파일로 콘솔을 설정.

/etc/inittab 파일은 시스템 초기화를 담당하는 init 데몬이 사용하는 설정파일로,

우분투 리눅스에서는 init 프로그램이 upstart라는 새로운 프로그램으로 교체되었다.

upstart 프로그램은 /etc/event.d 디렉토리에 있는 설정파일들을 사용하고 있다.

 

※ 버전의 차이인지 패포판의 차이인지는 확인 못했으나 주분투11.04(Xubuntu) 같은 경우

/etc/event.d 이나 /etc/inittab 은 존재 하지 안았고 /etc/init/tty[숫자].conf 로 존재하였다.

맨 페이지 검색 : man upstart 으로 참조

 

▷ /etc/init/tty1.conf 내용

# tty1 - getty

#

# This service maintains a getty on tty1 from the point the system is

# started until it is shut down again.

 

start on stopped rc RUNLEVEL=[2345]

stop on runlevel [!2345]

 

respawn

exec /sbin/getty -8 38400 tty1

Posted by devanix