연습장

12. X 윈도우 본문

리눅스 마스터 2급

12. X 윈도우

js0616 2024. 6. 5. 05:57

데스크톱 환경

- GUI를 사용자에게 제공하는 인터페이스 스타일

- GNOME, KDE Plasma, Xfce, LXQt 등

 

윈도 매니저

- x-윈도우 상에서 윈도의 배치와 표현을 담당하는 시스템 프로그램

 

디스플레이 매니저

- x-윈도우 구성 요소 중 사용자 로그인 및 세션 관리 수행 프로그램 , XDM, GDM, KDM 등이 존재

 


데스크톱 환경

 

KDE 
- 데스크톱 환경의 일종이다.
- 기본 윈도우 매니저 : Kwin, FWM
- C++ / Qt 라이브러리를 기반으로 만들어졌다.
- 리눅스뿐만 아니라 FreeBSD, Solaris, OS X 등도 지원 

- plasma (환경)

- Gwenview : KDE의 기본 이미지 뷰어

GNOME 2.x
- GTK 를 기반으로 하는 리눅스 계열의 데스크톱 환경
- GNU 프로젝트
- 기본 윈도우 매니저 : MetacityEnlightenment , Mutter (3.x)

-  파일관리자(탐색기) : Nautilus

- Eog : 이미지 뷰어 프로그램

- Gimp : 이미지 편집 프로그램


xfce 
- UNIX 및 유닉스 계열
GTK+ 2 Toolkit을 기반
- 윈도우 매니저 : Xfwm

LXDE

- 유닉스와 POSIX 호환 플랫폼(리눅스나 BSD)에서 사용할 수 있는 자유 오픈소스 데스크톱 환경


 


기타 윈도우 매니저

Window Maker
- 깔끔한 인터페이스와 사용의 편리.

TVWM
- 탭 윈도우 매니저, X 윈도우 시스템에 포함된 기본 윈도우 매니저 
- 최초의 ICCM 윈도우 매니저

FVWM
- twm 에서 파생되어 개발, 안정적이고 지속적으로 사용되어 왔다.

AfterStep
- fvwm 기반 개발, 넥스트스탭의 GUI와 유사한 사용자 인터페이스 제공

 


 

Xlib

- C언어로 구현된 클라이언트 라이브러리로 X 서버와 대화

- 저수준의 인터페이스로 키보드나 마우스에 대한 반응 등의 단순한 기능

- 최근 X.org에서는 XCB(X protocol C-language Binding) 로 대체하여 사용

 

XCB

- Xlib와 비교하여 향상된 쓰레딩 기능을 지원

- 크기가 작고 단순하며 직접 X 프로토콜에 접근도 가능

 


부팅

 

부팅시 x 윈도가 실행 되도록 시스템의 기본 대상을 GUI (graphical) 로 설정(set) 

 

# GUI

systemctl set-default graphical.target

systemctl set-default runlevel5

 

# CLI

systemctl set-default multi-user.target.

systemctl set-default runlevel3

 

 

# 현재 설정된 모드 확인
#systemctl get-default ~~

 

 

 

# x 윈도우 시스템에 할당된 TCP 포트 번호는 6000+ 

 

 

#  화면의 크기(해상도)를 1024*768 로 변경한다.
xrandr -s 1024*768 
xrandr : 명령행에서 화면 크기 및 방향 등을 확인 및 변경

 

# 텍스트 모드로 부팅된 상태에서 X 윈도를 실행

startx

 


LibreOffice Draw : 그림판
LibreOffice Writer : 워드
LibreOffice Calc : 스프레드시트 (엑셀)
LibreOffice Impress : 파워포인트 

 

totem : GNOME 데스크톱 환경의 기본 동영상 플레이어
ImageMagick : 오픈소스 이미지 처리 및 변환 도구, 단순 변환, 크기 조정, 포맷 변경
Eog : GNOME 데스크톱 환경의 기본 이미지 뷰어
Gimp : GNU 이미지 처리 프로젝트 , 사진 편집에 적합

 

Gwenview : KDE의 기본 이미지 뷰어


gedit : X윈도 시스템 환경에서 사용할 수 있는 오픈 소스 텍스트 편집기


원격지

 

 

A 시스템은 X 클라이언트가 되고, 환경변수인 DISPLAY를 변경한다.

B : X 서버 , xhost 명령 사용

 

클라이언트 : Display 
서버 : xhost 

 

X 윈도는 클라이언트/서버 구조로 되어있는데, 
서로간의 통신을 위해 X 프로토콜을 사용한다.
아울러 X클라이언트는 X윈도에서 동작하는 일종의 응용 프로그램을 뜻한다.

 

 


 

# X 클라이언트를 실행하면 로컬 시스템의 첫 번째 X 서버에 실행된다. 

 

 

xhost -> IP나 도메인명을 이용해서 서버 접속
xauth -> MAC 방식으로 서버 접속, .Xauthority 파일의 쿠키 내용을 추가, 삭제, 리스트를 출력하는 유틸리티

 

.Xauthority : X 윈도를 실행할 경우 관련 키 정보를 저장하는 파일

 

# 원격지에서 전송받은 킷캆을 설치하는 명령
xauth add $DISPLAY . f778bead......002ba58

 

 

#  해당 IP 주소의 X 클라이언트를 허가 ('+' 생략가능)

xhost +IP

 

# X 서버에 접근할 수 있는 클라이언트를 허가하는 과정

xhost 192.168.5.13

 

# 해당 사용자 차단
xhost -IP

 

 

VISUAL : 사용자의 기본 텍스트 에디터를 나타내는 환경 변수
TERM : 터미널 유형을 나타내는 환경 변수
XTERM : X 윈도우 시스템에서 사용되는 터미널 에뮬레이터의 종류를 나타내는 환경 변수
DISPLAY : X 클라이언트를 원격지로 전송하기 위해 변경하는 환경 변수

 

# X 클라이언트 프로그램 실행 시 두 번째 X 윈도에 실행

# echo $DISPLAY

:1


 

 

리눅스 커널 기반 운영체제

- webOS , GENIVI, Tizen 

 

유닉스 기반

- QNX 

 

 

 

 

 

 

https://www.comcbt.com/cbt/

https://m.blog.naver.com/dsz08082/221207762085