SMB環境時にホームディレクトリが作成されない問題
ここ何日かOSX Serverを触っているのだが、期待していたGUIはあまり凝ったことができずに、結局CUIを使いたくなる。
さて、どういうわけかワークグループマネージャで新規SMBユーザーを登録しても、ホームディレクトリが作成されない。かといって、新入社員の入社とともに作成するのもかったるいので、少し確認*1することにした。
/etc/smb.confをみてみると
root preexec = /usr/sbin/inituser %U
という項目がある。さらにこの/usr/sbin/inituser
をみてみると、shellコマンドになっていて、以下の内容になっている。
#!/bin/sh# create and populate default home directory
/usr/sbin/createhomedir -u $1
コマンドと作成する準備はできているのに、なぜ作られないのか?
一応inituserにtouch /tmp/test
を追加すると、/tmp/testへファイルが作られているので、inituserは実行されている模様。パーミンションもroot.wheelになっているので問題なし。
次にinituserを単独で実行してみる。が、やっぱり作成されない。ということは、smb.confかinituserが間違っていると考えられる。
inituserが間違っていることを願って、sudo createhomedir -h
としてみると、関係ありそうなオプションは以下の通り
\-s create home directories for server home paths only (default)
\-c create home directories for local home paths only
\-b create home directories for both server and local home paths
で、-sのserver home paths onlyが非常に怪しい試しに、-bでテスト。
xsvr:~ admin$ sudo createhomedir -b -u s_nobu
creating home directories for (xsvr.local)
created (/Users/s_nobu)
無事に作成されたらinituserを修正し、SMB経由でアクセスした場合にも作成されることを確認*2。
Webで情報を探しても引っかからないし、みんな使っていないのかな?それとも以前は動いてたのかな?一応アップルには連絡済み。