startx는 어떤 데스크탑 환경을 실행합니까? 어떻게 바꿀 수 있나요?

startx는 어떤 데스크탑 환경을 실행합니까? 어떻게 바꿀 수 있나요?

많은 문서에서 나는 startxRaspbian OS에서 LXDE가 시작되고 있다는 것을 읽었습니다. 조금 혼란스러워요.

항상 startxLXDE GUI를 실행하시겠습니까?

startlxde또한 명령을 사용하는 예도 보았습니다 . 이 명령은 어떻게 다른가요? 동일한 GUI(LXDE)를 startx실행하는 이유는 무엇입니까 ? startlxde아니면 기본 GUI이기 때문에 실행됩니까?

GUI가 여러 개인 경우 기본 GUI를 어떻게 선택합니까?

Linux 시스템의 GUI에 대해 더 자세히 설명해 주실 수 있나요?

답변1

startx이를 실행하면 xinitX 서버 및 클라이언트 세션이 시작됩니다. 클라이언트 세션이 ~/.xinitrc있는 경우, 그렇지 않은 경우 /etc/X11/xinit/xinitrc(위치는 배포판에 따라 다를 수 있음) 이 스크립트의 기능은 배포판에 따라 다릅니다. Debian(Raspbian과 같은 파생 제품 포함)에서는 Debian 스크립트 /etc/X11/xinit/xinitrc가 다른 파일( , , )에서 사용자 세션을 찾고 적용되는 사용자 설정이 없으면 실행됩니다 /etc/X11/Xsession( 또는 [세션 관리자]가 설치되어 있지 않으면 반환됩니다). Fallback(폴백 ), 창 관리자가 설치되어 있지 않으면 설치되어 있는 가능성이 낮은 경우로 대체합니다./etc/X11/Xsession.d~/.xsession~/.xsessionrc~/.Xsessionx-session-managerx-window-managerx-terminal-emulator

실행되는 내용을 제어하려면 사용자 파일을 만들거나 로그인한 경우 ~/.xsession.~/.xinitrc~/.xsession디스플레이 관리자(즉, GUI 창에 비밀번호를 입력하는 경우) 이 파일 은 및 ~/.xinitrc에만 적용됩니다 . 사용이 진행되므로 입력 방법, 리소스, 비밀번호 에이전트 등과 같은 항목이 설정됩니다. 를 사용하는 경우 이 모든 작업을 수동으로 수행해야 합니다. 여기서도 다시 데비안에 대해 설명하겠습니다. 다른 Unix 변종에는 다른 설정이 있을 수 있습니다. 런타임에 실행할 항목을 지정 하거나 일반적으로 사용합니다 .xinitstartx~/.xsession/etc/X11/Xsession.xinitrc~/.xinitrcstartxxinit

~/.xinitrc또는 를 사용하는지 여부에 관계없이 ~/.xsession이 파일(일반적으로 쉘 스크립트이지만 실제로 다른 것을 사용하려는 경우에는 필요하지 않음)은 준비해야 할 모든 항목(예: 키보드 설정, 리소스, 시작되지 않은 애플릿)을 준비해야 합니다. 창 관리자 등에 의해) 마지막으로 세션을 관리하는 프로그램을 실행하십시오. 스크립트가 종료되면 세션이 종료됩니다. 일반적으로 exec스크립트 끝에서 스크립트를 세션 관리자 또는 창 관리자로 대체하기 위해 사용합니다.

귀하의 시스템에는 /usr/bin/startlxde시스템 전반에 걸친 기본 세션 관리자가 있을 수 있습니다. Debian 및 그 파생 제품에서는 다음 명령을 사용하여 사용 가능한 세션 관리자를 확인할 수 있습니다.

update-alternatives --list x-session-manager

또는 현재 사용 중인 제품에 대한 자세한 설명을 확인하세요.

update-alternatives --display x-session-manager

LXDE가 시스템 전체 기본값이 아니고 이를 계정의 기본값으로 설정하려는 경우 다음 ~/.xsession파일을 사용할 수 있습니다.

#!/bin/sh
exec startlxde

일부 Unix 변형에서는 이는 그래픽 로그인이 아닌 그래픽 로그인에만 작동하므로 startx동일한 로그인도 만들어야 합니다 ~/.xinitrc. (또는 그렇지 않은 경우: ~/.xsession첫 번째 그래픽 세션이므로 다른 작업을 수행해야 할 수도 있습니다. 예를 들어, . ~/.profile일부 환경 변수를 설정하기 위해 파일을 맨 위에 놓을 수 있습니다.

다른 환경을 한 번 시험해보고 싶다면 startx자체 명령줄에서 실행되도록 다른 프로그램을 지정할 수 있습니다. 이 startx프로그램에는 특이한 점이 있습니다. 프로그램의 전체 경로를 사용해야 합니다.

startx /usr/bin/startkde

또한 이 startx명령을 사용하면 서버에 전달할 매개변수를 지정할 수도 있습니다. 예를 들어, 여러 GUI 세션을 동시에 실행하려는 경우 매번 다른 디스플레이 번호를 전달할 수 있습니다. --명령줄에서 서버 매개변수를 전달합니다 startx.

startx /usr/bin/startkde -- :1

답변2

아니요: startx구성 가능합니다. ~에 따르면매뉴얼 페이지:

실행할 클라이언트를 결정하려면 먼저 사용자의 홈 디렉토리에서 startx이름이 지정된 파일을 찾으십시오 . .xinitrc찾을 수 없으면 라이브러리 디렉토리 xinitrc에 있는 파일을 사용합니다 xinit.

startxX를 시작하는 유일한 방법은 아닙니다(여기서 볼 수 있듯이 startlxde). 다시 매뉴얼 startx페이지가 도움이 됩니다:

startx 스크립트는 프런트엔드입니다.시니트(1)X Window System을 실행하는 단일 세션에 대해 더 나은 사용자 인터페이스를 제공합니다. 일반적으로 인수 없이 실행됩니다.

반면에 GUI(LXDE, KDE 등)를 선택하려면xdm예를 들어 그런 것 kdm, gdm또는LightDM다양한 데스크탑 유형을 선택하는 데 사용됩니다. 데비안에서는 일반적 kdm으로 다양한 데스크톱 유형을 허용하므로 사용합니다. 패키저는 gdm대부분의 데스크톱 유형을 허용하지 않으므로 내 요구 사항에 적합하지 않습니다.

xdm사용하다다른~/.xsession스크립트 및 시스템 스크립트 와 같이 시작할 스크립트 세트입니다 . 유사 제품은 이를 무시하고 자체 스크립트를 사용할 수 있습니다. 그러나 이것이 출발점입니다.

관련 정보