Tty는 어떻게 불러오나요?

그러니까…

Ctrl + Alt + F1 누르세요 이런 거 말고…

부팅할 때 bash나 gdm에 진입하기 전에 실행되는 tty를 불러오는 명령어나 스크립트같은 게 있지 않나요?

그게 정확히 뭔지, 그리고 우분투에서는 보통 어느 파일 안에 있는지 궁금합니다.

xstart 스크립트 만들어놓고.

gdm 지우면 부팅할때 gdm 안뜨고 tty1 뜹니다.

리눅스 부팅 과정 설명 문서 중

http://wiki.kldp.org/wiki.php/DocbookSg ... WTO#AEN103

inittab 파일이 우분투는 /etc/init 에 나누어져 있는데 주는 rc-sysinit.conf 파일이며
tty?.conf 파일 열어 보시면 getty 로 tty? 을 구동 하는 명령어를 볼 수 있습니다.

[code:2lsuqaex]# 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[/code:2lsuqaex]

강분도님이 잘 설명해주셨지만
포풍저글링님이 궁금하게 여기는건
tty에 대한 기술적인 설명은 아닌듯 보여서
가장 간단히 말씀드리자면

커널이 로딩되고 /sbin/init 이 실행된뒤에
키보드 입력과 출력을 가능케 해주는 통로(virtual console)를
/sbin/getty를 실행해서 연 다음
/sbin/login을 실행,로긴 화면을 띄워서
사용자 이름과 패스워드를 묻고
패스워드가 맞으면 /bin/bash을 실행해서
마지막으로 검정 화면에 프롬프트만 번쩍이는
tty에 드디어 들어오게 됩니다.

[code:1wp8z0ig]kernel => init => getty => login => bash(tty)[/code:1wp8z0ig]

물론 gdm이나 kdm을 써서 그래픽 로긴하고 있다면

[code:1wp8z0ig]kernel => init => getty => login => bash(tty) => startx =>bash(pts)[/code:1wp8z0ig]

우분투의 경우는 시스템 시작 과정이 조금 다르죠.
전통적인 sysv init 데몬 대신에
upstart init이 이과정을 처리합니다.

우분투는 /etc/inittab 파일을 가지고 있지 않지만
디폴트로 이런 설정을 가지고 있습니다.

[code:m69ep6fc]
:id:2:initdefault:
[/code:m69ep6fc]
/sbin/init이 이 설정대로
디폴트 런레벨 2 멀티유저 모드로 부팅하는거죠.

부팅후 [b:m69ep6fc]/etc/event.d/rc2[/b:m69ep6fc] 를 찾고
[b:m69ep6fc]/etc/rc2.d [/b:m69ep6fc]디렉토리에 링크된 여러 시스템 시작 스크립트들을
실행하고

[b:m69ep6fc]/etc/event.d/tty1[/b:m69ep6fc] 을 찾아서
/sbin/getty를 실행한후

/sbin/login을 실행해서
/bin/bash로 들어오게 되는 겁니다.

우분투는 upstart 과 sysv 이 두가지가 섞여 있는 시스템 시작시스템입니다.
앞으로 우분투 10.4 이후에는 upstart 만으로 운영될거라고 하는 군요.

참 우분투도 /etc/inittab을
만들수 있습니다.

[code:m69ep6fc]:id:S:initdefault:[/code:m69ep6fc]

로 만들고 재부팅하면
룻유저 안만들었을때는 패스워드 안묻고 바로 싱글 룻유저 부팅되고
룻유저를 만들어서 룻에게 패스워드가 세팅되어 있다면
패스워드를 치고 싱글 유저 부팅하게 되죠.
다시 정상 부팅 할려면 /etc/inittab 파일을 삭제하든지

S 대신 2을 넣어주면 됩니다.

우분투 멀티 유저 모드는 5 아니냐고요?
현재 자신의 모드를 알려면

[code:m69ep6fc]runlevel[/code:m69ep6fc]

명령을 쳐 보세요.

저는 tty 를 /dev/ttyXX 들의 장치로 이해 하고 있습니다…
ls /dev/tty* 하시면 잔뜩 보실수 있는…

불러온다고도 말할수 있겠지만… 불러오는게 아니고 그 장치를 이용해서…
화면이내 내용을 내보내는… 것으로 알고 있습니다…

저는 포풍저글링님이 tty의 정확한 용어 정의를 알고 싶은건 아니라고 봤고
그저 tty에 연결된 bash,그 썰렁한 검정화면에 흰 프롬프트인 환경 그자체를
단순히 tty라고 부른것 뿐으로 생각했습니다.

그렇지만 tty에 얽힌 역사나 세밀한 정의등을 살펴봐 두는 것도
좋은 일로 생각됩니다.

그래서 tty 에 대한 너무 너무 좋은 링크 하나 추천드립니다.

[url:mdggiwbm]http://www.linusakesson.net/programming/tty/index.php[/url:mdggiwbm]