Solaris 資料一覧

useraddのデフォルト設定を変更する

2008/9/8更新

対応バージョン: 10

useraddで使用される各種設定のデフォルト値は/usr/sadm/defadduserに格納されている。

このファイルはOSインストール時点では存在せず、初めてuseraddを実行すると作成される。

ファイルの内容は以下のようになっているが、「useradd -D」でも参照できる。

# cat /usr/sadm/defadduser
defgroup=1
defgname=other
defparent=/home
defskel=/etc/skel
defshell=/bin/sh
definact=0
defexpire=
defauthorization=
defrole=
defprofile=
defproj=3
defprojname=default
deflimitpriv=
defdefaultpriv=
deflock_after_retries=

# useradd -D
group=other,1  project=default,3  basedir=/home  
skel=/etc/skel  shell=/bin/sh  inactive=0  
expire=  auths=  profiles=  roles=  limitpriv=  
defaultpriv=  lock_after_retries=  

それぞれのパラメータの意味(*)と、useraddやusermod実行時にデフォルトの設定を上書きする際のオプションを以下に示す。

また「useradd -D <オプション>」によりdefadduserそのものを上書きすることができる。

(*) 最後の3パラメータは不明。

defgroup=<グループID>

-g

defgname=<グループ名>

-g

defparent=<ホームディレクトリトップ>

-b

例)

# useradd -D -b /Users
group=other,1  project=default,3  basedir=/Users  
skel=/etc/skel  shell=/bin/sh  inactive=0  
expire=  auths=  profiles=  roles=  limitpriv=  
defaultpriv=  lock_after_retries=  

defskel=<スケルトンディレクトリ>

-k

シェル環境設定ファイルのスケルトン(雛形)が格納されているディレクトリ

defshell=<ログインシェル>

-s

definact=<アカウントロック対象未使用日数>

-f

ここで指定した期間アカウントが使用されないとそのアカウントがロックされる。

0でロック日数をカウントしない(無期限使用可能)。

defexpire=<アカウント失効日時>

-e

アカウントが失効する日時を指定する。フォーマットは/etc/datemskで定義されているものが利用できる。

nullで無期限使用可能。

例)

# usermod -e "12/31/2008" foo

defauthorization=<認証方式,認証方式,...>

-A

認証方式をカンマで区切って複数指定できる。

認証方式の一覧は/etc/security/auth_attrに定義されている。

設定された情報は/etc/user_attrに書き込まれる。

例)

# usermod -A solaris.smf.value.postgres foo

# cat /etc/user_attr
:
foo::::type=normal;auths=solaris.smf.value.postgres

defrole=<ロール,ロール,...>

-R

ロールをカンマで区切って複数指定できる。

ロールの一覧は/etc/user_attrの「type=role」エントリで確認できる。

# grep "type=role" /etc/user_attr
postgres::::type=role;profiles=Postgres Administration,All

設定された情報は同じく/etc/user_attrに書き込まれる。

例)

# usermod -R postgres foo

# cat /etc/user_attr
:
foo::::type=normal;roles=postgres

defprofile=<プロファイル>

-P

プロファイルをカンマで区切って複数指定できる。

プロファイルの一覧は/etc/security/prof_attrに定義されている。

設定された情報は/etc/user_attrに書き込まれる。またprofilesコマンドでも確認できる。

例)

# usermod -P "Crypto Management" foo

# cat /etc/user_attr
:
foo::::type=normal;profiles=Crypto Management

# profiles foo
Crypto Management
:

defproj=<プロジェクト番号>

-p

アカウントが所属するプロジェクトの番号を指定する。

プロジェクトは/etc/projectに定義されている。

例)

# usermod -p 2 foo

defprojname=<プロジェクト名>

上記defprojと同様。

deflimitpriv=

不明

defdefaultpriv=

不明

deflock_after_retries=

不明

関連資料・記事