Solaris 移行ガイド

第 6 章 ユーザ環境の管理

この章では、 Solaris 7 ソフトウェアをインストールした後に、ローカルユーザの環境を設定する際の作業の違いについて説明します。

デフォルトシェルの選択

ログインシェルは、ログイン時に実行されるコマンドインタプリタです。Solaris 7 環境には、次の 3 つのシェルがあります。

シェルを頻繁に使用するのであれば、対話形式で行える C シェルか Korn シェルを使用する方がよいでしょう。表 6-1 は、3 つのシェルの機能の一覧です。

表 6-1 Bourne シェル、C シェル、Korn シェルの基本機能

機能 

Bourne 

Korn 

sh との構文の互換性

あり 

なし 

あり 

ジョブ制御 

あり 

あり 

あり 

履歴リスト 

なし 

あり 

あり 

コマンド行編集 

なし 

あり 

あり 

別名 

なし 

あり 

あり 

ログインディレクトリの 1 文字省略形 

なし 

あり 

あり 

上書きに対するファイルの保護 (noclobber)

なし 

あり 

あり 

CTRL-D の無視 (ignoreeof)

なし 

あり 

あり 

拡張 cd

なし 

あり 

あり 

.profile 以外の初期設定ファイル

なし 

あり 

あり 

ログアウトファイル 

なし 

あり 

なし 

あるシェルから別のシェルへ変更したいときは、次のどちらかの方法を使ってください。

新しいシェルに変更した後は、ログアウトし、再びログインを行い、シェルを起動します。

ユーザ環境のカスタマイズ

この節では、ユーザが選択したログインシェルに基づいてローカル環境をカスタマイズするために、どの初期設定ファイルを編集するか、また SunOS 5.7 ファイルシステムのどこにその初期設定ファイルがあるかを確認する方法を説明します。初期設定ファイルの変数を編集して、環境設定を行います。使用するデフォルトシェルにより、.profile.login.cshrc のうちどのファイルを編集するか決定します。表 6-2 に Bourne シェル、C シェル、Korn シェルの初期設定ファイルを示します。

表 6-2 Bourne シェル、C シェル、Korn シェルの初期設定ファイル

シェル 

初期設定ファイル 

使用される目的 

Bourne

/etc/profile

ログイン時にシステムプロファイルを定義する 

 

$HOME/.profile

ログイン時にユーザのプロファイルを定義する 

C

/etc/.login

ログイン時にシステム環境を定義する 

 

$HOME/.cshrc

ログイン時にユーザの環境を定義する 

 

$HOME/.login

ログイン時にユーザのプロファイルを定義する 

Korn 

/etc/profile

ログイン時にシステムプロファイルを定義する 

 

$HOME/.profile

ログイン時にユーザのプロファイルを定義する 

 

$HOME/ksh_env

ksh_env 変数によって指定されるファイルを使用し、ログイン時にユーザの環境を定義する

このリリースでは、シェルの初期設定ファイルのテンプレートは、SunOS 4 ソフトウェアの /usr/lib から /etc/skel ディレクトリに移りました。テンプレートファイルの位置を表 6-3 に示します。デフォルトシェルを変更するときは、対応するテンプレートファイル (1 つまたは 2 つ) を、ホームディレクトリへコピーしてから行なってください。

表 6-3 デフォルトホームディレクトリの起動ファイル

シェル 

ファイル名 

Bourne

/etc/skel/local.profile

C

/etc/skel/local.login

/etc/skel/local.cshrc

Korn

/etc/skel/local.profile

初期設定ファイルの設定の詳細については、『Solaris のシステム管理 (第 1 巻)』を参照してください。

Solaris ソフトウェアでの SunOS 4 作業環境の使用

SunOS 4 作業環境を引き続き使用したい場合、SunOS 5.7 では、古いシステムファイルと .login.cshrc.profile などの初期設定ファイルを使って SunOS 4 の見た目と使い心地を作成し直すことができます。これらの SunOS 4 ファイルの多くは、変換するか、またはそのまま使用することができ、簡単に実行できます。

第 3 章「SunOS 4 システムから Solaris 7 オペレーティング環境への変換」のインストール作業で、SunOS 4 環境を Solaris 7 環境で作成し直す方法について説明しています。

ウィンドウシステム

CDE は、Solaris 7 ウィンドウ環境のデフォルトで、簡単で視覚的に理解しやすいインターフェースです。CDE についての詳細は、第 14 章「Solaris 共通デスクトップ環境」を参照してください。

OpenWindows 3.6 ソフトウェアは Solaris 7 環境でデスクトップとして使用することもできます。OpenWindows 2.0 環境を使用していた場合は、OpenWindows 3.6 のアイコンが変更されていることと、OpenWindows 3.6 プラットフォームと互換性のないアプリケーションがあることに気付くと思います。

OpenWindows Developer's Guide File Chooser (gfm) の正規表現ファイルパターンマッチングコード (filter_pat) は、XView File Chooser オブジェクトの正規表現ファイルパターンマッチングコードとはわずかに異なります。2 つの異なる chooser にあるわずかに異なるファイルセットに対応し、同じ正規表現が得られます。XView File Chooser は、SunOS 5.7 では /usr/include/reexp.h を使用しており、使用方法は正しいものです。

SunView ソフトウェアは、Solaris 7 環境に含まれるものではありません。SunView アプリケーションは OpenWindows 環境には対応していないため、変換する必要があります。

次の情報については、『OpenWindows Version 3.1 User's Guide』を参照してください。

ユーザとグループの管理

この節ではユーザとグループを管理するためのオプションについて説明します。

ユーザとグループ管理の選択

useradduserdelusermod をコマンド行から入力し、ユーザとグループを追加、変更、削除することができます。これらのコマンドは、Admintool ほど強力ではありませんが、Admintool がサポートしている大部分の作業を OpenWindows や CDE ソフトウェアを実行しないで、コマンド行から実行できます。

useradduserdelusermod コマンドはローカルシステムにしか影響を与えない点で、/etc 内のファイルを編集するのに似ています。これらのコマンドは、ネットワークネームサービスの情報を変更するのに使用することはできません。しかし、useradd を使用して、ネットワークネームサービスでのユーザ名やユーザ ID の重複、グループ名の存在をチェックすることができます。

ユーザアカウントの追加

この節では、ユーザアカウントを追加する一般的な手順の変更について説明します。

SunOS 4 では、システムに新しいユーザを追加するための一般的な手順は次のようになっていました。

  1. /etc/passwd ファイルを編集し、新しいユーザのエントリを追加します。

  2. ホームディレクトリを作成し、新しいユーザのパーミッションを設定します。

  3. 新しいユーザのスケルトンファイルを設定します (.cshrc.login.profile など) 。

  4. ネームサービス (NIS) に新しいユーザを追加します。

Solaris 7 環境には、ユーザアカウントを追加 (および管理) する方法が 3 つあります。


注 -

SunOS 5.7 ソフトウェアはシャドーパスワードファイルを使用しているため、 /etc/passwd ファイルを編集するだけでは不十分です。この種の管理作業の経験が十分にない場合は、この方法を使用しないでください。


Solaris のシステム管理 (第 1 巻)』では、アカウントの設定を始める前に考慮すべき点について詳しく説明しています。また、システムとネットワークのユーザアクセスを制御するための、セキュリティ上の留意点についても説明しています。

メールの使用

SunOS 4 メールプログラムは、Solaris 7 環境では変更されています。ただし、設定手順は同じです。SunOS 4 の mail は、SunOS/BSD ソース互換パッケージ に含まれています。このインタフェースは Solaris 7 の mail とは異なります。さらに、互換性を確保するために便利なメール機能もいくつか含まれています。

Solaris 7 環境には、メールを送信したり受け取るためのプログラムが 3 つあります。これら 3 つのプログラムはすべて下方互換性があり、古い SunOS 4 メールを読み取ることができます。これらのプログラムは次のとおりです。

Solaris 7 メールプログラムの詳細は、『メールシステムの管理』を参照してください。

文書ツールの使用

この節では SunOS 4 と Solaris 7 環境で文書ツールを使用する際の主な違いを説明します。

マニュアルページの構成の変更

マニュアルページの構成は、SVR4 構成と互換性を持つように変更されました。その結果、一部の節は名前が変更されています。たとえば、man(8)man(1M) になっています。

表 6-4 は、SunOS 5.7 のマニュアルページのディレクトリを示します。

表 6-4 SunOS 5.7 マニュアルページディレクトリ

/man ディレクトリ

内容 

接尾辞 

man1

ユーザコマンド 

1B - SunOS/BSD 互換コマンド 

 

 

1C - 通信コマンド 

 

 

1F - FMLI コマンド 

 

 

1S - SunOS コマンド 

man1M

システム管理コマンド 

 

man2

システムコール 

 

man3

ライブラリ関数 

3B - SunOS/BSD 互換ライブラリ 

 

 

3C - C ライブラリ関数 

 

 

3E - ELF ライブラリ関数 

 

 

3G - C ライブラリ関数 

 

 

3I - ワイド文字関数 

 

 

3K - カーネル VM ライブラリ関数 

 

 

3M - 数学関数 

 

 

3N - ネットワーク関数 

 

 

3R - RPC サービス関数 

 

 

3S - 標準入出力関数 

 

 

3T - スレッドライブラリ関数 

 

 

3X - その他のライブラリ関数 

man4

ファイル形式 

4B - SunOS/BSD 互換ファイル形式 

man5

ヘッダ、テーブル、マクロ 

 

man7

特殊ファイル 

 

man9

DDI/DKI 

 

man9E

DDI/DKI エントリポイント 

 

man9F

DDI/DKI カーネル関数 

 

man9S

DDI/DKI データ構造 

man コマンド検索パスのカスタマイズ

SunOS 4 ソフトウェアでは、個々の man ディレクトリを、あらかじめ決められた順序に従って検索していましたが、 SunOS 5.7 ソフトウェアではユーザが検索パスを決めます。man コマンドは、man ページ構成ファイル man.cf に設定されたパスを使用します。

MANPATH 環境変数の各構成部分に、異なる man.cf ファイルを入れることができます。man.cf を変更して、検索の順序を変更することができます。たとえば、3c の前に 3b を検索するように指定できます。/usr/share/man ディレクトリ用の構成ファイルを次に示します。

#
# Default configuration file for the on-line manual pages.
#

MANSECTS=1,1m,1c,1f,1s,1b,2,3,3c,3s,3x,3i,3t,3r,3n,3m,3k,3g, ¥
3e,3b,9f,9s,9e,9,4,5,7,4b,6,l,n

MANSECTS に指定している引数は、利用できる man サブディレクトリの、man の次に付いている文字です。サブディレクトリの数は、各サブセクションに独自のディレクトリがあるため、このリリースでは大幅に増えています。この新しい構造は、man コマンドの性能を向上させ、検索パスをより細かく制御します。次の 2 つの図は、2 つのリリースのマニュアルディレクトリを比較したものです。

sunos4.1% ls /usr/share/man
man1/   man2/   man3/   man4/   man5/   man6/   man7/   man8/  
manl/   mann/

SunOS5.7% ls /usr/share/man
man.cf  man1f/  man3/   man3g/  man3n/  man3x/  man6/   man9f/
man1/   man1m/  man3b/  man3i/  man3r/  man4/   man7/   man9s/
man1b/  man1s/  man3c/  man3k/  man3s/  man4b/  man9/   manl/
man1c/  man2/   man3e/  man3m/  man3t/  man5/   man9e/  mann/

whatis データベースと windex データベース

SunOS 4 では、マニュアルページの目次とキーワードのデータベースを whatis と呼んでいましたが、SunOS 5.7 ソフトウェアでは、この情報は windex ファイルにあります。どちらのリリースでもデータベースの作成には catman コマンドを使用し、データベースを利用するには manapropos および whatis コマンドを使用します。

また次に示すように windex ファイルのフォーマットも whatis ファイルとは少し異なっています。

sunos4.1% man -k tset
tset, reset (1)    - establish or restore terminal characteristics

SunOS5.7% man -k tset
reset  tset (1b)   - establish or restore terminal characteristics
tset   tset (1b)   - establish or restore terminal characteristics

man コマンドの使用

表 6-5 は、 SunOS 5.7 の man コマンドにさらに検索オプションがあることを示しています。

表 6-5 新しい man コマンドオプション

オプション 

説明 

-a

file name に一致するマニュアルページをすべて表示する。ページは見つかった順に続けて表示される。

-l

file name に一致するマニュアルページをすべて一覧表示する。このコマンドの出力で確認すれば、-s オプションでセクション番号を指定できる。

-s section-number

file namesection-number を検索する。SunOS 4 ソフトウェアの man コマンドでは、オプションでセクション番号を指定することができたが、このリリースではセクション番号を -s に続けて指定しなければならない。

-F

file name で指定したファイルが見つかるまで man コマンドにすべてのディレクトリを検索させる。このオプションは windex データベースと man.cf ファイルの設定を無効にする。

SunOS 5.7 の man のコマンドの詳細については、man(1) のマニュアルページを参照してください。