sambaでNTドメインのマシンアカウント登録ではまる

ちょっと、はまってしまいました。
sambaのユーザ登録「pdbedit」では、英大文字・小文字の区別はしないようです。(根拠までは不明)

# useradd -s /bin/false -d /dev/null -g machines pc-AB001$
# pdbedit -a pc-AB001 -m
build_sam_account: smbpasswd database is corrupt!  username pc-ab001$ with uid 0 is not in unix passwd database!
Username not found!

とエラーがでます。
間違えたかな?と思って、再確認してもう一回同じコマンドをたたくと..

# pdbedit -a pc-AB001 -m
add_smbfilepwd_entry: entry with name pc-ab001$ already exists
Unable to add machine! (does it already exist?)

とメッセージは変わったけれど、登録されません。
そこで、何度か削除・登録を繰り返したのですが、状況は変わらず、ふとエラーメッセージをよく見ると「AB」の部分が「ab」と小文字!?
もしかしたら、pdbeditでの登録はWindowsに準拠して英大文字・小文字を区別しないのではと思い、もう一度ユーザを削除後、すべて小文字で登録しなおしました。

# useradd -s /bin/false -d /dev/null -g machines pc-ab001$
# pdbedit -a pc-ab001 -m
 (略)

で、正常に登録され、そのマシンをNTドメインに参加させることができました。


よく似たことをされている方のLinux日記RHELで作るファイルサーバ その2が参考になりました。

追記(2007/01/24)

samba2の資料ですが、マシンアカウントは、大文字・小文字を区別しないので、英小文字か数字らしいです。
http://www.samba.gr.jp/doc/samba2.2_and_linux2.4/advanced_tech.html
の真ん中あたりから引用

useraddの時、マシン名の後に$をつけたものをLinuxユーザとして登録する必要があるので気をつけて欲しい。
(マシン名は英大文字は使用せず、英子文字、数字のみで15バイト以下とすること。日本語も使用不可)