Linux tty 명령은 무엇을 합니까? 사용 중인 터미널의 이름을 표시합니다.
리눅스 tty의 기원
“tty”라는 용어의 기원은 무엇입니까? 글쎄, 그것은 설명하기가 조금 더 어렵습니다 …
옛날의 텔레프린터
1830년대와 1840년대에 텔레프린터라고 불리는 기계가 개발되었습니다. 이러한 장치는 입력된 메시지를 “유선으로” 다른 위치로 전송할 수 있습니다. 보낸 사람은 키보드와 같은 장치를 사용하여 메시지를 입력하고 받는 쪽에서 종이에 인쇄했습니다. 그것들은 이전에 모스에 의존했던 전신의 진화적 단계였습니다.
메시지는 암호화되어 전송된 다음 디코딩되어 인쇄됩니다. 다양한 기술을 사용하여 인코딩되었습니다. 가장 유명하고 가장 많이 생산된 것 중 하나는 “전송 속도”의 이름을 따서 명명된 Émile Baudot에 의해 1874년에 특허를 받았습니다. 그의 문자 인코딩 방법은 ASCII보다 89년 앞서 있었습니다.
Baudot의 코딩은 결국 텔레프린터 인코딩의 사실상 표준이 되었으며 대부분의 제조업체에서 채택했습니다. Baudot의 원래 하드웨어 디자인은 피아노와 유사한 단 5개의 건반으로 구성되어 있습니다. 각 문자에 대해 작업자는 특정 키 시퀀스를 기억해야 했습니다. Baudot 인코딩 시스템은 나중에 전통적인 키보드 레이아웃과 연결되었습니다.
그 발전을 기념하기 위해 이 기계는 텔레타이프라이터라고 불렸습니다. 텔레타이프라는 단어는 TTY로 축약되어 결국 일반 이름이 되었습니다. 그렇다면 전신과 컴퓨터는 어떻게 될까요?
ASCII 및 텔렉스
1963년 텔레타이프 제조사에서 채택하여 문자 전송 업계의 표준이 되었습니다. 전화기의 발명과 광범위한 사용에도 불구하고 텔레타이프는 여전히 만연했습니다.
Telex는 서면 통신을 전 세계에 보낼 수 있게 해주는 세계적인 텔레타이프 네트워크였습니다. 1980년대 팩스 붐이 일어나기 전까지 제2차 세계대전 이후 내내 서면 정보를 보내는 주요 수단이었습니다.
컴퓨터도 발전하고 있었다. 그들은 실시간으로 최종 사용자와 소통하고 많은 사람들을 지원할 수 있었습니다. 작업에 대한 기존 배치 접근 방식은 불충분한 것으로 판명되었습니다. 사람들은 결과를 24시간 이상 기다리기를 원하지 않았습니다. 펀치 카드 더미를 만들고 결과를 밤새도록 기다리는 것은 더 이상 용인되지 않았습니다.
컴퓨터의 출현과 새로운 기술의 발달로 인해 사용자가 데이터를 주고받을 수 있는 소프트웨어가 필요하게 되었습니다. 우리는 효율성을 원했습니다.

용도 변경한 텔레타이프
텔레타이프는 메시지를 입력하고, 인코딩하고, 전송하고, 수신하고, 디코딩하고, 인쇄할 수 있는 기계였기 때문에 입/출력 장치에 이상적인 후보였습니다.
텔레타이프는 링크의 다른 쪽 끝에 있는 장치가 다른 텔레타이프가 아니더라도 상관하지 않았습니다. 텔레타이프는 동일한 인코딩 언어를 말할 수 있는 한 괜찮습니다. 레이아웃이 약간 변경된 표준 키보드를 사용했습니다.
하드웨어 에뮬레이트 텔레타이프
전신기는 전신기를 대체하면서 그 시대의 대형 미니 및 메인프레임 컴퓨터와 상호 작용하는 사실상의 방법이 되었습니다.
이들은 결국 종이 롤 대신 CRT(Cathode Ray Tubes)를 사용하여 전자 장치를 사용하여 시뮬레이션하는 장치로 대체되었습니다. 그들은 컴퓨터에서 답변을 전달할 때 흔들리지 않았습니다. 화면에서 커서 이동, 화면 지우기 및 볼드체 텍스트다른 것들 사이.
DEC VT05는 초기 가상 텔레타이프였으며 그 후손은 유명한 DEC VT100입니다. DEC VT100은 수백만 대를 판매했습니다.
소프트웨어 에뮬레이트 텔레타이프
터미널 창과 x-term 및 Konsole과 같은 응용 프로그램은 Linux 데스크톱 환경 및 macOS와 같은 기타 Unix 계열 운영 체제에서 가상 텔레타이프입니다. 그러나 그것들은 완전히 시뮬레이션되었습니다. 가짜 텔레타이프라고 합니다. 약어를 PTS로 줄였습니다.
그리고 바로 여기에서 Linux의 tty 명령이 사용됩니다.
MacOS라고 하면 iPad에 Linux를 설치하시겠습니까?
tty는 Linux에서 무엇을 할 수 있습니까?
Linux에는 모든 터미널 창 PTS 연결을 처리하는 “의사 텔레타입 멀티플렉서”가 있습니다. 마스터는 멀티플렉서이고 PTS는 슬레이브입니다. 커널은 /dev/ptmx에 있는 장치 파일을 통해 멀티플렉서와 통신합니다.
tty 명령은 의사 텔레타입 슬레이브가 마스터에 인터페이스하기 위해 사용하는 장치 파일의 이름을 인쇄합니다. 그리고 그것은 사실상 터미널 창의 번호입니다.
Linux의 tty가 보고하는 내용을 살펴보겠습니다.
tty

응답은 /dev/pts/0의 장치 파일에 연결되었음을 보여줍니다.
텔레타이프를 소프트웨어로 모방한 터미널 창은 PTS로 의사 텔레타이프 멀티플렉서에 연결됩니다. 그리고 그것은 0입니다.
무음 옵션
-s(자동) 옵션을 사용하면 tty가 출력을 생성하지 않습니다.
tty -s

다음과 같은 경우 종료 값을 생성합니다.
0: 표준 입력이 TTY 장치에서 오는 경우 에뮬레이트되거나 물리적입니다.
1: TTY 장치에서 표준 입력이 오지 않는 경우.
2: 구문 오류, 잘못된 명령줄 매개변수가 사용되었습니다.
삼: 쓰기 오류가 발생했습니다.
이것은 Bash 스크립트에서 가장 유용할 것입니다. 그러나 명령줄에서도 터미널 창(TTY 또는 PTS 세션)에 있는 경우 명령을 실행하는 방법을 보여줄 수 있습니다.
tty -s && echo "In a tty"
TTY 세션에서 실행 중이므로 종료 코드는 0이고 두 번째 명령이 실행됩니다.

관련: 이 189개의 Linux 터미널 명령을 확인해야 합니다.
누가 명령
“who” 명령은 로그인한 모든 사용자를 나열합니다. User2와 User3은 Linux 컴퓨터에 원격으로 연결되어 있습니다. 그들은 PTS 1과 2에 연결됩니다. User1은 “:0″에 연결된 것으로 표시됩니다. 화면 및 키보드의 장치 파일은 컴퓨터의 멀티플렉서에 연결됩니다. 화면과 키보드는 하드웨어 장치이지만 여전히 장치 파일을 통해 멀티플렉서에 연결되어 있습니다. tty는 /dev/pts/2임을 나타냅니다.
who

TTY에 액세스
Ctrl+Alt 키를 누른 상태에서 기능 키 중 하나를 누르면 전체 화면 TTY 세션에 액세스할 수 있습니다. Ctrl+Alt+F3을 누르면 tty3의 로그인 프롬프트가 나타납니다. 로그인하고 tty 명령을 실행하면 /dev/tty3에 연결된 것을 볼 수 있습니다.

이것은 가짜 텔레타이프가 아닙니다(소프트웨어에서 에뮬레이트됨). 그것은 가상 텔레타이프(하드웨어에서 에뮬레이트됨)입니다. 화면과 키보드가 컴퓨터에 연결된 상태에서 DEC VT100과 같은 가상 텔레타이프를 에뮬레이트합니다. 원하는 경우 Ctrl+Alt 조합과 함께 기능 키를 사용하여 4개의 Linux TTY 세션을 설정할 수 있습니다. 예를 들어 이 옵션을 선택하고 tty3에 로그인한 경우 Ctrl+Alt+F6을 눌러 tty6으로 이동합니다.

그래픽 데스크탑 환경으로 돌아가려면 Ctrl+Alt+F2를 누르십시오. 그래픽 데스크탑 환경을 사용하는 경우 Ctrl+Alt+F1을 누르면 그래픽 데스크탑 세션의 로그인 화면으로 돌아갑니다. 전체 화면 Linux TTY 콘솔은 Ctrl+Alt+F1 ~ Ctrl+Alt+F6 키를 사용하여 한 번에 액세스할 수 있으며 Ctrl+Alt+F7을 통해 그래픽 데스크탑 환경으로 돌아갈 수 있습니다. 이전 Linux 배포판을 사용하는 경우 이것이 작동하는 방식일 수 있습니다.
이것은 Manjaro, Ubuntu 및 Fedora의 현재 릴리스에서 테스트되었으며 모두 다음과 같이 작동했습니다.
Ctrl+Alt+F1: 그래픽 데스크탑 환경 로그인 화면으로 돌아갑니다.
Ctrl+Alt+F2: 그래픽 데스크탑 환경으로 돌아갑니다.
Ctrl+Alt+F3: TTY 3을 엽니다.
Ctrl+Alt+F4: TTY 4를 엽니다.
Ctrl+Alt+F5: TTY 5를 엽니다.
Ctrl+Alt+F6: TTY 6을 엽니다.
이러한 전체 화면 콘솔에 액세스하면 Linux의 명령줄 설치만 사용하는 사용자가 허용되고 많은 Linux 서버가 이러한 방식으로 구성되어 수많은 콘솔에 액세스할 수 있습니다.
그래픽 사용자 인터페이스가 있는 Linux 시스템에서 작업했는데 세션이 중단된 적이 있습니까? 이제 TTY 콘솔 세션 중 하나로 이동하여 문제를 해결할 수 있습니다.
사용 top 그리고 ps 실패한 응용 프로그램을 찾은 다음 kill로 종료하거나 가능한 한 정상적으로 종료하십시오.
오랜 역사를 지닌 3개의 작은 편지
Linux의 tty 명령은 1971년 Unix에서 처음 사용된 1800년대 후반의 구식 장치에서 이름을 얻었으며 여전히 Linux 및 기타 Unix 유사 운영 체제의 일부입니다. 이 작은 녀석에게는 그 뒤에 숨겨진 이야기가 있습니다.








