본문 바로가기

일상

tmux 설치 및 간단 사용법

안녕하세요 오늘은 터미널을 활용한 tmux를 알아보겠습니다.

 

tmux를 알아보기 전에 tmux가 무슨 역할을 하는지부터 알아볼까요?

 

우분투에서 터미널을 사용하다보면 창을 여러개 띄우기 마련입니다

그렇지만 tmux는 한 창에서 영역을 분할해서 쓸 수 있습니다.

 

자세한 이야기는 생략하고 저는 제가 사용하는 명령어 위주로 설명 드릴려고합니다

(저는 쓰는 명령어만 쓰기 때문에 그 외 다른 명령어나 window, pane 과 같은 개념을 알고싶으시다면 다른 블로그에 자세히 포스팅   되있으니 참고하시길 바랍니다.)

 

일단 하기에 앞서 설치부터 해야겠죠?

 

$ sudo apt install tmux

 

명령어를 통해 설치를 합니다

설치가 완료됬으니 한번 실행 해볼까요?

 

 

$ tmux

 

다음 명령어를 실행하면 시작화면은 다음과 같을 텐데요

일반 터미널과 크게 다를 바가 없습니다. 다만 색이 안이쁘네요 ㅎㅎ

 

자 그럼 command를 살펴볼까요?

command를 입력하기 전에  눌러야 할 키가있습니다.

 

(ctrl  + b )  = 이제부터 이걸 별이라고 칭하고 얘기하겠습니다

(이거 진짜 중요합니다 이거 먼저 누르고 다음에 누르는 거에요! 이거 안누르면 아무것도 command가 실행 안됩니다 !!!)

참고: 타이핑이 한글로 되있으면 커맨드가 안먹힙니다.

 

 

자 이제 창을 분할 해볼까요?

을 누른 뒤 %를 눌러볼까요

 

다음으로는 수직 분할

 을 누른 뒤 "

이때 보통 여러분들은 분할 된 창을 나가는 법을 몰라서

이렇게 될겁니다 

그럼 "나가는 법은 뭐니?" 라고 말하고 싶으실텐데 

 

 

active된 창에서 

$ exit 

를 입력하시면 됩니다.

 

마지막 남은 창에서 $ exit 를 타이핑하면 tmux 터미널을 종료하실 수 있습니다.

 

 

자 이제 다른 창을 이동해보도록 할까요

 

 을 누른 뒤 q

여기서 누른 숫자대로 패널을 이동 하실 수 있습니다.(빨간색이 지금 사용중인 공간)

 

 

와 방향키를 같이 누르면 사이즈 조절도 가능합니다.

 

 

tmux 의 장점은 쓰던 터미널을 그대로 놓고 나갈 수 있다는 점입니다.

 을 누른 뒤 d 를 누르면 계속 실행 하게 하고 나올 수 있습니다.

 

 

그러면 다시 접속 하려면 어떻게 해야하니?

$ tmux ls

이와 같이 맨앞이 터미널 번호라 생각하시면 됩니다.

 

다시 쓰고싶으시면

$ tmux attach -t (여기는 쓰고 싶은 터미널 번호)

ex) 0번 터미널을 다시 쓰고싶다 싶으시다면

$ tmux attach -t 0

 

 

저는 이정도 명령어만 주로 활용합니다

tmux를 잘 활용하면 작업하던 터미널 환경의 세팅을 저장해서도 사용할 수 있다고 합니다 

저는 잘 쓰지 않기 때문에 생략하도록 하겠습니다.

 

그리고 저는 그냥 컴퓨터를 사용할 때에는 tmux를 잘 활용하지는 않습니다.

 

저 같은 경우에는 아이패드를 통해서 ssh를 통해 접속해서 활용합니다

ssh로 연 터미널은 하나의 창만 갖기 때문에 tmux의 기능은 크게 작용됩니다.

 

 

아이패드 termius 앱 화면

 

tmux 터미널은 같은 번호로 attach하면 터미널을 공유할 수 있습니다.

위에서 아이패드로 접속한 터미널을 데스크탑에서도 접속하면

다음과 같이 동일한 터미널을 공유해서 사용할 수 있습니다 

(그닥 쓸일은 없지만요)

 

 

저는 이 tmux를 활용해서

밖에 어디서든 저의 데탑을 원격으로 부팅하여 코딩할 수 있는 환경을 구축하였습니다.

 

그래서 저는 종종 친구와 스터디 할때 아이패드만 들고가서 ssh로 집에있는 데스크탑에 접속하여 코딩하곤 합니다.

 

jupyter-lab과 같은 웹 에디터의 경우 열어 놓은 터미널이 닫히면 session이 종료되기때문에

저는 tmux를 활용하여 백그라운드에서 실행중인 터미널을 켜두고

포트포워딩을 설정해둔 jupyter-lab에 접속하여 딥러닝 관련 공부를 종종 합니다.

(코딩하기엔 화면이 작다는 것만 빼면 최고 ㅠ.ㅠ)