サーバーの空き容量を監視するスクリプトが必要です。空きメモリ容量が不足すると、特定のしきい値がアラート メールを送信します。
PS - 解決策は Power Shell + Windows Timer Job になると思います。ただし、Power Shell は初めてです。
サーバーの空き容量を監視するスクリプトが必要です。空きメモリ容量が不足すると、特定のしきい値がアラート メールを送信します。
PS - 解決策は Power Shell + Windows Timer Job になると思います。ただし、Power Shell は初めてです。
WMI オブジェクトを処理する必要があります。
http://technet.microsoft.com/en-us/library/dd315295.aspx
スクリプトは不要かもしれません。Wk3 サーバーを使用している場合は、ボリュームでクォータ管理を有効にできます。W2k8 は、クォータ管理をボリューム フォルダにも拡張しました。
次のようなコマンドを使用して、空きディスク容量を取得できます。
([wmi]"\\$computer\root\cimv2:Win32_logicalDisk.DeviceID='$drive'").FreeSpace
また、以下の関数を使用してメールを送信できます。
function Send-EMail
{
param (
[parameter(Mandatory = $false)][string] $EmailTo = "<Your destination email>",
[parameter(Mandatory = $false)][string] $EmailFrom = "<The sending email address>",
[parameter(Mandatory = $false)][string] $EmailSubject = "Disk space problem",
[parameter(Mandatory = $false)][string] $SMTPServer = "<your smtp server>"
)
$MailMessage = New-Object System.Net.Mail.MailMessage
$MailMessage.From = ($EmailFrom)
$MailMessage.To.Add($EmailTo)
$MailMessage.Subject = $EmailSubject
$MailMessage.Body = $EmailBody
$MailMessage.IsBodyHTML = $true
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 25)
$SMTPClient.Send($MailMessage)
}
これら 2 つの関数を、 Windows スケジューラでスケジュールできる PowerShell スクリプトに結合します。