사용자 도구

사이트 도구


linux:x

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
linux:x [2019/10/25 13:45]
kwon37xi [Zoom mode]
linux:x [2023/05/18 10:05] (현재)
kwon37xi [.xprofile 에서 systemd 형태 환경변수 읽기]
줄 1: 줄 1:
-====== Linux X Window ======+====== Linux X Window / X11 ====== 
 +===== 초기화 스크립트 ===== 
 +  * ''/etc/X11/Xsession.d'' 디렉토리에 각종 초기화 스크립트가 있음. 
 + 
 +===== 로그인 후 GUI 환경 변수 설정 ===== 
 +  * [[linux:systemd|systemd]] 를 사용할 경우에는 systemd 방식의 환경변수도 기본적으로 작동한다. 
 +  * [[linux:wayland|Wayland]]는 별도 방식 사용함. 
 +  * ''.xprofile'' 
 +    * [[linux:ubuntu|Ubuntu Linux]]에서 확실히 실행됨. 그러나 GDM과 LightDM 전용이다. 
 +    * 환경변수만 넣어야 했다. 다른 기능 호출을 하면 오류 발생함. 
 +  * 확인필요 : GUI 애플리케이션에 적용되는 환경변수는 **Debian/Ubuntu 계통 전용** ''.xsessionrc'' 에 ''export X=1'' 형태로 넣어주면 모든 GUI 애플리케이션에 적용된다. 
 +  * 확인필요 : ''~/.pam_environment'' 환경변수는 모든 로그인시마다 실행된다. 
 +  * 단, 일부 환경에서 auto start application 들은 위 환경변수설정보다 먼저 실행된다. 
 +  * 확인필요 : [[linux:ubuntu|Ubuntu Linux]] [[linux:gnome|Gnome]]의 경우(혹은 다른 배포판도), ''~/.gnomerc'' 설정을 읽어들인다. 
 +  * [[https://wiki.archlinux.org/index.php/environment_variables|Environment Variables - Arch]] 
 + 
 +===== .xprofile 에서 systemd 형태 환경변수 읽기 ===== 
 +  * [[linux:systemd|systemd]] 방식 환경변수(''~/.config/environment.d/*.conf'')가 만약에 작동하지 않는다면 유사 형태로 만들 수 있다. 
 +    * systemd 방식은 스크립트는 안된다. ''KEY=value'' 방식이다. 
 +  * ''.xprofile'' 을 다음과 같은 형태로 작성하면 systemd 형식 환경변수 지정도 함께 사용가능하다. 
 + 
 +<code sh> 
 +# systemd environment.d 를 X11/Gnome 환경에서도 읽도록 한다. 
 +# 오름차순 정렬을 위해서 ls 명령으로 순회한다. 
 +set -o allexport # set -a 
 + 
 +for conf in `ls ~/.config/environment.d/*.conf` 
 +do 
 +    source "$conf" 
 +done 
 + 
 +set +o allexport # set +a 
 + 
 +</code> 
 + 
 +===== 각 설정 파일의 차이 ===== 
 +  * [[https://unix.stackexchange.com/questions/281858/difference-between-xinitrc-xsession-and-xsessionrc|x11 - Difference between .xinitrc, .xsession and .xsessionrc - Unix & Linux Stack Exchange]] 
  
 ===== Zoom mode ===== ===== Zoom mode =====
linux/x.1571978730.txt.gz · 마지막으로 수정됨: 2019/10/25 13:45 저자 kwon37xi