デスクトップセッション(GNOMEなど)でシステムユーザーマネージャを使用するのはなぜですか?

デスクトップセッション(GNOMEなど)でシステムユーザーマネージャを使用するのはなぜですか?

GNOMEなどのデスクトップは、プロセスをセッションごとの範囲からユーザー固有のシステム管理者(systemd --user)に移動しました。これには、GNOME端末などのGUIアプリケーションが含まれます。

GNOMEはシステムユーザーマネージャを何に使用しますか?私が読める理由はありますか?


GNOMEはセッションの環境変数をユーザーマネージャにコピーしているようです。 GNOMEは複数の同時ログインをサポートしていません。これらの環境変数には、意図的にまたは意図せずに XDG_SESSION_ID が含まれます。

loginctl、良いloginctl lock-session結局、あまりよく定義されていない2番目のセッションの概念をサポートするように修正されました。

人々がこのような奇妙な現象を引き起こした動機が何であるか疑問に思います。

答え1

これには多くの利点がありますが、最大の利点は、各アプリケーションを独自のカーネルcgroupに配置することです。これにより、gnome-shellはより信頼性の高いアプリケーションマッチングを実行でき、リソース制御を使用して(たとえば)EpiphanyがシステムRAMの20%しか持たないと言うことができます。

さらに、これはアプリケーションサンドボックス化のためのいくつかの基本的な基盤を提供します。

https://wiki.gnome.org/ThreePointThirteen/Features/SystemdUserSession

私はGNOMEがCGroupsに興味を持っていることを理解しています。 Systemdはこれに既存のフレームワークを提供します。

何の理由も見つかりませんでした。ケード私の検索では、プラズマはまさにそのようなことをしました。私が得た最も近いもの

これまでの私の考えでは、Waylandシェルのプラズマはsystemdによって開始されなければならないということです。具体的には、KWinセッションコンフィギュレータを起動するためにソケットアクティベーションを使用することを検討しています。

https://plus.google.com/+MartinGr%C3%A4%C3%9Flin/posts/GMtZrNCeaLD

しかし、プラズマセッションが不可欠である場合、ソケット活性化KWinがなぜ意味があるのか​​についての説明はない。


systemd --session私はなぜsystemdが終了して埋め込まれたのかsystemd --user調べていませんpam_systemd。たぶん、原則として、セッションごとのインスタンスはよりクリーンなシステムであるかもしれませんが、わかりません。私はそれがあまり魅力的ではないいくつかの実用的な理由があると思います。

答え2

一つある更新された説明。報告された利点は次のとおりです。

  • XWaylandやスマートカードサービスなど、必要な場合にのみ特定のタスクを開始できるようにする
  • メモリにはリソース制約を適用し、サービスにはCPUを適用します。

systemdに既に慣れている人にとって、これはサービスの起動、停止、無効化、アプリケーションの環境変数の設定、特定のサービスのログの表示、管理などのタスクを実行する、より標準化された一貫した方法を意味します。

個人的には、以前はGnomeセッションのすべての部分がどのように管理されているかわかりませんが、systemdには慣れているので、デスクトップをより簡単に理解して管理することができます。

関連情報