Вопрос или проблема
Столбец 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: Использование графического интерфейса
-
Открыть свойства точки монтирования:
- Перейдите к точке монтирования в Проводнике Windows.
- Щелкните правой кнопкой мыши на точке монтирования и выберите «Свойства».
-
Просмотр статистики диска:
- В окне свойств на первой вкладке вы найдете кнопку (обычно называется «Статистика диска» или подобное), которая предоставит информацию о размере и использовании диска, аналогично тому, как вы видели бы это для корневого диска, например, для 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 для выполнения задач. Надеюсь, информация будет полезна для вас, и вы сможете успешно применять ее в ваших ИТ-проектах.