ホームフォルダーの.xsession
ファイルの目的は何ですか?そこには何を入れるべきですか?デスクトップ環境はそのファイルを使用せず、ttyからのXスタートアップには.xinitrc
があります。
テキストモードでログインした場合、GUIセッションを xinit またはラッパースクリプトstartx
で開始すると、xinit
は次のことを行います。
/etc/X11/xinit/xserverrc
を使用)。/etc/X11
(通常は/etc/X11/xinit/xinitrc
)でいくつかのスクリプトを実行します。~/.xinitrc
を実行します。存在しない場合は、デフォルトのクライアントを実行します(従来はxterm
)。~/.xinitrc
が終了したら、Xサーバーを強制終了します。Xディスプレイマネージャー (xdm、gdm、kdm、wdm、lightdm、…)でグラフィカルモードでログインする場合、従来、ログイン後に実行されるのは、/etc/X11
、次に~/.xsession
のスクリプトです。
~/.xsession
には、~/.profile
と~/.xinitrc
を組み合わせた役割があります。セッションの初期起動を実行し(環境変数を定義するなど)、GUIに固有のプログラム(通常は少なくともウィンドウマネージャー)を起動します。
現在、ほとんどのXディスプレイマネージャーでは、セッションを選択できます。特定のセッションを選択すると、特定のデスクトップ環境、セッションマネージャー、ウィンドウマネージャーが起動します。次に実行されるのは、そのDE/SM/WMと、読み取りを選択した構成ファイルに基づいて起動することを選択したプログラムのみです。多くの環境は、従来の~/.xsession
を読み取る「カスタムセッション」を提供します。
最近のXセッションの起動は複雑になる可能性があります。開始するのに適した場所は、スクリプト/etc/X11/Xsession
で、実行方法を確認できます。
私のDebian/Ubuntuシステムでは、スクリプト/etc/X11/Xsession
が変数USERXSESSION=$HOME/.xsession
を設定します。その後、スクリプト/etc/X11/Xsession.d/50x11-common_determine-startup
はこのスクリプトを探し、/etc/X11/Xsession.options
のシステムポリシーで許可されていて、他のセッションがディスプレイマネージャから要求されていない場合は、このスクリプトをプライマリセッションとして使用します。
本を読むことを強くお勧めしますX Windowシステム管理者ガイド:Xバージョン11。第2章では、.xsession
の目的とサンプル設定の構成プロセス全体について説明します。また、x-windowに関連するすべての用語を説明します(そして、不気味にならないことを願っています:))。あなたは本を手に入れることができます
それはかなり古くなっていますが、今日まで変更されなかった根本的な概念の多くの情報を見つけることができ、それは非常に読みやすいです。さらに、当時一流であったものを見てみるのは本当に面白いです。
.xsessionは、X11環境の従来のstartscriptです。現在、kdmのようなセッションマネージャーを使用することは、それほど多くの用途ではありませんが、従来のセットアップシステムでは使用されています。これは、startxでX11を起動した後に実行されるものです。