Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

14.3. ユーザーセッション

14.3.1. ユーザーセッションにおける標準プロセス

工場出荷時のデフォルトの GNOME セッションでは、デーモン と呼ばれるプログラムはバックグラウンドプロセスとしてシステム上で実行されます。デフォルトで実行される以下のデーモンを見つけることができるはずです。
dbus-daemon
dbus-daemon は、プログラムが互いにメッセージを交換するために使用できるメッセージバスデーモンを提供します。dbus-daemon は D-Bus ライブラリーで実装され、2 つのアプリケーション間の 1 対 1 の通信を提供します。
詳細情報は、dbus-daemon(1)の man ページを参照してください。
gnome-keyring-daemon
さまざまなプログラムや Web サイトのユーザー名とパスワードなどの認証情報は、gnome-keyring-daemon を使用してセキュアに保存されます。この情報は、キーリングファイルと呼ばれる暗号化されたファイルに書き込まれ、ユーザーのホームディレクトリーに保存されます。
詳細は、gnome-keyring-daemon(1)の man ページを参照してください。
gnome-session
gnome-session プログラムは、GDM などのディスプレイマネージャーを使用して GNOME デスクトップ環境を実行します。ユーザーのデフォルトのセッションは、システム管理者によるシステムのインストール時に設定されます。gnome-session は通常、システムで正常に実行された最後のセッションを読み込みます。
詳細は、gnome-session(1)の man ページを参照してください。
gnome-settings-daemon
gnome-settings-daemon は、GNOME セッションと、セッション内で実行されるすべてのプログラムの設定を処理します。
詳細は、gnome-settings-daemon(1)の man ページを参照してください。
gnome-shell
gnome-shell は、プログラムの起動、ディレクトリーの参照、ファイルの表示など、GNOME のコアユーザーインターフェイス機能を提供します。
詳細は、gnome-shell(1)の man ページを参照してください。
pulseaudio
pulseaudio は、Red Hat Enterprise Linux のサウンドサーバーで、プログラムは Pulseaudio デーモンを使用してオーディオを出力できます。
詳細は、pulseaudio(1)の man ページを参照してください。
ユーザーのセットアップにより、とりわけ以下の内のいくつかを確認できる場合があります。
  • dconf-service
  • ibus
  • at-spi2-dbus-launcher
  • at-spi2-registryd
  • gnome-shell-calendar-server
  • goa-daemon
  • gsd-printer
  • さまざま な evolution ファクトリープロセス
  • 各種の GVFS プロセス

14.3.2. ユーザーデフォルトセッションの設定

デフォルトのセッションは、AccountsService と呼ばれるプログラムから取得されます。accountsservice はこの情報を /var/lib/ AccountsService /users/ ディレクトリーに保存します。
注記
GNOME 2 では、ユーザーのホームディレクトリーの .dmrc ファイルを使用してデフォルトのセッションを作成しました。この .dmrc ファイルは使用されなくなりました。

手順14.5 ユーザーのデフォルトセッションの指定

  1. 以下のコマンドを実行して、gnome-session-xsession パッケージがインストールされていることを確認します。
    # yum install gnome-session-xsession
  2. 利用可能な各セッションの .desktop ファイルがある /usr/share/xsessions ディレクトリーに移動します。.desktop ファイルの内容を参照して、使用するセッションを決定します。
  3. ユーザーのデフォルトセッションを指定するには、/var/lib/AccountsService/users/username ファイル でユーザーの アカウントサービス を更新します。
    [User]
    Language=
    XSession=gnome
    この例では、/usr/share/xsessions/gnome.desktop ファイルを使用して GNOME がデフォルトのセッションとして設定されています。Red Hat Enterprise Linux 7 のシステムのデフォルトは GNOME クラシック( /usr/share/xsessions/gnome-classic.desktop ファイル)であることに注意してください。
ユーザーのデフォルトセッションを指定した後は、ユーザーがログイン画面から別のセッションを指定しない限り、ユーザーの次回のログイン時にこのセッションが使用されます。

14.3.3. カスタムセッションの作成

カスタマイズされた設定で独自のセッションを作成するには、以下のステップに従います。
  1. /etc/X11/sessions/new-session .desktop に .desktop ファイルを作成します。ファイルが以下のエントリーを指定していることを確認します。
    [Desktop Entry]
    Encoding=UTF-8
    Type=Application
    Name=Custom Session
    Comment=This is our custom session
    Exec=gnome-session --session=new-session
    Exec エントリーは、実行するコマンドを、場合によっては引数と共に指定します。gnome-session --session=new-sessionコマンドを使用してカスタムセッション を実行できます。
    gnome-session で使用できるパラメーターの詳細は、 gnome-session (1)の man ページを参照してください。
  2. /usr/share/gnome-session/sessions/new-session.session にカスタムセッションファイルを作成します。このファイルには、セッション の名前と必要なコンポーネントを指定できます。
    [GNOME Session]
    Name=Custom Session
    RequiredComponents=gnome-shell-classic;gnome-settings-daemon;
    RequiredComponents で指定した項目には、対応する .desktop ファイルが /usr/share/applications/ にある必要があることに注意してください。
カスタムセッションファイルの設定後、新しいセッションは GDM ログイン画面のセッションリストで利用可能になります。

14.3.4. ユーザーセッションログの表示

ユーザーセッションの問題に関する詳細情報を確認する場合は、systemd ジャーナルを表示できます。Red Hat Enterprise Linux 7 は systemdベースのシステムであるため、ユーザーセッションログデータはバイナリー形式で systemd ジャーナルに直接保存されます。
注記
Red Hat Enterprise Linux 6 では、ユーザーセッションのログデータは ~/.xsession-errors ファイルに保存されていましたが、このファイルは使用されなくなりました。

手順14.6 ユーザーセッションログの表示

  1. 次のコマンドを実行して、ユーザー ID (uid)を確認します。
    $ id --user
    1000
  2. 上記で判別されたユーザー ID のジャーナルログを表示します。
    $ journalctl _UID=1000

詳細情報の入手

journalctl(1)の man ページには、systemd ジャーナルの使用状況に関する詳細情報が記載されています。
Red Hat Enterprise Linux 7 で systemd ジャーナルを使用する方法は、 Red Hat Enterprise Linux 7 システムレベルの認証ガイドを参照してください。

14.3.5. 全ユーザー用の自動起動アプリケーションの追加

ユーザーのログイン時にアプリケーションを自動的に起動するには、そのアプリケーションの .desktop ファイルを /etc/xdg/autostart/ ディレクトリーに作成する必要があります。
個々のユーザーの自動起動(スタートアップ)アプリケーションを管理するには、gnome-session-properties アプリケーションを使用します。

手順14.7 全ユーザー用の自動起動 (スタートアップ) アプリケーションの追加

  1. /etc/xdg/autostart/ ディレクトリーに .desktop ファイルを作成します。
    [Desktop Entry]
    Type=Application
    Name=Files
    Exec=nautilus -n
    OnlyShowIn=GNOME;
    AutostartCondition=GSettings org.gnome.desktop.background show-desktop-icons
  2. Files をアプリケーションの名前に置き換えます。
  3. nautilus -n をアプリケーションを実行するために使用するコマンドに置き換えます。
  4. AutostartCondition キーを使用して GSettings キーの値を確認することができます。
    セッションマネージャーは、キーの値が true である場合にアプリケーションを自動的に実行します。キーの値が実行中のセッションで変更される場合、セッションマネージャーは、直前のキーの値に基づいてアプリケーションを起動または停止します。

14.3.6. 自動ログインの設定

Administrator アカウントタイプのユーザーは、GNOME SettingsUsers パネルから Automatic Login を有効にできます。システム管理者は、以下のように GDM カスタム設定ファイルで自動ログインを手動でセットアップすることもできます。

例14.1 ユーザー john の自動ログインの設定

/etc/gdm/custom.conf ファイルを編集し、ファイル内の [daemon] セクションが以下を指定していることを確認します。
[daemon]
AutomaticLoginEnable=True
AutomaticLogin=john
john を自動的にログインできるように設定するユーザーに置き換えます。

14.3.7. 自動ログアウトの設定

特定の期間アイドル状態であったユーザーセッションは自動的に終了できます。対応する GSettings キーを設定してからこれをロックし、マシンがバッテリーまたは主電源を使用しているかに応じて異なる動作を設定できます。
警告
アイドルセッションが自動的に終了する場合、ユーザーは保存していないデータを失う可能性があることに注意してください。

手順14.8 電源搭載マシンの自動ログアウトの設定

  1. マシン全体の設定用に local データベースを /etc/dconf/db/local.d/00-autologout に作成します。
    [org/gnome/settings-daemon/plugins/power]
    # Set the timeout to 900 seconds when on mains power
    sleep-inactive-ac-timeout=900
    # Set action after timeout to be logout when on mains power
    sleep-inactive-ac-type='logout'
  2. ユーザーの設定を上書きし、ユーザーが /etc/dconf/db/local.d/locks/autologout で設定を変更できないようにします。
    # Lock automatic logout settings
    /org/gnome/settings-daemon/plugins/power/sleep-inactive-ac-timeout
    /org/gnome/settings-daemon/plugins/power/sleep-inactive-ac-type
    
  3. システムデータベースを更新します。
    # dconf update
  4. システム全体の設定に変更を適用するために、ユーザーは、一度ログアウトしてログインし直す必要があります。
関連する GSettings キーは以下のとおりです。
  • org.gnome.settings-daemon.plugins.power.sleep-inactive-ac-timeout
    コンピューターが AC 電源から実行している場合にスリープ状態に切り替わる前に非アクティブな状態にする必要がある秒数です。
  • org.gnome.settings-daemon.plugins.power.sleep-inactive-ac-type
    コンピューターが AC 電源から実行している場合にタイムアウトが経過するとどうなるかを設定します。
  • org.gnome.settings-daemon.plugins.power.sleep-inactive-battery-timeout
    コンピューターが電源から実行している場合にスリープ状態に切り替わる前に非アクティブな状態にする必要のある秒数です。
  • org.gnome.settings-daemon.plugins.power.sleep-inactive-battery-type
    コンピューターがバッテリー電源から実行している場合にタイムアウトが経過したらどうなるかを設定します。
使用できる値一覧のキーで gsettings range コマンドを実行できます。以下に例を示します。
$ gsettings range org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type
enum
'blank'
'suspend'
'shutdown'
'hibernate'
'interactive'
'nothing'
'logout'

14.3.8. 画面の明るさとアイドル時間の設定

以下の GSettings キーを設定することにより、明るさのレベルを下げるよう設定するほか、明るさのレベルおよびアイドル時間を設定することができます。

例14.2 明るさのレベルを下げる設定

デバイスがしばらくアイドル状態になったときに明るさのレベルを下げるように設定するには、/etc/dconf/db/local.d/00-power にマシン全体の設定用に local データベースを作成します。 以下に例を示します。
[org/gnome/settings-daemon/plugins/power]
idle-dim=true

例14.3 明るさのレベルの設定

明るさのレベルを変更するには、/etc/dconf/db/local.d/00-power でマシン全体の設定用に local データベースを作成し、30 を使用する整数値に置き換えます。
[org/gnome/settings-daemon/plugins/power]
idle-brightness=30

例14.4 アイドル時間の設定

画面が空白になり、デフォルトのスクリーンセーバーが表示されるまでのアイドル時間を設定するには、/etc/dconf/db/local.d/00-session にマシン全体の設定用に local データベースを作成し、900 を使用する整数値に置き換えます。
[org/gnome/desktop/session]
idle-delay=uint32 900
上記に示されるように、整数値と共に uint32 が含まれている必要があります。
root で dconf update コマンドを実行して、変更をシステムデータベースに組み込む。
システム全体の設定に変更を適用するために、ユーザーは、一度ログアウトしてログインし直す必要があります。
注記
上記の設定をロックダウンして、ユーザーがこれらの設定を変更できないようにすることもできます。ロックについての詳細は、「特定の設定のロックダウン」 を参照してください。

14.3.9. ユーザーのアイドル時の画面のロック

スクリーンセーバーを有効にし、ユーザーがアイドル状態になるとスクリーンが自動的にロックされるようにするには、dconf プロファイルを作成し、GSettings キーペアを設定してからこれをロックし、ユーザーがこれを編集できないようにします。

手順14.9 スクリーンセーバーの有効化および画面のロック

  1. システム全体の設定用に local データベースを /etc/dconf/db/local.d/00-screensaver に作成します。
    [org/gnome/desktop/session]
    # Set the lock time out to 180 seconds before the session is considered idle
    idle-delay=uint32 180
    [org/gnome/desktop/screensaver]
    # Set this to true to lock the screen when the screensaver activates
    lock-enabled=true
    # Set the lock timeout to 180 seconds after the screensaver has been activated
    lock-delay=uint32 180
    以下に示すように、整数キーの値と共に uint32 を組み込む必要があります。
  2. ユーザーの設定を上書きし、ユーザーが /etc/dconf/db/local.d/locks/screensaver ファイルで設定を変更できないようにします。
    # Lock desktop screensaver settings
    /org/gnome/desktop/session/idle-delay
    /org/gnome/desktop/screensaver/lock-enabled
    /org/gnome/desktop/screensaver/lock-delay
    
  3. システムデータベースを更新します。
    # dconf update
  4. システム全体の設定に変更を適用するために、ユーザーは、一度ログアウトしてログインし直す必要があります。

14.3.10. スクリーンキャストの録画

GNOME Shell には、セッション中にデスクトップまたはアプリケーションのアクティビティーを記録し、録画を webm 形式で高解像度ビデオファイルとして配信できる組み込みスクリーンキャストレコーダーが特長とされています。

手順14.10 スクリーンキャストの作成

  1. 録画を開始するには、Ctrl+Alt+Shift+R を押します。
    レコーダーがスクリーンアクティビティーをキャプチャーする際に、画面の右下の隅に赤い円が表示されます。
  2. 録画を停止するには、Ctrl+Alt+Shift+R を押します。画面の右下隅にあった赤い円は表示されなくなります。
  3. ~/Videos フォルダーに移動します。ここには、Screencast で始まるファイル名の録画されたビデオがあり、録画の日時が含まれます。
組み込みレコーダーは、マルチモニターのセットアップのすべてのモニターを含め、常に画面全体をキャプチャーすることに注意してください。