2013년 9월 9일

gnuscreen를 이용한 터미널 화면 공유


gnuscreen(이하 screen)은 리모트 터미널 연결 후에 연결이 끊어지더라도 진행 중인 작업은 계속되도록 하는데 있어서 필수 툴이다.

screen를 사용하면 리모트 서버에 접속하여 장시간 수행해야하는 명령어를 입력한 후에 screen를 detach하면 screen은 종료되지 않고 유지되며 그 내부의 작업도 동일하게 유지된다. 사용자가 shell를 종료하고 로그아웃하여도 작업은 계속 유지된다.

screen에는 터미널 화면을 공유하는 기능을 제공한다.

먼저, REMOTE_HOST에 접속하고 screen를 다음의 옵션으로 실행한다.

@REMOTE_HOST $ screen -s myScreenTest




이 화면을 함께 보고자 하는 사용자는 동일한 계정으로 REMOTE_HOST에 접속한다.
(테스트를 위해서 다른 터미널을 열고 실행함.)

그리고, 다음 명령어로 화면을 함께 볼 수 있다.

@REMOTE_HOST $ screen -x myScreenTest


한 사람이 입력한 화면이 다른 화면에도 그대로 갱신되어 나타난다.

리모트에 있는 사람과 pair-coding 하는데 유용할까?