Solaris 共通デスクトップ環境 上級ユーザ及びシステム管理者ガイド

第 3 章 ログイン時とセッション起動時の問題解決の方法

この章では、Solaris CDE 起動ファイルと Solaris CDE 起動時に考えられる問題について説明し、起動時の問題に対する解決策を提案します。

ログイン起動ファイル

Solaris CDE ログイン・マネージャは、ユーザを認証するとき、次のスクリプトを呼び出してデスクトップを起動します。

/usr/dt/bin/Xsession

Xsession が最初に呼び出すユーザ固有のファイルは、HomeDirectory/.dtprofile です。

新しいユーザが Solaris CDE に初めてログインした際に、.dtprofile ファイルは、そのユーザのホーム・ディレクトリにコピーされます。デフォルトでは、このファイルは何も実行しません。しかし、このファイルには、このファイルの編集方法について、多くのコメントが入っています。ユーザは、このファイルを編集して、ユーザ固有の環境変数を追加できます。


注 –

.dtprofile を呼び出す Xsession スクリプトのように、このファイルは、ksh 構文を使用します。


便利な編集方法の 1 つは、次に示す .dtprofile ファイルの最後の行のコメントを解除して有効にすることです。

DTSOURCEPROFILE=true

この行によって、ユーザの HomeDirectory/.login (csh ユーザの場合) または HomeDirectory/.profile (他のシェルのユーザの場合) が、起動プロセスの一部として有効になります。

エラー・ログの位置

Solaris CDE ログイン画面上で、[オプション] メニューから [復旧セッション] を選択すると、通常の X セッション起動をバイパスして、エラー・ログが表示されるので、ユーザのドット・ファイルで発生する可能性のある問題を修正できます。表 3–1 に、エラー・ログとその位置を示します。

表 3–1 エラー・ログの位置

位置 

エラー・ログ 

/var/dt/Xerrors

ユーザ・ログイン以前の Solaris CDE ログイン・ウィンドウ・システムのエラー

HomeDirectory/.dt/startlog

X セッション.dtprofile.login.profile 中の Solaris CDE 起動エラー

HomeDirectory/.dt/errorlog

X セッション起動後の Solaris CDE エラー

HomeDirectory/.dt/sessionlogs

セッション・マネージャとウィンドウ・マネージャのエラー用のセッション・ログのディレクトリ

システム・コンソール・ウィンドウに表示されるエラーもあります。システム・コンソール・ウィンドウが動作していない場合、代替コンソール・ログ・ファイル名は、時間と表示コードが連結された wscon です。たとえば、次のようになります。

/usr/tmp/wsconAAAa004EE:0.0

ユーザ起動ファイル

.login (csh ユーザの場合) または .profile (shksh ユーザの場合) を起動するには、次のように .dtprofile ファイルの最後の行のコメントを解除し有効にします。

DTSOURCEPROFILE=true

ほとんどの場合、この作業だけで十分ですが、.login ファイルまたは .profile ファイルを変更しなければならない場合もあります。それらのファイルには、Solaris CDE ログイン・マネージャで動作しないコマンドが入っている可能性があるためです。コマンドの 1 つに問題がある場合、その問題は通常、sttytset「入力待ち」コマンドなどを使って、端末キーボードからの入力を受け付けるファイルに関連します。


注意 – 注意 –

.dtprofile で起動するように設定した .login ファイルまたは .profile ファイルに、シェルをクラッシュさせるようなコマンドが入っている場合は、デスクトップの起動は失敗します。その結果、デスクトップは表示されません。その代わりに、Solaris CDE ログイン画面が再び表示されます。.login または .profile が原因の起動エラーは、通常、HomeDirectory/.dt/startlog に記録されます。.login または .profile でコマンドをデバッグするには、復旧ログイン・セッションかコマンド行ログインを使用してください。


問題とその解決策の詳細は、.dtprofile ファイルを参照してください。通常、問題のコマンドは端末の情報と制御に関係があります。

Solaris CDE 起動例

この節では、次のユーザ起動ファイルの編集例を示します。

Solaris CDE 起動プロセスは、Solaris CDE 起動プロセス中にチェックできるように、.login スクリプトまたは .profile スクリプトで、シェル変数 DT を定義します。これによってtty、や stty などの端末に関連するコマンドが実行されなくなります。次のスクリプトの例を参照してください。

.login (C シェル)


		if ( ! ${?DT} ) then
		stty erase `^h`
		endif

.profile (sh または ksh)


		if [ ! “$DT” ]; then
		stty erase `^h`
		fi

ユーザが従来のテキスト・ベースのコンソール・ログイン・プロンプトからログインしたときには DT は定義されませんが、このような場合でもシェルから警告が出ることはありません。ドット・ファイルの設定の詳細は、HomeDirectory/.dtprofile ファイルを参照してください。


注 –

Solaris CDE の tty 設定は .Xdefaults に指定します。


ユーザの .Xdefaults ファイルは、Solaris CDE 起動中に、ユーザ固有のリソースの設定のために起動されます。たとえば、ttyModes は、dttermxterm などの端末エミュレータ・ウィンドウにおいて、ユーザの好みの tty 設定を指定します。次の行は、.Xdefaults ファイルの典型的な ttyModes 設定です。

*ttyModes: erase ^H intr ^C kill ^U start ^Q stop ^S susp ^Z`


注 –

Solaris CDE リソースは、デフォルトの設定と異なる場合があります。


デフォルトの設定例として、デスクトップ・ウィンドウ・マネージャのアイコンの配置を考えます。この場合、.Xdefaults ファイルの次の行は、デフォルトのアイコン配置の設定を示します。

Dtwm*iconPlacement: right top