Querying CIM
Every piece of Windows system information is located in CIM/WMI. The WMI datastore has information on thousands of Windows systems; disk and storage information is just one.
The CIM datastore is broken down into various classes. WMI stores information about disks in the Win32_LogicalDisk class. The Win32_LogicalDisk class contains disk information such as disk name, total size, free space, etc. To query this class with PowerShell, you must create a CIM instance with the cmdlet.
Using only specifying the parameter is the easiest way to query the class.
will return a PowerShell object for each storage volume found as shown below.
Querying storage volumes with
Notice that returns a property attached to each storage volume object returned. The property is what you need to work with.
Шаг 6: использование труб
Если вы знакомы с командной строкой Windows или пакетными файлами, то знаете о перенаправлении и трубах. Перенаправление (символ >) и трубы (символ |) берут результат действия и прикрепляют его в другое место. Например, можно перенаправить результат команды dir в текстовый файл или передать результат команды ping в команду find для фильтрования интересных результатов, вроде
dir > temp.txt
ping askwoody.com | find “packets” > temp2.txt
Здесь во второй команде find ищет строку packets, взятую из адреса askwoody.com командой ping и объединяет все совпадающие строки в файл под названием temp2.txt.
Первая из этих команд отлично работает в PowerShell. Для запуска второй команды потребуется нечто вроде
ping askwoody.com | select-string packets | out-file temp2.txt
Использования перенаправления и труб значительно расширяет возможности командной строки Windows: вместо бесконечного прокручивания вниз по экрану в поиске текстовой строки можно отфильтровывать нужные команды Windows.
Powershell обладает поддержкой pipe, причём она не ограничена текстом. PowerShell позволяет передавать целый объект из одной командлеты в другую, где объект представляет собой комбинацию данных (называемых свойствами) и действий (методов), которые могут использовать эти данные.
Сложная часть начинается при выстраивании объектов. Поставляемые одним командлетом объекты должны совпадать с типом объектов, принимаемых получающим командлетом. Текст является весьма простым типом объектов, так что если вы работаете с текстом, выравнивание объектов является простой задачей. Остальные объекты не такие элементарные.
Как это понять? Используйте командлету get-member. Если вы хотите знать, какой тип объекта обрабатывает командлета, проведите её через get-member. Например, если вы пытаетесь понять запущенные на компьютере процессы и сузили опции до командлеты get-process, вот как узнать результат командлеты:
get-process | get-member
Запуск этой командлеты выдаёт длинный список свойств и методов для get-process, но в самом начале списка можно увидеть тип объекта, который создает get-process:
TypeName: System.Diagnostics.Process
Нижеприведенный скриншот также показывает свойства get-process под названием get-process Handles, Name, NPM, PM, SI, VM и WS.
Если вы хотите манипулировать результатом get-process для работы с этим командлетом (вместо отображения длинного списка активных процессов на мониторе), нужно найти другую команду, которая в качестве вводных данных принимает System.Diagnostics.Process. Для поиска нужной командлеты снова используйте возможности PowerShell:
get-command -Parametertype System.Diagnostics.Process
Эта командлета выдает список командлет, которые могут обрабатывать System.Diagnostics.Process.
Некоторые командлеты известны тем, что принимают почти любой вид данных. Главной среди них является where-object. Эта командлета пропускает через себя каждый посылаемый по трубе объект, один за одним, и применяет к нему заданной критерии выбора. Существует специальный маркер под названием $_, который позволяет использовать каждый предмет в трубе, один за раз.
Допустим, вы хотите получить список всех запущенных на компьютере процессов с названием «svchost», то есть хотите сопоставить свойство Name процессу svchost. Используйте команду:
get-process | where-object {$_.Name -eq “svchost”}
Командлета where-object смотрит на каждый объект System.Diagnostics.Process, сравнивает .Name этого объекта с «svchost»; если есть совпадения, они выдаются на монитор. Смотрите на скриншот.
Zabbix + Iostat: мониторинг дисковой подсистемы
Zabbix + Iostat: мониторинг дисковой подсистемы.
Зачем?
Под катом, о мониторинге и о том как настроить.
Зависимости: Мониторинг реализован через zabbix агента и две утилиты: awk и iostat (пакет sysstat). Если awk идет в дистрибутивах по умолчанию, то iostat требуется установить с пакетом sysstat (тут отдельное спасибо Sebastien Godard и сотоварищи).
Известные ограничения: Для мониторинга нужен sysstat начиная с версии 9.1.2, т.к
там есть очень важное изменение: «Added r_await and w_await fields to iostat’s extended statistics». Так что следует быть внимательным, в некоторых дистрибутивах, например в CentOS немного «стабильная» и менее фичастая версия sysstat
Если же отталкиваться от версии zabbix (2.0 или 2.2) то тут вопрос не принципиален, работает на обоих версиях. На 1.8 не заработает т.к. используется Low level discovery.
Где взять: Итак, мониторинг состоит из файла конфигурации для агента, двух скриптов для сбора/получения данных и шаблон для веб-интерфейса. Все это доступно в репозитории на Github, поэтому любым доступным способом (git clone, wget, curl, etc. ) скачиваем их на машины которые хотим замониторить и переходим к следующему пункту.
Таким образом, проверяем с сервера мониторинга что iostat.conf подгрузился и отдает информацию, заодно смотрим что LLD работает. В качестве ответа вернется JSON с именами обнаруженных устройств. Если ответа не пришло, значит что-то сделали не так.
Также есть такой момент, что zabbix server не дожидается выполнения некоторых item’ов со стороны агентов (iostat.collect). Для этого следует увеличить значения Timeout.
Как настроить в web интейрфейс: Теперь остался шаблон iostat-disk-utilization-template.xml. Через веб интерфейс импортируем его в раздел шаблонов и назначем на наш хост. Тут все просто. Теперь остается ждать примерно один час, такое время установлено в LLD правиле (тоже настраивается). Или можно поглядывать в Latest Data наблюдаемого хоста, в раздел Iostat. Как только там появились значения, можно перейти в раздел графиков и понаблюдать за первыми данными.
И напоследок тройка скринов графиков c локалхоста))): Непосредственно данные в Latest Data:
Графики отзывчивости (Latency):
График утилизации и IOPS:
Вот и собственно и все, спасибо за внимание. Ну и по традиции, пользуясь случаем передаю привет Федорову Сергею (Алексеевичу)
Проверка свободного места на удаленных компьютерах Windows с помощью PowerShell
Для запуска PS скрипта проверки оставшегося свободного места на удаленном компьютере можно использовать WinRM командлет Invoke-Command.
Invoke-Command -ComputerName dc01,dc02,dc03 -FilePath «C:\PS\check-free-disk-space.ps1»
Если сервера, на которых нужно проверить оставшееся свободное место состоят в домене, можно получить их список из Active Directory с помощью командлета Get-ADComputer и запустить скрипт проверки для каждого из них:
$computers = (Get-ADComputer -Filter ‘operatingsystem -like «*Windows server*» -and enabled -eq «true»‘).NameInvoke-Command -ComputerName $computers -FilePath «C:\PS\check-free-disk-space.ps1» -ErrorAction SilentlyContinue
Также для получения WMI данных с удаленных компьютеров можно использовать RemoteWMI:
Get-WmiObject -Class Win32_logicalDisk -ComputerName dc01,dc02
Данная инструкция описывает простейшую самодельную систему мониторинга места на дисках, которую можно использовать для решения частных задач. Если у вас множество хостов, состояние которых нужно отслеживать, то конечно лучше использовать полноценную систему мониторинга (например, Zabbix, PRTG, Nagion, Icinga и т.д.).
26.05.2021
itpro
PowerShell, Windows 10, Windows Server 2016
комментариев 7
Современные версии Windows собирают информацию о состоянии жестких дисках компьютера через SMART и могут оповестить пользователя о наличии проблем. Рассмотрим, как выглядит уведомление Windows о физических проблемах с жестким диском и как с помощью PowerShell и командной строки получить SMART информацию о здоровье ваших дисков через встроенные WMI классы.
Большинство современных жестких дисков (в том числе HDD, SSD, NVMe SSD) поддерживает технологию базового самотестирования и анализа состояния S.M.A.R.T (Self-Monitoring, Analysis and Reporting Technology). Контроллер диска оценивает состояние физических характеристик диска, и Windows может получить доступ к этим данным через WMI.
Информация SMART доступна только для локальных физических дисков (ATA /SATA устройств). Внешние LUN, подключенных через Fiber Channel, iSCSI, RAID или сетевые диски в основном не сообщают статус SMART.
Диски PowerShell
Так же, как Windows оперирует с данными, используя файловую систему, оболочка PowerShell работает с хранилищами данных, представленных в виде дисков. Физические диски системы являются не единственным встроенным в оболочку видом хранилищ, с которыми обеспечивается взаимодействие. Пользователь может работать с реестром, встроенными переменными и переменными среды, хранилищами сертификатов точно так же, как и с обычными дисками, папками и файлами. Реализация такого взаимодействия и обеспечение абстракций, позволяющих пользователю применять одинаковые команды и методы к различным хранилищам данных, выполняется провайдерами — программами .NET.
Список провайдеров, доступных в данный момент оболочке, можно получить командой . Изначально в PowerShell присутствуют следующие «диски» — псевдонимы (Alias), переменные среды (Env), физические диски системы (C, D, и т. д.), функции, системный реестр, внутренние переменные (Variable) и хранилище сертификатов.
Вот пример чтения содержимого ветки реестра
Как видно, использованы те же команды, что для получения сведений о файловой системе. Но структура получаемых данных, естественно, различна. Кроме названия и свойств для каждого элемента выводится номер подраздела (SKC) и номер записи (VC). С помощью PowerShell пользователь может просматривать сведения о реестре, добавлять, удалять и модифицировать ключи. Позволю привести себе что-то вроде шпаргалки по работе с элементами реестра:
И код для примера выполнения различных манипуляций с ключами реестра и их параметрами:
Вот еще небольшой пример в виде функции, которая осуществляет поиск программ, автоматически загружающихся при старте системы. Область поиска определяется массивом, включающим в себя некоторые известные точки автозапуска в реестре. Код содержит комментарии, надеюсь, они пояснят суть работы.
Пользователь может создавать собственные диски, используя существующие провайдеры. Вот пример создания диска PowerShell с именем Win, содержимое которого будет являться корневой папкой :
После создания диска PowerShell к нему можно обращаться точно так же , как к обычному диску системы.
Однако необходимо знать, что по завершении сеанса работы с PowerShell он будет автоматически удален. Так же, как и псевдонимы, функции и переменные, созданные пользователем в течение сеанса. Для того, чтобы сохранить перечисленные изменения, необходимо создать профиль PowerShell.
Как изменить размеры значков на панели задач
К сожалению, в Windows 10 не так много вариантов изменения размера значков панели задач. Тем не менее, это все еще возможно!
Если вам требуется уменьшить значки, то достаточно нажать правой кнопкой мыши в любом пустом месте панели задач и открыть пункт контекстного меню «Параметры панель задачи». В открывшемся окне параметров панели задач выберите пункт «Использовать маленькие кнопки».
В этой ситуации необходимо использовать параметры масштабирования, которые также изменят размер других элементов интерфейса.
Чтобы изменить результат после изменения шкалы, необходимо выйти из системы и снова войти в нее.
Prettying up the Disk Space Output
Now that you know how to convert the free space bytes into gigabytes incorporate this technique into your script. One of the best ways to do that is with calculated properties. Calculated properties allow you to run code against property values to change them.
Calculated properties allow you to define a property value as a scriptblock which is essentially a portable unit of code.
The code you have so far only returns the disk label () and free space () displayed in bytes like below.
Now build your own property only this time, it’s represented in gigabytes.
Calculated property to round free space
That’s much better! You now have exactly the information you were looking for.
Инициализация диска
В предыдущем примере вы видели, что один из дисков находится в офлайн состоянии и имеет разметку RAW в поле Partition Style. Попробуем инициализировать его, создать таблицу разделов и создать на нем новый раздел.
Прежде всего нужно перевести такой диск в онлайн:
Get-Disk | Where-Object IsOffline –Eq $True | Set-Disk –IsOffline $False
Теперь можно инициализировать этот диск (его индекс 1):
Initialize-Disk -Number 1
По умолчанию на диске создается таблица разделов GPT (GUID), если вам нужна именно MBR, выполните команду:
Initialize-Disk 1 –PartitionStyle MBR
Чтобы не указывать номер диска, можно инициализировать все диски с таблицей разделов RAW:
Получение SMART параметров жесткого диска через WMI класс
В Windows вы можете получить доступ к данным SMART дисков с помощью встроенных средств.
Информацию о состоянии дисков компьютера можно посмотреть через панель управления Control Panel\System and Security\Security and Maintenance (в этом же разделе есть информацию о состоянии службы Windows Error Reporting).
В моем случае с дисками все ОК, т.к. в разделе Drive Status указано: OK, All drives are working properly .
Как мы уже говорили выше, Windows собирает информацию SMART с дисков и позволяет получать к ней доступ через WMI.
Откройте командную строку с правами администратора и выполните следующую команду чтобы получить состояние всех дисков:
wmic diskdrive get status
В данном случае с дисками все хорошо. Если нет – будет статус bad, unknown или caution.
Получить информацию о вероятном отказе жесткого диска можно через WMI класс MSStorageDriver_FailurePredictStatus:
wmic /namespace:\\root\wmi path MSStorageDriver_FailurePredictStatus
Если контроллер диска не видит проблем с диском, значение PredictFailure должно быть равно FALSE.
Этот же класс можно опросить с помощью PowerShell:
Get-WmiObject —namespace root\wmi –class MSStorageDriver_FailurePredictStatus
Значения некоторых счетчиков надежности дисков можно получить с помощью следующего кода PowerShell:
Можно вывести информацию только об определенных характеристиках:
Get-PhysicalDisk | Get-StorageReliabilityCounter | Select-Object -Property DeviceID, Wear, ReadErrorsTotal, ReadErrorsCorrected, WriteErrorsTotal, WriteErrorsUncorrected, Temperature, TemperatureMax | FT
Также можно вывести общую информацию о дисках через Get-PhysicalDisk:
$(Get-PhysicalDisk | Select *)
Ранее мы показывали как с помощью Get-PhysicalDisk получить информацию о неисправном диске в Windows Server S2D и заменить его:
С помощью данных WMI классов и командлетов PowerShell можно настроить сбор данных о состоянии дисков на компьютерах пользователей для проактивного мониторинга. Можно создать алерты для вашей системы мониторинга (например, zabbix, nagios, icinga и т.д.), compliance отчет SCCM через Configuration Baseline для или PowerShell Desired State Configuration (DSC), опрашивать состояние SMART на удаленных компьютерах скриптом через PowerShell Remoting (командлет Invoke-Command) или использовать что-то свое.
Gets one or more disks visible to the operating system.
This cmdlet returns physical disk objects like basic disks and partitioned drive partitions. Dynamic disks can span multiple pieces of physical media, so they will not be returned by Get-Disk. For more information, see Basic and Dynamic Disks.
How To Use Get-DiskFreeSpace CmdLet – Tips
To get the free disk(s) space and disk(s) size for the local machine we just call Get-DiskFreeSpace CmdLet and provide values for mandatory parameters (client and solution).
Here is the resultset.
Get-DiskFreeSpace CmdLet resultset for the local machine
As we have seen in the solution section of this article we can call Get-DiskFreeSpace CmdLet for the list of servers:
Here is the resultset for the list of servers.
Get-DiskFreeSpace CmdLet resultset
We can PowerShell pipeline result from Get-DiskFreeSpace CmdLet into Save-ToExcel CmdLet and get resultset as an Excel Sheet:
Here is the Excel Sheet result:
Get-DiskFreeSpace CmdLet resultset as Excel Sheet
REMINDER: As I have already mentioned it is always smart to have monitoring tools (Like HP SiteScope or HP Operations Manager for example) that will control critical points in your system and send you alerts when for example disk free space drops a certain level.
I have used Get-DiskFreeSpace CmdLet as part of the monthly maintenance routine on the servers that I have maintained to be proactive although I have had alerts set up in monitoring tools.
If you log disk free space data in the database over time and use some reporting tool to pull out these data to show trends of free disk space that is fantastic for disk capacity planning as I mentioned in the tip below. I have used the MS SQL database combined with MS SQL Reporting Services and it worked for me just fine.
TIP: If you log the data about free disk space in the database over time you can create nice reports that can be useful for disk capacity planning so you can either expand disk size on a virtual machine or order and add additional disk(s) in your server or disk storage.
Получение SMART параметров жесткого диска через WMI класс
В Windows вы можете получить доступ к данным SMART дисков с помощью встроенных средств.
Информацию о состоянии дисков компьютера можно посмотреть через панель управления Control Panel\System and Security\Security and Maintenance.
В моем случае с дисками все ОК, т.к. в разделе Drive Status указано: OK, All drives are working properly.
Как мы уже говорили выше, Windows собирает информацию SMART с дисков и позволяет получать к ней доступ через WMI.
В BIOS/UEFI для дисков должна быть включена поддержка SMART.
Откройте командную строку с правами администратора и выполните следующую команду чтобы получить состояние всех дисков:
В данном случае с дисками все хорошо. Если нет – будет статус bad, unknown или caution.
Получить информацию о вероятном отказе жесткого диска можно через WMI класс MSStorageDriver_FailurePredictStatus:
Если контроллер диска не видит проблем с диском, значение PredictFailure должно быть равно FALSE.
Этот же класс можно опросить с помощью PowerShell:
Если значение PredictFailure = True, обратите внимание на причину ошибки, код которой указывается в параметре Reason. Расшифровка кода ошибки PredictFailure зависит от вендора
Значения некоторых счетчиков надежности дисков можно получить с помощью следующего кода PowerShell:
Можно вывести информацию только об определенных характеристиках:
Также можно вывести общую информацию о дисках через Get-PhysicalDisk:
С помощью данных WMI классов и командлетов PowerShell можно настроить сбор данных о состоянии дисков на компьютерах пользователей для проактивного мониторинга. Можно создать алерты для вашей системы мониторинга (например, zabbix, nagios, icinga и т.д.), compliance отчет SCCM через Configuration Baseline для или PowerShell Desired State Configuration (DSC), опрашивать состояние SMART на удаленных компьютерах скриптом через PowerShell Remoting (командлет Invoke-Command) или использовать что-то свое.
Как посмотреть в Windows 10 занимаемое место на диске
Если пропадает место на диске с Windows 10, пользователь может получить подробные сведения непосредственно из настроек системы. В ОС встроена функция контроля памяти, которая отображает информацию о типах данных, хранящимся на системном и других дисках компьютера.
Выполните следующие действия:
- Нажмите на клавиши «Win» + «I».
- В окне «Параметры Windows» откройте раздел «Система».
- Перейдите во вкладку «Память».
- В окне отобразится количество места, занимаемое различными данными на системном диске «С». Чтобы получить более полную информацию нажмите на ссылку «Показать больше категорий».
- В окне отобразятся данные о том, как используется память, и как можно освободить место на диске. Информация представлена по нескольким категориям.
В параметрах Windows можно получить сведения о других дисках компьютера.
Благодаря этим сведениям, вы сможете понять проблемные места в хранении информации, а также удалить ненужные данные с компьютера.
Если вам недостаточно этих сведений, или вы используете операционные системы Windows 7, Windows 8, Windows 8.1, воспользуйтесь услугами стороннего софта.
Конвейер
В PowerShell реализован механизм передачи данных от одного процесса другому или вывод их в файл. Поскольку, как отмечалось выше, PowerShell оперирует не текстом, а объектами, при перенаправлении элементом обмена информации является объект, вместе со своей структурой. Такая возможность позволяет оперировать с объектами — отбирать их по заданному фильтру, сортировать, группировать их и т. д. Для организации такого конвейера (в документации на английском языке используется термин pipeline — трубопровод или канал) в тексте сценария используется знак вертикальной черты. При обнаружении такого знака интерпретатор передает объекты от одного командлета другому в качестве входных параметров.
В качестве примера конвейера и возможности получать доступ к свойствам передаваемых по нему объектов, приведем следующую ситуацию. Для проверки, не выполняются ли на компьютере некие подозрительные программы, мы хотим получить список всех запущенных процессов, получить пути и названия файлов, их запускающих, а также посмотреть дату создания таких файлов. В дополнение, отсортируем такой список по дате создания в убывающем порядке и отберем 10 наиболее «свежих» из них. Добавим к выводной информации также время последней модификации файла. Процессы с именами «System» и «Idle» из рассмотрения исключим, так как они не содержат пути к файлам.
Как говорится, хорошо сформулированный вопрос — уже половина решения. Взгляните:
Вводя код, вы всегда можете разбить строку, поставив в месте переноса знак «`» после пробела. Можно даже просто нажать клавишу Enter, не закончив строки. В этом случае PowerShell изменит приглашение на >>, давая пользователю понять, что интерпретатор считает код не завершенным и ожидает окончания его ввода.
Как и множество других скриптовых языков, PowerShell позволяет использовать переменные. Обозначением переменной служит знак «$». В случае передачи объекта по конвейеру, переменная $_ указывает на сам передаваемый объект.
Рассмотрим действия кода «по шагам». Сначала мы получаем список процессов с помощью командлета . Эти данные передаются по конвейеру далее и фильтруются по условиям, заданным в (мы откидываем процессы с именами «System» и «Idle»).
Следующий элемент конвейера — возвращает атрибуты отобранных объектов. Осталось их отсортировать (время создания в убывающем порядке) и выбрать интересующие нас значения (имена папки и исполняемого файла, время создания и последней модификации файла). Последний параметр, указывает, что выводиться будут лишь первые 10 элементов из списка объектов. Попробуем выполнить:
Замечательно, то что надо. Однако при попытке выполнить тот же код в среде Windows XP или Server 2003 обнаружилось, что там это выглядит не столь гладко:
При просмотре результатов выполнения
выяснилось, что пути двух процессов — winlogon и csrss — в Windows XP и Server 2003 PowerShell интерпретирует как \??\C:\WINDOWS\system32\. За разъяснением такого поведения я обратился к Василию Гусеву, специалисту по PowerShell. Он пояснил, что эти процессы не используют Win32API, и столь разная реакция на них в XP/Vista со стороны .NET, вероятно, вызвана различием платформ этих операционных систем.
Решив, что использовать механизмы обработки ошибок (в части обхода «непонятного» пути с подавлением вывода сообщения об ошибке) или исключения из списка процессов winlogon и csrss в данном случае не годится (возможно, они инфицированы, а дату их модификации в результатах мы уже не увидим), команды были изменены следующим образом:
А читатель может получить некоторое представление об использовании в PowerShell условий и регулярных выражений. Небольшие пояснения к коду. На втором этапе конвейера применен командлет , позволяющий выполнить заданную операцию для каждого объекта из набора, передаваемого на его вход. Как указывалось выше, текущий объект, над которым выполняется операция, представлен переменной $_. В качестве заданной операции здесь выступает условие вида if (условие){исполняемый код, если условие истинно}. Так же, как и в cmd.exe, для операторов сравнения используются не символы вида < или >, а аббревиатуры — в данном случае это «не равно»(not equal): -ne. Итак, если путь процесса содержит какое-либо значение (в случае с «System» и «Idle» путь просто отсутствует), с помощью функции replace все символы «\??\» в пути будут удалены (пожалуй, более детально затрагивать вопрос регулярных выражений мы пока не будем), а командлет предоставит доступ к свойствам текущего процесса. Ну а далее — все, как и в первом примере. Результат выполнения теперь одинаков:
Удаление разделов на диске
Чтобы удалить все разделы на дисках 1 и 2 без подтверждения, выполните команду:
Get-Partition –DiskNumber 1,2 | Remove-Partition -Confirm:$false
Для удаления с дисков всех разделов и полной очистки данных выполните команду:
Clear-Disk -Number 1 -RemoveData -Confirm:$false
Если на диски имеются OEM разделы (OEM раздел восстановления, EFI раздел , System Reserved) для их удаления нужно исползовать параметр RemoveOEM:
Clear-Disk -Number 1 -RemoveData –RemoveOEM
Следующая однострочная PowerShell команда инициализирует все новые подключенные диски типа RAW, создаст на них таблицу разделов и создаст раздел с файловой системой NTFS максимального размера. Ее удобно использовать при подключении нового диска:
Get-Disk |Where-Object PartitionStyle -eq ‘RAW’ |Initialize-Disk -PartitionStyle MBR -PassThru |New-Partition -AssignDriveLetter -UseMaximumSize |Format-Volume -FileSystem NTFS -Confirm:$false
28.05.2021
itpro
PowerShell, Windows 10, Windows Server 2016
комментария 4
Как посмотреть, что занимает место на диске в WinDirStat
Бесплатная программа WinDirStat (Windows Directory Statistics) предназначена для получения сведений об объеме занимаемого места на дисках компьютера. Программа проведет анализ занимаемого места на диске, а затем покажет подробную статистическую информацию.
Помимо обычной, имеется переносная (portable) версия приложения. Поддерживается русский язык интерфейса.
Основные возможности WinDirStat:
- Анализатор занимаемого места на всех дисках компьютера.
- Разноцветное представление расширений типов файлов.
- Отображение структуры каталогов и содержимого папок.
- Очистка диска и папок.
Нажмите на цветной прямоугольник для получения информации о конкретном файле.
Подробнее: WinDirStat для анализа и очистки дискового пространства