Active Directoryユーザーログインとhomeディレクトリ作成とuserquotaを連携
※Active DirectoryとCIFSの初期設定が完了していることが前提
CIFS共有領域にユーザーがアクセスした時にアクセスしたユーザー名でディレクトリを作成しつつ
ZFSのuserquota機能でユーザーごとの容量制限を行う。
※ZFSのuserquotaはZFS バージョン5、zpool バージョン15からサポートされているようだ。
CIFSの準備
「Services」→「CIFS」のスパナアイコンをクリックして設定をする
「Homes auxiliary parameters」に以下の文言を追加する。
root preexec = /mnt/vol01/mkdir.sh %D %U
上記はCIFS共有領域にユーザーがアクセスした時に実行される。
スクリプトは実行権限を付けてFreeNASサーバの任意の場所置いておく。
mkdir.shの中身
#!/bin/bash if [ ! -d /mnt/vol01/personal/$1/$2 ]; then mkdir /mnt/vol01/personal/$1/$2 chmod g+s /mnt/vol01/personal/$1/$2 chown $2:"domain users" /mnt/vol01/personal/$1/$2 chmod 750 /mnt/vol01/personal/$1/$2 zfs set userquota@$2=1g vol01/personal # zfs コマンドでuserquotaを設定 fi exit 0
確認
windowsマシンから共有領域にアクセスすると上記で設定したディレクトリが見えているはず。
サーバにログインしてquota状況も見てみる。
# zfs userspace vol01/personal TYPE NAME USED QUOTA POSIX User root 4.50K none POSIX User user1 34K 1G
うまく動いていれば先ほどログインしたユーザー名でquotaが設定される。
- 参考文献
http://damedame.monyo.com/?date=20110220
http://ppona.com/gpl/iodata/usl-5p/USLSRC100/daemon/samba/040924/samba-2.2.11-ja-1.0/docs/ja/htmldocs/using_samba/ch06_06.html
http://docs.oracle.com/cd/E24845_01/html/819-6260/gazvb.html#scrolltoc