Как узнать размер точек монтирования в 2008R2?

Вопрос или проблема

Столбец size говорит мне о вместимости диска, но не о количестве использованного места.

Как определить, сколько данных находится на точке монтирования в 2008 R2? Подойдет любой интерфейс или команда PowerShell.

get-wmiobject Win32_volume |select Name,Capacity,Freespace

Это даст вам список всех дисков, включая точки монтирования, и их вместимость.

Что касается интерфейса, он там, просто немного скрыт. Когда вы открываете свойства точки монтирования, на первой странице есть кнопка, которая покажет статистику диска, как и в случае с корнем чего-то вроде C:.

Вы также можете взглянуть на следующий скрипт PowerShell:

http://www.powershellcave.com/?p=25

Он оказался очень полезным при мониторинге большого количества точек монтирования.

скрипт ниже

#############################################
#
# POWERSHELLCAVE.COM
# ИМЯ: Мониторинг точек монтирования
# Автор: Caveman
# Резюме: возвращает номер состояния, который идентифицирует состояние, замените на 
# любое желаемое сообщение, которое вы хотели бы иметь в вашей системе мониторинга.
#
# Версия
# 19-02-2013   Начальная версия 
# 20-02-2013   Производственная версия 1.0
#############################################

$maxmount="10"$mediummount="15"$returnStateOK=0$returnStateWarning=1$returnStateCritical=2$returnStateUnknown=3$TotalGB= @{Name="Capacity(GB)";expression={[math]::round(($_.Capacity/1073741824),2)}}
$FreeGB= @{Name="FreeSpace(GB)";expression={[math]::round(($_.FreeSpace /1073741824),2)}}
$FreePerc= @{Name="Free";expression={[math]::round(((($_.FreeSpace /1073741824)/($_.Capacity /1073741824)) *100),0)}}

$volumes=Get-WmiObjectwin32_volume | Where-object {$_.DriveLetter -eq$null}
$points= @($volumes | Select SystemName, Label, $TotalGB, $FreeGB, $FreePerc) 

foreach ($entryin$pionts){
    if ($entry.Free -le$maxmount){
    $message="System"+""+$entry.SystemName +""+" mountpoint "+$entry.label+""+"has"+""+$entry.Free +"%"+"  свободного места"Write-Host$message
    exit $returnStateCritical
    }
    elseif ($entry.Free -le$mediummount){
    $message="System"+""+$entry.SystemName +""+" mountpoint "+$entry.label+""+"has"+""+$entry.Free +"%"+"  свободного места"Write-Host$message
    exit $returnStateWarning
    }
    else { 

        Write-Host"OK"
        exit $returnStateOK
        }
}
get-wmiobject Win32_volume |select Name, 
        @{Name="Type"; Expression={@("Unknown", "No Root Directory", "Removable Disk", "Local Disk", "Network Drive", "Compact Disk", "RAM Disk" )[$_.DriveType]}},
        @{Name="Capacity GB"; Expression={[Math]::Round($_.Capacity/1024/1024/1024,1)}},
        @{Name="Free GB"; Expression={[Math]::Round($_.Freespace/1024/1024/1024,1)}} |
Sort-Object -Property Name;

Это основано на ответе sysadmin1138 и https://superuser.com/a/1835606/2483732. Я добавил столбец типа устройства.

Вывод будет таким:

Имя                                     Тип             Вместимость ГБ Свободно ГБ
----                                     ----            ----------- -------
\\?\Volume{848a1e99-9331-11ef-a33c-...}\ Локальный диск         0.1       0
\\?\Volume{848a1e9c-9331-11ef-a33c-...}\ Локальный диск         0.6     0.1
B:\                                      Локальный диск           1       1
C:\                                      Локальный диск       101.1      22
D:\                                      Локальный диск       783.2     221
D:\Downloads\                            Локальный диск       238.5    59.6
F:\                                      Компакт-диск             0       0

Ответ или решение

Конечно, позвольте мне предоставить вам подробный ответ на ваш вопрос о том, как просмотреть размер и объем данных на точке монтирования в Windows Server 2008 R2, используя интерфейс или PowerShell.

Введение

Определение объема использованного дискового пространства на точке монтирования может быть критически важным для управления ресурсами сервера и выполнения его оптимизации. В Windows Server 2008 R2 существует несколько способов для получения этой информации, включая графический интерфейс пользователя (GUI) и использование PowerShell.

Метод 1: Использование графического интерфейса

  1. Открыть свойства точки монтирования:

    • Перейдите к точке монтирования в Проводнике Windows.
    • Щелкните правой кнопкой мыши на точке монтирования и выберите «Свойства».
  2. Просмотр статистики диска:

    • В окне свойств на первой вкладке вы найдете кнопку (обычно называется «Статистика диска» или подобное), которая предоставит информацию о размере и использовании диска, аналогично тому, как вы видели бы это для корневого диска, например, для C:.

Метод 2: Использование PowerShell

PowerShell предлагает универсальные инструменты для управления объемами и мониторинга дискового пространства. Вы можете использовать несколько команд и скриптов для получения нужной информации.

Простой способ, используя PowerShell:

Get-WmiObject Win32_Volume | Select Name, 
        @{Name="Type"; Expression={@("Unknown", "No Root Directory", "Removable Disk", "Local Disk", "Network Drive", "Compact Disk", "RAM Disk")[$_.DriveType]}},
        @{Name="Capacity GB"; Expression={[Math]::Round($_.Capacity/1024/1024/1024,1)}},
        @{Name="Free GB"; Expression={[Math]::Round($_.Freespace/1024/1024/1024,1)}} |
Sort-Object -Property Name;

Этот код предоставляет полную информацию не только о точках монтирования, но и об их типах, что может быть полезно при дифференцировании между различными типами накопителей.

Скрипт для мониторинга:

$maxmount = "10"
$mediummount = "15"
$TotalGB= @{Name="Capacity(GB)";expression={[math]::round(($_.Capacity/1073741824),2)}}
$FreeGB= @{Name="FreeSpace(GB)";expression={[math]::round(($_.FreeSpace /1073741824),2)}}
$FreePerc= @{Name="Free";expression={[math]::round(((($_.FreeSpace /1073741824)/($_.Capacity /1073741824)) *100),0)}}

$volumes = Get-WmiObject win32_volume | Where-object {$_.DriveLetter -eq $null}
$points = @($volumes | Select SystemName, Label, $TotalGB, $FreeGB, $FreePerc) 

foreach ($entry in $points) {
    if ($entry.Free -le $maxmount) {
        $message = "System "+""+$entry.SystemName +""+" mountpoint "+$entry.label+""+"has"+""+$entry.Free +"%"+"  free space available"
        Write-Host $message
        exit 2
    } elseif ($entry.Free -le $mediummount) {
        $message= "System "+""+$entry.SystemName +""+" mountpoint "+$entry.label+""+"has"+""+$entry.Free +"%"+"  free space available"
        Write-Host $message
        exit 1
    } else {
        Write-Host "OK"
        exit 0
    }
}

Этот скрипт позволяет отслеживать состояние точек монтирования и формировать предупреждения по наличию свободного пространства, что помогает в управлении дисковыми ресурсами.

Заключение

Эти методы позволяют эффективно контролировать и управлять дисковым пространством на серверах под управлением Windows Server 2008 R2 и использовать как GUI, так и командную строку PowerShell для выполнения задач. Надеюсь, информация будет полезна для вас, и вы сможете успешно применять ее в ваших ИТ-проектах.

Оцените материал
Добавить комментарий

Капча загружается...