ユーザとグループによる権限の管理を行うために /etc/passwd と /etc/group を作成するのですが、
Cygwin のインストール時にそれらは自動的に作成されます。
どのタイミングにどのパッケージがそれを行うのかわかっていないのですが、
/etc/postinstall/passwd-grp.bat.done の内容が実行され /etc/passwd と /etc/group が作成されるようです。
$ cat /etc/postinstall/passwd-grp.bat.done
bin\mkpasswd -l > etc\passwd
bin\mkgroup -l > etc\group
$
install の最後に DOS 窓がぱかぱか開くアレかな?
このスクリプトで作成される情報は local のものなので、ドメイン下に登録されている情報を用いるには
/etc/passwd, /etc/group を作り直す必要があります。
/usr/bin/mkpasswd を実行することによって /etc/passwd のエントリを出力できます。
Usage: mkpasswd [OPTION]... [domain]
WindowsNT/2000 では mkpasswd の実行時に -l, -d, -g のいずれかのオプションが必要です。
mkpasswd のオプションを一覧します。
option | description |
---|---|
-l, --local | local user のアカウントを出力します |
-d, --domain | domain のアカウントを出力します (domain 名の指定を省略すると current のものから出力されます) |
-o, --id-offset offset | domain アカウントの UID に加算する offset を変更します (default: 10000) |
-g, --local-groups | domain が指定されない場合、local group の情報も出力します |
-m, --no-mount | don't use mount points for home dir |
-s, --no-sids | GECOS フィールドに SID を出力しません |
if user account has no home dir, use path instead of /home/ | |
特定したユーザの情報だけを出力します | |
-?, --help | help を表示します (-? ではなく -h のようです) |
table 2-1
/usr/bin/mkgroup を実行することによって /etc/group のエントリを出力できます。
usage: mkgroup [options] [domain]
WindowsNT/2000 では mkgroup の実行時に -l, -d のいずれかのオプションが必要です。
mkgroup のオプションを一覧します。
option | description |
---|---|
-l, --local | local group の情報を出力します |
-d, --domain | domain の global group の情報を出力します (domain 名の指定を省略すると current のものから出力されます) |
domain group の GID に加算する offset を変更します (default: 10000) | |
-s, --no-sids | password フィールドに SID を出力しません |
-u, --users | user-list フィールドに user のリストを出力します |
-?, --help | help を表示します (これも -? ではなく -h のようです) |
table 3-1
local group で group file を作成すると「なし」というグループが作成されます。
これを「none」等の ascii code の名前に変更する方が問題が発生しにくくなります。