- PR -

リモートコンピュータのドライブに対してクォータの設定

1
投稿者投稿内容
NT
会議室デビュー日: 2005/05/20
投稿数: 7
投稿日時: 2005-05-20 10:53
いつもお世話になっております。
今回、スタンドアロンのサーバからドメインに参加しているファイルサーバに対して
クォータの設定をVBSで行いたいと考えているのですが、実行するサーバはドメインに
参加していないので、登録するユーザ情報が存在しないため、うまくいきません。

※クォータを設定したいユーザはドメインユーザです。
※スクリプトを実行するサーバはドメインに参加することはできない状況です。

どなたか解決方法をしっていらっしゃるかたは、ご教授お願いできますでしょうか。

【環境】
VBSを実行するスタンドアロンのサーバ
Windows2000
クォータを設定したいファイルサーバ
Windows2000

実際の本番環境は両サーバともWin2003なのですが、現在は環境がないため検証することができません。
なのでWin2003ならできるのであれば、そちらも教えていただけませんでしょうか。

【実行したスクリプト】
コード:
Dim colDiskQuotas, objUser
Set colDiskQuotas = CreateObject("Microsoft.DiskQuota.1") 
colDiskQuotas.Initialize "\\fileserver.domain.jp\C$\", True 
set objUser = colDiskQuotas.AddUser("domain\testUser") 
set objUser = colDiskQuotas.FindUser("domain\testUser") 
objUser.QuotaLimit = 50000000
objUser.QuotaThreshold  = 60000000



このスクリプトを実行すると
80070525 "指定されたユーザーは存在しません"
とエラーが返ってきます。
NT
会議室デビュー日: 2005/05/20
投稿数: 7
投稿日時: 2005-05-20 18:20
自己レス
自分で調べた感じでは、WMIでクォータの設定コマンドを実行する以外はなさそうです。
これだとログがとりずらいので他の方法を見つけましたら、教えていただきたいです。

コード:
Set Locator = WScript.CreateObject("WbemScripting.SWbemLocator")
Set Service = Locator.ConnectServe(fileserver.domain.jp,"root\cimv2", adminUser,adminPass)
Set objQuota  = Service.Get("Win32_Process")
errReturn   = objQuota.Create("cmd.exe /c fsutil quota modify d:\ 30000 50000 domain\testUser", Null, Null, intProcessID)



1

スキルアップ/キャリアアップ(JOB@IT)