ypchsh(1) FreeBSD 一般コマンドマニュアル

ypchsh

前のページ 上に戻る 次のページ

ypchsh


     chpass [-a list] [-p encpass] [-e expiretime] [-s newshell] [user]

     chpass [-oly] [-a list] [-p encpass] [-e expiretime] [-s newshell]
            [-d domain] [-h host] [user]


解説

     chpassuser もしくはデフォルトでは実行したユーザのユーザデータベースの
     情報を変更します。情報はフォーマットされ、必要な部分をエディタで変更しま
     す。

     ユーザが変更することができる情報だけが表示されます。

     オプションとしては、次のものがあります:

     -a      スーパユーザは、ユーザデータベースのエントリを passwd(5) で定義さ
             れたフォーマットで引数として直接指定できます。この引数はコロン
             (``:'') で区切られたリストであり、空きの部分があっても許されます
             が、すべてのフィールドをリストにしなければなりません。

     -p      スーパユーザは、暗号化されたパスワードフィールドを crypt(3) で用
             いられているフォーマットで引数として直接指定することができます。

     -e expiretime
             アカウントが無効となる時を変更します。対話エディタからのようにス
             クリプトから、無効となる時を変更するために、本オプションを使用し
             ます。

     -s newshell
             ユーザのシェルを newshell に変更しようとします。

     表示されるエントリには以下のものがあります:

           Login:              ユーザのログイン名
           Password:           ユーザの暗号化されたパスワード
           Uid:                ユーザの ID
           Gid:                ユーザのグループ ID
           Class:              ユーザの一般的な分類
           Change:             パスワードの変更時間
           Expire:             アカウントの有効期限
           Full Name:          ユーザの実際の名前
           Office Location:    ユーザのオフィスの場所 (1)
           Office Phone:       ユーザのオフィスの電話番号 (1)
           Home Phone:         ユーザの自宅の電話番号 (1)
           Other Information:  ユーザに関するローカル定義情報 (1)
           Home Directory:     ユーザのホームディレクトリ
           Shell:              ユーザのログインシェル

           注 (1) -            実際の master.passwd ファイルでは、これらのフィ
                               ールドはコンマで区切られたフィールドとして
                               FullName フィールドに埋め込まれます。

     login フィールドは計算機にアクセスするときに使われるユーザ名です。
     りません。このフィールドは番号やグループ名 ( group(5) 参照) のどちらかが
     記述されます。

     class フィールドは /etc/login.conf のクラスに関する記述を参照します。典型
     的には、ユーザのログイン時に、ユーザのシステムリソースを制限するために使
     用されます。

     change フィールドはパスワードが変更されているべき日付です。

     expire フィールドはアカウントの満了する日付です。

     changeexpire の両方のフィールドは ``month day year'' の形式で入力し、
     month は、英語の月の名前 (はじめの 3 文字でも十分です) で、 day は、その
     月の中の日で、 year は、その年です。

     5 つのフィールドは、ユーザの 実際の名前、 オフィスの場所、 職場と 家で使
     う電話番号、そして その他の情報を保管しています。 その他の情報は、コンマ
     で区切った単一文字列であり、追加の gcos フィールドを表現します。 (典型的
     にはサイト固有のユーザ情報のために使用します)。 finger(1) が、 Office: と
     いうヘッダの下にオフィスの場所と電話番号をともに表示することに注意してく
     ださい。

     ユーザの home directory はユーザがログイン時にいる場所への絶対 UNIX パス
     名です。

     shell フィールドはユーザの好むコマンドインタプリタです。もし shell フィー
     ルドが空であれば、Bourne シェル /bin/sh であると仮定します。ログインシェ
     ルを変更するときに、スーパユーザではないユーザは、非標準シェルから、また
     は非標準シェルへの変更は許されていません。非標準シェルとは /etc/shells で
     見つけられないシェルのことです。

     一度情報が確認されたら chpass はユーザデータベースを更新するために
     pwd_mkdb(8) を用います。


環境変数

     環境変数 EDITOR を設定して他のエディタを指定している場合を除き、 vi(1) エ
     ディタが使われます。エディタが終了すると、その情報は再度読み込まれ、ユー
     ザデータベースを変更するための情報とします。ユーザの情報を変更できるの
     は、そのユーザかスーパユーザのみです。

     PW_SCAN_BIG_IDS 環境変数の設定のインパクトについては、 pwd_mkdb(8) の説明
     を参照してください。


NIS との相互作用

     いくつかの制限が適用されますが、 chpass を NIS と同時に使うこともできま
     す。現在 chpassrpc.yppasswdd(8) を通じて NIS のパスワードマップ中で変
     更できるのは、通常はユーザのパスワード、シェル、GECOS フィールドだけで
     す。 NIS マスタサーバ上でスーパユーザによって起動された場合を除き、
     chpass (同様に passwd(1)) は、ユーザ情報の変更および新レコードの追加のた
     めに rpc.yppasswdd(8) サーバを使用出来ません。なお、 rpc.yppasswdd(8)
     は、どのような変更を行う前にもパスワード認証を要求します。パスワード無し
     で変更要求できるユーザは NIS マスタサーバ上のスーパユーザだけです; 他の全
                ユーザによって起動された場合であってもです。他のフィールドの変
                更がサポートされるようになっても、他の NIS システムとの互換性
                の問題を引き起こすでしょう。スーパユーザがあるエントリを編集し
                ている時に、他のフィールドにデータを書いても、余分な情報として
                (パスワードは例外 -- 以下を参照してください) だまって廃棄され
                るでしょう。

                例外: NIS マスタサーバ上のスーパユーザは、任意のフィールドの変
                更が許されています。

           2.   パスワード認証が要求されます。どのような変更を行う前にも
                chpass はユーザの NIS パスワードを要求します。もしパスワードが
                間違っていたら、どのような変更も行われません。

                例外: NIS マスタサーバ上のスーパユーザはパスワード無しに変更要
                求できます。 (スーパユーザは、後述するように -o フラグを指定す
                る事によりこの仕様を無効にする事が選択できます。)

           3.   新しいレコードのローカルパスワードデータベースへの追加は勧めら
                れません。 NIS が動作しているときに、管理者が chpass によって
                新しいレコードをローカルのパスワードデータベースに追加可能で
                す。しかし、新しいレコードがマスタパスワードファイルの最後、通
                常は NIS の特別な '+' エントリの後に追加されるため、いくつかの
                混乱を招きかねません。 vipw(8) を使ってローカルのパスワード
                ファイルを変更するべきです。

                NIS マスタサーバ上のスーパユーザによる NIS パスワードマップへ
                の新レコードの追加が許可されるのは、 rpc.yppasswdd(8) サーバが
                -a フラグ付で起動された場合、すなわち追加を許可して起動された
                場合のみです (通常は追加を拒否します)。 chpass はデフォルトで
                はローカルのパスワードデータベースを更新しようとします; NIS
                マップを変更する場合には chpass を -y フラグ付で起動してくださ
                い。

           4.   パスワードの変更は許可されていません。ユーザが、自分の NIS の
                パスワードを変更するときには passwd(1)yppasswd(1) を使うべ
                きです。スーパユーザは新しいパスワードを指定することを許されて
                います (たとえ、 ``Password:'' フィールドがエディタのテンプレ
                ートにあらわれていなくても、スーパユーザは手動で加えることがで
                きます) 。しかしながら、スーパユーザであってもユーザの元のパス
                ワードがなければ rpc.yppasswdd(8) が NIS マップの更新を拒否す
                るでしょう。

                例外: NIS マスタサーバ上のスーパユーザは chpass を使用して、ユ
                ーザの NIS パスワードを変更する事が許されています。

     chpass が NIS をサポートしてコンパイルされたときに、数個の特別なフラグが
     有効になります:

     -l      ローカルと NIS の両方のデータベースにユーザが存在していても、ユー
             ザのパスワード情報のローカルのコピーを修正することを chpass に強
             制します。
             常 chpassmaster.passwd もしくは passwd マップにて指定される
             NIS マスタホストと通信します。 NIS クライアントとして構成されてい
             ないホスト上では、この情報を決定するための方法がプログラムにはあ
             りませんので、ユーザがサーバのホスト名を指定します。指定するホス
             ト名は NIS マスタサーバである必要が無い事に注意してください; NIS
             ドメイン内のマスタサーバ名でもスレーブサーバ名でも良いのです。

             -d オプション使用時には、ホスト名のデフォルトは ``localhost'' で
             す。 -h オプションを -d とともに使用し、ユーザが指定するホスト名
             でこのデフォルトを上書きできます。

     -o      rpc.yppasswdd(8) に RPC ベースの更新を強制します (``旧モード'')
             。 NIS マスタサーバ上でスーパユーザにより起動された場合、 chpass
             は専用の非 RPC ベースの機構を使用し、 NIS パスワードマップに対す
             る無制限の変更を許可します (この場合 UNIX ドメインソケットを使用
             します)。 -o フラグを使用する事により chpass に標準の更新メカニズ
             ムを使用させる事が出来ます。このオプションは主にテスト目的のため
             に提供されています。


関連ファイル

     /etc/master.passwd  ユーザデータベース
     /etc/passwd         Version 7 フォーマットのパスワードファイル
     /etc/chpass.XXXXXX  パスワードファイルのテンポラリ用コピー
     /etc/shells         利用できるシェルのリスト


関連項目

     finger(1), login(1), passwd(1), getusershell(3), login.conf(5),
     passwd(5), pwd_mkdb(8), vipw(8)

     and Robert Morris and Ken Thompson, UNIX Password security.


     chfn(1), chsh(1), ypchpass(1), ypchfn(1), ypchsh(1) コマンドは実際には
     chpass にリンクしているだけです。


バグ

     ユーザ情報の保存はどこか他の場所にするべきです (し、いつかはそうなるで
     しょう)。


歴史

     chpass コマンドは 4.3BSD-Reno から登場しました。

FreeBSD 4.4                    December 30, 1993                   FreeBSD 4.4

ABELNET VPSサービス