next up previous contents
Next: 3.8 Solarisでの新しいユーザー管理用コマンド Up: 3. ユーザー登録・ユーザー管理 Previous: 3.6 パスワードの設定

3.7 実際の登録手順

ここでは、ユーザー名を user1、ユーザー番号を10001、グループ名を test、グループ番号を51、 ホーム・ディレクトリーを /home/sample/user1、ログイン・シェルを /bin/ksh として、登録手順を見てみましょう。

1.
コマンド /usr/ucb/vipw を使って、/etc/passwd をエディットします。

 [注意]スーパーユーザで作業をする際には、コマンドは、 フルパスで入力します。たとえば、 vipw コマンドは、 # /usr/ucb/vipw のように入力しないと実行できません。

まず、あらかじめ決めておいた項目を、一行にして、/etc/passwd の中に 付け加えます。 先の例では、次のような一行が、加えられることになります。

          user1:x:10001:51::/home/sample/user1:/bin/ksh

ここでは、第二フィールドに、'x'が入っていることに留意してください。 Solarisでは、パスワードファイルのパスワードフィールドは意味を持ちません。 第五フィールドは、コメントフィールドです。

2.
同じくコマンド vipw を使って、/etc/shadow をエディットします。
          user1::8468::::::

ここで必要なのは、第一フィールドと第三フィールドだけです。 第一フィールドは、ユーザー名なので問題ありませんが、第三フィールドは ちょっと問題があります。もともとSolarisのユーザー登録では、shadowファイル を直接操作することを想定していません。/usr/ucb/vipw というコマンド自体、 その名前のとおり、BSD系のユーザー登録の手順との互換の為に用意された コマンドです。 第三フィールドには、「パスワードの最終変更日」が、ですから、 登録の場合には、 パスワードの設定日ということになりますが、1970年1月からの日数 で入ることになっています。手での計算は面倒です。パスワードのエージング を行なわないのであれば、適当な(?)数字をいれておいても大丈夫なはずです。

3.
ホーム・ディレクトリーを作成します。
         mkdir -p /home/sample/user1

4.
ホーム・ディレクトリーに、初期設定に必要な各種の ピリオド・ファイルを適当な所からコピーします。
         cp ~自分のユーザ名/.* /home/sample/user1

この例では、C-shellかK-shellを使って、自分のピリオドファイルを コピーしています。もしも、そのほかのシェルでしたら、ユーザー相対の記法が 使えませんので、工夫が必要です。

5.
ホーム・ディレクトリー及びその下のファイルの所有者を、rootからユーザーに変更します。
        chown -R user1 /home/sample/user1

6.
ホーム・ディレクトリーのグループ番号を設定します。 もしも、グループ名 test が、新しい名前なら、ファイル /etc/group を エディットして、グループ名(test)と、グループID(51)をエントリーとして 持つようにしなければなりません。以前から存在するグループに、加わるだけなら、 この作業は必要ありません。
        chgrp -R test /home/sample/user1

7.
quotaをかけます。ここでは、既にquotaを設定してあるユーザー oomiyaのquota情報を利用しています。
        edquota -p sato user1

8.
パスワードを発行します。
        passwd user1

このとき、新しいパスワードを2回確認の為に入れなければなりません。 ( yp または NIS, NIS+ が走っている環境では、別のコマンドになります。) /etc/shadow のパスワードフィールドを空欄にした場合は、パスワードなしの ユーザーが出来ます。これは、システムセキュリティ上非常に危険です。 スーパーユーザーが仮のパスワードを発行するようにし、ユーザーには早急に そのパスワードを変更するように連絡しましょう。

また、自分でそのユーザーとしてログインしてみて、そこで、passwd コマンドを 使って設定しても良いでしょう。(演習ではそのようにします。)



Noriyo Kanayama