В этой статье мы рассмотрим процесс управления дисками, разделами и томами из командной строки PowerShell. Все операции по работе с локальными дисками и разделами, которые вы привыкли выполнять с помощью графической консоли «Управление дисками» (diskmgmt.msc) или из командной строки утилиты diskpart.exe, вы можете выполнить из PowerShell. Командлеты управления дисками включены в модуль Storage , доступный в PowerShell 3.0. Мы посмотрим как инициализировать диск, создать на нем таблицу разделов, раздел и отформатировать его. Рассмотренные ниже команды будут работать в Windows 10 / Server 2016 и Windows 8.1/ Server 2012 R2 (в предыдущих версиях Windows придется сначала обновить PowerShell).
В Windows 10 в модуле Storage доступно 160 команд. Чтобы вывести все доступные команды управления дисками, выполните:
Get-Command -Module Storage
Прежде всего попробуйте вывести список дисков, доступных на логическом уровне в вашей системе. Для этого выполните команду:
Get-Disk | ft -AutoSize
Чтобы выбрать только системный диск, на котором установлена Windows, выполните команду:
Get-Disk | Where-Object IsSystem -eq $True | fl
Как вы видите, команда вернула следующие атрибуты системного диска (их также можно использовать в выборке):
UniqueId : SCSIDISK&VEN_VMWARE&PROD_VIRTUAL_DISK5&1EC51BF7&0&000000:DESKTOP-JOPF9
Number : 0
Path : \?scsi#disk&ven_vmware&prod_virtual_disk#5&1ec51bf7&0&000000#{53f56307-b6bf-11d0-94f2-001efb8b}
Manufacturer : VMware
Model : Virtual disk
SerialNumber :
Size : 80 GB
AllocatedSize : 85898297344
LogicalSectorSize : 512
PhysicalSectorSize : 512
NumberOfPartitions : 2
PartitionStyle : MBR
IsReadOnly : False
IsSystem : True
IsBoot : True
Можно вывести только диски со статусом Offline:
Get-Disk | Where-Object IsOffline –Eq $True| ft –AutoSize
Если вам нужна информация о физических дисках (характеристики и состояние физических дисков на компьютере), используйте командлет Get-PhysicalDisk (ранее мы показывали как с помощью командлета Get-PhysicalDisk можно определить неисправный диск в Storage Spaces Direct и его использование при настройке отказоустойчивого хранилища S2D ).
С помощью PowerShell вы можете определить тип подключенного накопителя SSD или HDD (обычно подключен через шину SATA) или USB флешка (тип UnSpecified).
DeviceId Model MediaType BusType Size ——— —— ——— ——- —- 0 TOSHIBA MK3775VSXP HDD SATA 500156374016 1 Samsung SSD 840 PRO Series SSD SATA 128060514304 2 Transcend UnSpecified USB 128169757184 |
Вы можете вывести список разделов на всех дисках:
Get-Partition
Либо разделы только на указанных дисках:
Get-Partition –DiskNumber 1,2
Чтобы вывести список всех логических разделов в Windows выполните:
Get-Volume
В предыдущем примере вы видели, что один из дисков находится в офлайн состоянии и имеет разметку 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:
Get-Disk | Where-Object PartitionStyle –Eq 'RAW' | Initialize-Disk
Чтобы создать новый раздел на диске используется командлет New-Partition . Создадим раздел размером 10 Гб и назначим ему букву диска L:
New-Partition –DiskNumber 1 -Size 10gb -DriveLetter L
Если раздел должен занимать все доступное место на диске, используйте атрибут UseMaximumSize . Для автоматического назначения буквы диска используется параметр AssignDriveLetter (иногда буква диска может автоматически на назначаться ).
New-Partition –DiskNumber 1 -AssignDriveLetter –UseMaximumSize
Вы можете изменить назначенную букву диска так:
Set-Partition –DriveLetter L -NewDriveLetter U
Если нужно увеличить имеющийся раздел, сначала выведите доступное пространство для расширения для данного раздела:
Get-PartitionSupportedSize -DriveLetter L | Format-List
Потом можно увеличить размер раздела до максимального:
$MaxSize = (Get-PartitionSupportedSize -DriveLetter L).SizeMax
Resize-Partition -DriveLetter L -Size $MaxSize
Если нужно сделать конкретный раздел активным используется команда:
Set-Partition -DriveLetter T -IsActive $true
Отформатируем полученный раздел в файловой системе NTFS и зададим метку тома DBData:
Format-Volume -DriveLetter L -FileSystem NTFS -NewFileSystemLabel DBData -Confirm:$false
Чтобы удалить все разделы на дисках 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
Если говорить о том, какие лучшие дистрибутивы Linux мы знаем, то этот список может быть…
Хотя Ubuntu и поставляется со встроенным обозревателем Firefox многие пользователи считают что это не самая…
Что такое Remmina? Remmina — это совершенно бесплатный и свободный клиент так называемого удаленного рабочего…
Как мы знаем, Ubuntu это самая популярная сборка из систем на базе ядра Linux. У…
Выбор ноутбука для каждого пользователя это довольно кропотливый процесс. Люди стараются подобрать ноутбук который будет…
Если вы решили ознакомиться с операционной системой Linux более детально и задались вопросом как установить…