X-Windows
리눅스 환경의 각종 어플리케이션과 유틸리티에 대해 GUI를 제공한다
출현배경
- Athena 프로젝트
- IBM, MIT, DEC Athena 프로젝트를 통해서 X-윈도우를 처음으로 개발
- X11 발표
- x컨소시엄
- 1988년 여러 컴퓨터 제조업체로 구성
- x11r2에서 x11r6까지 발표
- 오픈 그룹
- 1996년 오픈소프트웨어 재단과 x/open 으로 형성된 그룹
- x11r6.4 발표
- X.org
- 1999년 오픈 그룹을 기반으로 x.org 재단이 만들어짐
- x11r6.8 발표
특징
- 네트워크 기반의 그래픽 환경 지원
- 이기종 시스템 사이에서도 사용 가능
- 네트워크 프로토콜 기반의 클라이언트/서버 시스템
- 서버는 클라이언트들간의 자원 공유, 메시지 전달, 입출력 기기와의 중계 담당
구성요소
이름 | 설명 |
---|---|
XProtocol | X서버와 클라이언트 사이의 메시지 타입, 메시지 교환 방법을 규정 request, response, error, event 로 구성된다. |
Xlib | C나 Lisp 언어로 만든 XProtocol 지원 클라이언트 라이브러리 |
XCB | Xlib을 대체하기 위한 클라이언트 라이브러리 크기가 작고 단순하며 확장성이 뛰어나다. |
Xtoolkit | Xlib로 GUI 부품 개발 시의 비효율성 해결을 위한 구성요소 widget과 Xt Intrinsic을 포함한다. |
XFree86 | 인텔 X86계열의 유닉스 운영체계에서 동작하는 X서버 |
XF86Config | XFree86 설정 파일/etc/X11 또는 /usr/X11R6/lib/X11 에 파일이 위치한다. |
/etc/inittab
init
프로세스가 읽는 파일로서, init
프로세스가 무엇을 해야 할 것인가를 정의한다.
이름 : 런레벨 : 옵션 : process -옵션
- 리눅스 사용 환경을 초기화한다
- 파일 시스템을 점검한다
- 서비스 프로세스를 관리한다
- 가상 콘솔을 관리한다
- 실행 level을 관리한다.
- 3 : CUI에 의한 다중 사용자 모드
- 5 : GUI에 의한 다중 사용자 모드
X-Window 실행
그래픽 환경이 아닌 터미널 윈도우로 로그인한 경우에는 몇 개의 프로그램을 실행해야 한다.
$ startx -- [인자값]
- 리눅스 사용 환경을 초기화한다
- 파일 시스템을 점검한다
- 서비스 프로세스를 관리한다
- 가상 콘솔을 관리한다
- 실행 level을 관리한다.
- 3 : CUI에 의한 다중 사용자 모드
- 5 : GUI에 의한 다중 사용자 모드
기능 키조합
터미널 변경 : Ctrl + Alt + F1~F4
X-Windows 상태 전환 : Ctrl + Alt + F7
X-Windows 강제 종료 : Ctrl + Alt + BackSpace
환경변수 DISPLAY
이를 이용하면 현재 X-Window Display 위치를 지정할 수 있다.
$ export DISPLAY=IP주소:디스플레이번호.스크린번호
윈도우 매니저
윈도우 매니저는 X-Windows 상에서 창의 배치와 표현을 담당하는 시스템 프로그램이다.
라이브러리로 Xlib
와 XCM
을 사용한다.
윈도우 매니저 | 특성 |
---|---|
fvwm | twm 에서 파생됨 안정적이고 일반화됨 Virtual Window Manager 로서 실제로 가상 데스크톱을 지원 |
twm | 초창기의 창 관리자 xlib을 사용하며 텍스트 형식 |
AfterStep | fvwm을 기반으로 만들어짐 넥스트스텝의 GUI와 유사한 사용자 인터페이스를 제공 |
Window Maker | 유닉스 계열 운영 체제에서 실행할 수 있음 GNU 데스크톱을 지원하며, GNOME과 KDE에 통합됨 |
BlackBox | 넥스트스텝의 인터페이스를 기반으로 하는 윈도우 매니저 |
kwm | KDE 1.x의 기본 윈도우 매니저 |
Enlightment | GNOME의 기본 윈도우 매니저 |
데스크톱 환경
GUI 사용자에게 제공하는 인터페이스 스타일로서 Desktop Manager 이다.
윈도우 매니저, 파일 관리자, 도움말, 제어판 등 다양한 도구를 제공하는 패키지 형태의 프로그램니다.
- KDE
- 노키아의 QT 툴 킷을 기반으로 한다.
- UNIX/Linux, Solaris, IRIX, FreeBSD 등에서 실행된다.
- kate, Konquerer, Kwin 등이 사용 툴이다.
- GNOME
- GNU Network Object Model Environment
- GTK+ 라이브러리를 기반으로 한다.
- BSD 와 GNU/리눅스에 포함하여 배포되고 있다.
- gedit, Web, Nautilus, Mutter, Metacity 등이 사용 툴이다.
- LXDE
- Light X11 Desktop Environment
- 창 관리자로 Openbox, 툴 킷으로 GTK 2 를 사용하고 있다.
- 빠른 성능, 에너지 절약, 가벼운 데스크톱 환경이기에 모바일 디바이스에 특화되었다.
- xfce
- XForums Common Environment
- 유닉스 계열을 위한 자유 소프트웨어 테스크톱 환경이다.
- GTK+2 툴킷을 기반으로 한다.
- Xfwm 윈도우 매니저를 사용한다.
디스플레이 매니저
X window system 상에서 작동하는 프로그램이다.
로컬 또는 리모트 컴퓨터의 X server 접속과 세션 시작을 담당한다.
사용자에게 그래픽 로그인 화면을 띄워주고 아이디 패스워드 기반의 인증을 진행한다.
디스플레이 매니저 | 기능 |
---|---|
xdm | X Display Manager 현재 거의 사용되지 않는다. |
dtlogin | 유닉스 테스크톱 환경인 CDE에서 디스플레이 매니저로 사용 호환성을 위해 motif 라이브러리만 유지보수된다. |
kdm | KDE Display Manager |
gdm | GNOME Display Manager |
X-Window 활용
xhost
X 서버에 접속할 수 있는 클라이언트를 지정하거나 해제한다.
X 서버에게 디스플레이를 요청 시 해당 요청에 대해 허용 여부를 호스트 단위로 제어한다.
$ xhost [+|-] [IP|도메인명]
옵션
+ : 접속을 허용
- : 접속을 금지
xauth
.Xauthority
파일의 쿠키 내용을 추가, 삭제, 리스트를 출력하는 유틸리티이다.
xhost
는 호스트 기반의 인증 방식이며, xauth
는 MMC 방식의 인증 방식을 사용하기 위한 유틸리티이다.
.Xauthority
파일에는 응용 프로그램이 실행될 표시장치에 대한 매직 쿠키 가 있어야 한다.- 이 매직 쿠키는
MIT-MAGIC-COOKIE-1
이라는 쿠키값을 가진다.
$ xauth [옵션]
옵션
list [표시장치명] : 현재 사용되는 모든 쿠키값 리스트 확인
add : 지정된 프로토콜 및 키를 지정된 표시장치에 권한 부여
X-Window 응용 프로그램
프로그램 | 설명 |
---|---|
LibreOffice | 오피스 프로그램 패키지 - Writer : 문서 작성기 - Impress : 프레젠테이션 - Calc : 스프레드시트 - Draw : 드로잉 프로그램 |
gedit | 텍스트 편집 프로그램 |
kwrite | KDE 기반의 텍스트 편집기 |
GIMP | 이미지 편집 프로그램 |
ImageMagick | 이미지의 생성 및 편집을 지원하는 프로그램 |
eog | GNOME의 이미지 뷰어 |
kolourpaint | Ubuntu 이미지 편집 프로그램 |
gThumb | GNOME 데스크톱 이미지 뷰어 프로그램 |
gwenview | KDE의 기본 이미지 뷰어 |
Totem | GNOME 기반의 사운드 및 비디오 재생 프로그램 |
RHYTHMBOX | 통합형 음악 관리 프로그램 |
CHEESE | GNOME 기반의 카메라 동영상 프로그램 |
Eclipse | 통합 개발 환경 IDE |
Dolphin | KDE용 파일 괸리자 Konqueror가 웹 브라우저와 파일 관리자의 역할을 수행한다. |
KSnapshot | 스크린샷 프로그램 |
'공부한 이야기 > 리눅스' 카테고리의 다른 글
리눅스 - 응용 분야 (0) | 2022.08.24 |
---|---|
리눅스 - 네트워킹 (0) | 2022.08.24 |
리눅스 - 주변기기 (0) | 2022.08.21 |
리눅스 - 소프트웨어 관리 (0) | 2022.08.21 |
리눅스 - 에디터 (0) | 2022.08.21 |