FreeBSDでユーザーを追加するとき、adduserコマンドを
使用するのが普通だと思います。
adduserコマンドを使用すると対話形式でユーザーの追加を行えますが、
みなさんはその設定項目の中のlogin classとは何か知っていますか?
よく、webページでは[default]のままEnterを押すと記載されています。
情報はそれだけで実際のところ、この項目が何を指しているのかを説明しているところはあまりありません。
急に気になって調べはじめました。
login classはlogin時に環境変数を設定するための仕組みです。
システム側では
/etc/login.conf
に指定します。これによってシステム内の複数のユーザに環境変数を設定できます。
複数のユーザというのが特徴で、skelディレクトリ機構と対比できます。
skelはシステムの全体のユーザに適応されます。
じゃ、どう設定するのか? 設定項目が多すぎるのでここでは多くを触れません。
以下がサンプルです。
japanese:\
:charset=eucJP:\
:lang=ja_JP.eucJP:
これをlogin.confに書き加えます。
その後、データベースを更新しなければなりません。
#cap_mkdb /etc/login.conf
そうすることにより、環境変数をシェルの初期化ファイルに設定しなくてもlogin classにjapaneseが設定されていれば、LANGやMM_CHARSETが設定されます。
使用するのが普通だと思います。
adduserコマンドを使用すると対話形式でユーザーの追加を行えますが、
みなさんはその設定項目の中のlogin classとは何か知っていますか?
よく、webページでは[default]のままEnterを押すと記載されています。
情報はそれだけで実際のところ、この項目が何を指しているのかを説明しているところはあまりありません。
急に気になって調べはじめました。
login classはlogin時に環境変数を設定するための仕組みです。
システム側では
/etc/login.conf
に指定します。これによってシステム内の複数のユーザに環境変数を設定できます。
複数のユーザというのが特徴で、skelディレクトリ機構と対比できます。
skelはシステムの全体のユーザに適応されます。
じゃ、どう設定するのか? 設定項目が多すぎるのでここでは多くを触れません。
以下がサンプルです。
japanese:\
:charset=eucJP:\
:lang=ja_JP.eucJP:
これをlogin.confに書き加えます。
その後、データベースを更新しなければなりません。
#cap_mkdb /etc/login.conf
そうすることにより、環境変数をシェルの初期化ファイルに設定しなくてもlogin classにjapaneseが設定されていれば、LANGやMM_CHARSETが設定されます。
こう言い切るのは少し語弊があると思いますよ。login.confでたしかに環境変数も設定できますが、多くはCPUやメモリなどのリソース制限や、ログイン処理などの細かい設定です。
http://www.jp.freebsd.org/cgi/mroff.cgi?subdir=man&man=login.conf&dir=jpman-5.2.0%2Fman#sect4
確かに語弊がありますね。
後で書き直したいと思います。