다음 이전 차례

4. X에서 작업하기

이 섹션에서는 X에서 운용되는 클라이언트를 사용하는데 좀 더 가깝게 접근하게 될 것이다. 또한 X 시스템의 기본적인 운용 절차에 대해 이야기 한다. X는 윈도 매니저 없이는 그 자체로 어떤 직관적인 인터페이스도 없다. 그러나 명령행으로부터 프로그램을 시작하는 것은 매우 쉽다. 이런 방법으로 동시에 여러개의 X 터미널을 띄우는 것은 가장 일반적인 방법이다. 즉 그래피컬한 수단을 최대한 이용한다기 보다는 유용한 시스템적 측면을 사용하는 것이다. 실재로 명령행의 유연성이나 유용함은 무척 쓸만하다. 윈도 매니저 자체가 거의 필요없을 정도이다. 사실 윈도매니저는 매우 유용하고, 얼마 지나지 않아 윈도 매니저를 원하게 되겠지만 마우스가 없이 키보드만으로도 모든 작업을 빠르고 쉽게 수행할 수 있다는 점은 명령행 방식의 우수한 점이다.

아직은 윈도매니저와 클라이언트의 구분이 명확하지 않겠지만 그 차이점은 당신에게 새로운 국면을 맞이하게 할 것이다.한 가지 유용한 키바인딩으로 Ctrl-Alt-Backspace 가 있다. 이것은 X를 쓰던 중 곤란한 상황에 처했을 때 X에서 바로 빠져나오게 해 줄 것이다.

4.1 명령행 옵션

대부분의 X 프로그램은 항상 같은 기본적인 명령행 옵션을 제공하려 한다. 'MIT X 기본 툴킷(MIT X Toolkit Intrinsics)'을 사용하여 제작된 모든 어플리케이션은 자동으로 아래와 같은 옵션을 사용할 수 있다.

-display 디스플레이

이 옵션은 어떤 X 서버를 쓸 것인가를 선택하게 해 준다. 다음 절에 나오는 '디스플레이 이름'이라는 절을 참고하기 바란다.

-geometry 위치

초기의 윈도의 위치와 사이즈를 세팅한다. 여기에는 윈도의 폭x윈도의 높이+수평위치+수직위치 또는 +수평위치-수직위치와 같은 형식을 이용한다. 만일 음수 값으로 수평, 수직위치를 넣는다면 상대적으로 거꾸로 움직여진 위치에 놓여지게 될 것이다.

-font 폰트

생성될 윈도의 텍스트를 위해 쓰여질 폰트

-bg 바탕색

윈도의 바탕색

-fg 전경색

윈도의 전경색 또는 폰트의 색

-name 리소스 이름

어플리케이션에서 사용가능 한 리소스의 이름을 설정해 주는 것은 상당히 유용하다. 예를 들어 같은 어플리케이션을 두개 실행시키고 그 두개를 꼭 구분하기 원하는 경우 각기 다른 리소스 데이터 베이스에 기초한 다른 리소스를 가짐으로 좀더 쉽게 구분할 수 있게 해 준다.

-title 타이틀 문자열

일반적으로 윈도 매니저를 통해 각 윈도의 상단에 표시하게끔 해주는 윈도의 이름이다. -name 옵션과 구분하길 바란다.

-iconic

어플리케이션을 실행할 때 아이콘화 되어 실행시킨다.

-xrm 리소스 문자열

이 옵션은 이미 정해진 리소스 이름에 따르는 값을 새롭게 설정해줄 수 있게 해 준다. 또한 매번 특정 어플리케이션을 실행할 때 마다 지금 설명하고 있는 명령행 옵션을 꼭 세팅할 필요업이 X 시스템을 사용할 수 있도록 해 준다. 즉 다음과 같이 xterm -xrm "xterm*background: blue" 리소스 값을 설정해서 xterm을 수행하는 것은 내부적으로 xterm -bg blue와 똑같다. 그러나 리소스 값은 디폴트로 정해 줄 수 있으며 디폴트로 정해진 값은 특정 옵션이 없을 경우 기본 옵션이 된다. 이것에 대해서는 추후 설명하도록 하겠다.

4.2 디스플레이 이름

모든 X 서버는 다음과 같은 형태의 디스플레이 이름을 갖는다.

디스플레이 이름:디스플레이 번호.화면 번호

호스트 이름은 물리적으로 디스플레이에 연결된 컴퓨터의 이름이다. 따라서 서버에서 사용할 때 디스플레이 이름을 생략할 경우에는 자동으로 현재 사용중인 그 서버의 이름이 들어가게 된다. 따라서 단 한대의 컴퓨터에 연결되어 있고 단 하나의 X를 사용한다면 특별히 디스플레이 이름을 지정할 필요는 없다. 이 경우 해당 디스플레이 번호는 0 번이 된다. 디스플레이 번호는 하나 이상의 키보드와 모니터를 가진, X 터미널과 같은 기기에서 쓰인다. 화면 번호는 다중 모니터 세팅을 한 경우(한대의 모니터에서 여러개의 화면을 쓰는 경우를 말함. 화면은 동시에 보이는 것이 아니라 스위칭 됨) 특정 화면을 지정하기 위해 쓰인다. 만일 지금 이 글을 읽고 있는 로컬 머신을 지정하고 싶다면 -display :0.0 처럼 해 주면 된다. 호스트 이름이 생략되었으니 지금 당신의 앞에 보이는 컴퓨터의 이름으로 알아들을 것이다.

리눅스에서는 환경변수 DISPLAY 값을 이용해 디스플레이 이름을 지정할 수 있게 해 준다. 지금 내 시스템에서 DISPLAY는 :0.0 으로 설정되어 있으며 이것이 대부분의 시스템에서도 찾아볼 수 있는 값일 것이다. 다른 목절으로 이 기본 디스플레이를 바꾸고 싶다면 터미널에서 환경변수를 바꿔주거나(이것은 각 쉘에 따라 또한 다르다. 여기에서는 설명하지 않겠다.) X가 시작할때의 스크립트를 이용해 다르게 지정할 수 있다. 물론 매번 -display 옵션을 사용할 수도 있다.

혹 다음과 같은 경우를 만나게 될 지도 모른다. X에 들어 가있고 xterm이나 rxvt를 사용하는 도중에 관리자의 일을 수행하기 위해 su 명령을 이용해 루트로 들어갔을 경우 X 어플리케이션을 수행할 X의 DISPLAY 가 설정되어 있지 않아 어플리케이션을 띄우지 못할 지도 모른다.(일반적인 su 명령으로 root가 되었을 경우에는 root의 환경변수를 읽지 못한다.) 이 경우 -display 옵션을 이용해 지금 바로 사용중인 디스플레이에 root의 어플리케이션을 띄울 수 있다.(보안 문제로 현재 디스플레이의 원래 사용자가 아닌 다른 사용자가 이 디스플레이를 사용하는 것을 막아 놓았을 수도 있다.)


다음 이전 차례