none
Контроль дискового пространства RRS feed

  • Общие обсуждения

  • Добрый день, подскажите пожалуйста автоматизировать процесс контроля дискового пространства на сервере.

    Был вариант запустить планировщик по коду события (но не смог найти код события нехватки места), мб кто знает и подскажет? или есть еще какие нибудь средства?

    • Изменен тип Anton Sashev Ivanov 5 апреля 2017 г. 8:42 Тема переведена в разряд обсуждений по причине отсутствия активности.
    28 марта 2017 г. 10:51

Все ответы

  • Можно запустить Счетчики производительности для дисковой подсистемы

    Вот триггеры:

    %Free Space
    Объем свободного дискового пространства на выбранном логическом диске, в процентах.
    Free Megabytes
    Объем свободного пространства на логическом диске, в мегабайтах.

    отсюда написать какой то скрипт.

    Второй вариант, посмотрите в сторону Zabbix, отличная система мониторинга


    28 марта 2017 г. 10:58
  • Мне что нибудь по проше, это не критические системы
    28 марта 2017 г. 11:05
  • таких куча скриптов в сети, например:

    https://gallery.technet.microsoft.com/scriptcenter/PowerShell-Script-Sample-f7164554


    scientia potentia est
    My blog

    28 марта 2017 г. 11:12
  • Проще к сожалению не бывает, любая задача так или иначе требует работы.

    $PC = "имя сервера"
    
    $size = gwmi Win32_Volume -Filter { DriveType!="5" AND FileSystem!="FAT32" AND DriveType!="2" AND Label!="System Reserved"  AND Label!="Зарезервировано системой" AND Label!="Recovery"} -computername $PC |
    		Select SystemName, Caption,
    			   @{ Name = "Capacity GB"; Expression = { [math]::Round($_.Capacity/1gb, 4) } },
    			   @{ Name = "FreeSpace GB"; Expression = { [math]::Round($_.FreeSpace/1gb, 4) } },
    			   @{ Name = "% Free"; Expression = { [math]::Round($_.FreeSpace/$_.Capacity * 100, 2) } },
    			   @{ Name = "UsedSpace GB"; Expression = { [math]::Round(($_.Capacity - $_.FreeSpace)/1gb, 4) } },
    			   @{ Name = "% Used"; Expression = { [math]::Round(($_.Capacity - $_.FreeSpace)/$_.Capacity * 100, 2) } } 
    
    Foreach ($i in $size)
    {
    if ($i."% Free" -lt 20 )
    {
    $mailAddressFrom = ""
    $mailAddressTo =""
    $smtpServer=""
    $Subject = [string]::Format("Сервер {0}: свободного места на диске {1} = {2}% ",$i.SystemName,$i.Caption,$i."% Free")
    Send-MailMessage -from $mailAddressFrom -to $mailAddressTo -SmtpServer $smtpServer -Subject $Subject -Encoding default
    }
    }

    Вот вам скрипт, пользуйтесь тут уже не знаю куда можно проще.

    28 марта 2017 г. 11:29
  • Мне нужно что бы на почту приходило сообщение
    28 марта 2017 г. 11:46
  • Мне нужно что бы на почту приходило сообщение
    Это хорошо. что вы внимательно прочитали все ответы, но моя ссылка, а также предыдущее сообщение это как раз и делает.

    scientia potentia est
    My blog

    28 марта 2017 г. 11:49
  • Понятно, а в планировщике его как запускать каждый день получается?

    29 марта 2017 г. 5:20
  • Ну это Вы смотрите, можете хоть каждые 15 минут, существенной нагрузки в этом не будет
    29 марта 2017 г. 5:35
  • Здравствуйте,

    Подскажите, пожалуйста, ваш вопрос на данное время актуален?


    Если Вам помог чей-либо ответ, пожалуйста, не забывайте жать на кнопку "Предложить как ответ" или "Проголосовать за полезное сообщение" Мнения, высказанные здесь, являются отражение моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий.

    3 апреля 2017 г. 5:43