startxはどのデスクトップ環境を実行しますか?どのように変更できますか?

startxはどのデスクトップ環境を実行しますか?どのように変更できますか?

多くの文書では、私はstartxRaspbian OSでLXD​​Eが起動していることを読んでいます。少し混乱しています。

常に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にのみ適用されます。使用が進むにつれて、入力方法、リソース、パスワードエージェントなどの項目が設定されます。を使用している場合は、これらすべてを手動で実行する必要があります。ここでもまた Debian について説明します。他の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たとえば、そのようなものkdmgdmまたはLightDMさまざまなデスクトップタイプを選択するために使用されます。 Debian は通常kdm、さまざまなデスクトップタイプを受け入れるので使用します。パッケージャはgdmほとんどのデスクトップタイプを受け入れないため、私の要件には適していません。

xdm使うその他~/.xsessionスクリプトやシステムスクリプトなど、起動するスクリプトのセットです。同様の製品はこれを無視し、独自のスクリプトを使用できます。しかし、これが出発点です。

関連情報