Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Máy Chủ Windows

Quản lý ổ đĩa và phân vùng với Windows PowerShell

Trong bài viết này, chúng ta sẽ xem xét quản lý ổ đĩa, phân区和 ổ đĩa từ bảng điều khiển PowerShell. Bạn có thể thực hiện từ PowerShell tất cả các thao tác quản lý ổ đĩa cục bộ và phân区, mà bạn đã quen thực hiện từ GUI "Disk Management" (diskmgmt.msc) hoặc từ công cụ dòng lệnh diskpart.exe. Cmdlet quản lý ổ đĩa được bao gồm trong mô-đun Storage có sẵn trong PowerShell 3.0. Chúng ta sẽ xem xét cách khởi tạo ổ đĩa, tạo bảng phân vùng trên nó, tạo ổ đĩa và định dạng nó. Các lệnh dưới đây sẽ hoạt động trong Windows 10 / Server 2016 và Windows 8.1 / Server 2012 R2 (đối với các phiên bản Windows trước đó, bạn sẽ phải cập nhật PowerShell trước).

Có 160 cmdlet PowerShell trong mô-đun Storage trong Windows 10. Để hiển thị tất cả các lệnh có sẵn liên quan đến quản lý ổ đĩa, hãy chạy lệnh sau:

Get-Command -Module Storage

Quản lý ổ đĩa và phân vùng với Windows PowerShell

Quan trọng. Hãy cực kỳ cẩn thận khi quản lý ổ đĩa và phân vùng từ PowerShell để không vô tình xóa hoặc định dạng phân vùng chứa dữ liệu.

PowerShell: Liệt kê ổ đĩa cục bộ và phân vùng

Trước hết, hãy thử hiển thị danh sách ổ đĩa cục bộ có sẵn trong hệ thống của bạn ở cấp độ logic. Để làm điều đó, hãy chạy lệnh này:

Get-Disk | ft -AutoSize

Để chỉ chọn ổ đĩa hệ thống mà Windows được cài đặt, hãy nhập lệnh sau:

Get-Disk | Where-Object IsSystem -eq $True | fl

Như bạn thấy, lệnh đã trả về các thuộc tính sau của ổ đĩa hệ thống (bạn cũng có thể sử dụng chúng trong việc chọn lọc):

UniqueId : SCSI\DISK&VEN_VMWARE&PROD_VIRTUAL_DISK\5&1EC51BF7&0&000000:DESKTOP-JOPF9
Number : 0
Path : \\?\scsi#disk&ven_vmware&prod_virtual_disk#5&1ec42ba7&0&000000#{21f23456-a6bf-12d0-94f2-001efb8b}
Manufacturer : VMware
Model : Virtual disk
SerialNumber :
Size : 98 GB
AllocatedSize : 98432321434
LogicalSectorSize : 512
PhysicalSectorSize : 512
NumberOfPartitions : 2
PartitionStyle : MBR
IsReadOnly : False
IsSystem : True
IsBoot : True

Bạn có thể hiển thị chỉ ổ đĩa Offline:

Get-Disk | Where-Object IsOffline –Eq $True| ft –AutoSize

Quản lý ổ đĩa và phân vùng với Windows PowerShell

Nếu bạn cần thông tin về ổ đĩa vật lý (đặc điểm và trạng thái của ổ đĩa vật lý trên máy tính), hãy sử dụng cmdlet Get-PhysicalDisk (trước đây chúng tôi đã chỉ ra cách phát hiện ổ đĩa vật lý lỗi trong Storage Spaces Direct bằng cmdlet Get-PhysicalDisk và cách sử dụng nó khi cấu hình lưu trữ S2D chịu lỗi).

Quản lý ổ đĩa và phân vùng với Windows PowerShell

Bạn có thể phát hiện loại ổ đĩa kết nối: SSD, HDD (thường kết nối qua bus SATA) hoặc USB flash drive (UnSpecified media type).

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

 

Bạn có thể hiển thị danh sách phân vùng trên tất cả các ổ đĩa:

Get-Partition

Hoặc phân vùng chỉ trên các ổ đĩa được chỉ định:

Get-Partition –DiskNumber 1,2

Để hiển thị danh sách tất cả các ổ đĩa trong Windows, hãy chạy lệnh này:

Get-Volume

Quản lý ổ đĩa và phân vùng với Windows PowerShell Lưu ý rằng số thứ tự ổ đĩa bắt đầu từ 0, và số thứ tự phân vùng – từ 1.

Khởi tạo ổ đĩa trong PowerShell

Trong ví dụ trước, bạn đã thấy rằng một trong các ổ đĩa đang Offline và có nhãn RAW trong cột Partition Style. Hãy thử khởi tạo nó, tạo bảng phân vùng GPT hoặc MBR và tạo phân vùng mới trên nó.

Trước hết, bạn phải đưa ổ đĩa Online:

Get-Disk | Where-Object IsOffline –Eq $True | Set-Disk –IsOffline $False

Bây giờ bạn có thể khởi tạo nó (chỉ số của nó là 1):

Initialize-Disk -Number 1

Quản lý ổ đĩa và phân vùng với Windows PowerShell

Theo mặc định, bảng phân vùng GPT (GUID) được tạo trên ổ đĩa, nhưng nếu bạn cần bảng MBR, hãy chạy lệnh này:

Initialize-Disk 1 –PartitionStyle MBR

Nếu có dữ liệu trên ổ đĩa, bạn có thể chuyển đổi bảng phân vùng từ MBR sang GPT mà không xóa dữ liệu bằng công cụ mbr2gpt.exe.

Để không chỉ định số ổ đĩa, bạn có thể khởi tạo tất cả các ổ đĩa có bảng phân vùng RAW:

Get-Disk | Where-Object PartitionStyle –Eq 'RAW' | Initialize-Disk

Lưu ý rằng ổ đĩa có thể có trạng thái RAW khi bảng phân vùng bị hỏng. Bạn có thể thử khôi phục bảng phân vùng và dữ liệu trên ổ đĩa RAW của bạn như sau.

Cách tạo phân vùng trên ổ đĩa?

Để tạo phân vùng mới trên ổ đĩa, cmdlet New-Partition được sử dụng. Hãy tạo phân vùng 10 GB và gán ký tự L: cho nó:

New-Partition –DiskNumber 1 -Size 10gb -DriveLetter L

Quản lý ổ đĩa và phân vùng với Windows PowerShell

Nếu bạn muốn phân vùng chiếm toàn bộ dung lượng ổ đĩa trống, hãy sử dụng thuộc tính UseMaximumSize. Để gán ký tự tự động, tham số AssignDriveLetter được sử dụng (thỉnh thoảng Windows không gán ký tự ổ đĩa tự động).

New-Partition –DiskNumber 1 -AssignDriveLetter –UseMaximumSize

Bạn có thể thay đổi ký tự đã gán bằng lệnh này:

Set-Partition –DriveLetter L -NewDriveLetter U

Nếu bạn muốn mở rộng phân vùng hiện có, trước hết hiển thị dung lượng chưa phân bổ có sẵn để mở rộng phân vùng này:

Get-PartitionSupportedSize -DriveLetter L | Format-List

Sau đó bạn có thể mở rộng kích thước phân vùng lên tối đa:

$MaxSize = (Get-PartitionSupportedSize -DriveLetter L).SizeMax
Resize-Partition -DriveLetter L -Size $MaxSize

Quản lý ổ đĩa và phân vùng với Windows PowerShell

Nếu bạn muốn làm cho phân vùng trở nên active, lệnh này được sử dụng:

Set-Partition -DriveLetter U -IsActive $true

Định dạng phân vùng với PowerShell

Hãy định dạng phân vùng mới trong NTFS và đặt nhãn ổ đĩa DBData:

Format-Volume -DriveLetter L -FileSystem NTFS -NewFileSystemLabel DBData -Confirm:$false

Quản lý ổ đĩa và phân vùng với Windows PowerShell

Cách xóa phân vùng khỏi ổ đĩa?

Để xóa tất cả phân vùng trên ổ đĩa 1 và 2 mà không cần xác nhận, hãy chạy lệnh này:

Get-Partition –DiskNumber 1,2 | Remove-Partition -Confirm:$false

Quản lý ổ đĩa và phân vùng với Windows PowerShell

Để xóa tất cả phân vùng khỏi ổ đĩa và xóa hoàn toàn dữ liệu, hãy chạy lệnh

Clear-Disk -Number 1 -RemoveData -Confirm:$false

Nếu có phân vùng OEM trên ổ đĩa (phân vùng khôi phục OEM, phân vùng EFI, System Reserved), hãy sử dụng tham số RemoveOEM để xóa chúng:

Clear-Disk -Number 1 -RemoveData –RemoveOEM

One-liner PowerShell tiếp theo sẽ khởi tạo tất cả ổ đĩa RAW mới kết nối, tạo bảng phân vùng trên chúng và tạo phân vùng NTFS với kích thước tối đa có sẵn. Nó tiện lợi khi kết nối ổ đĩa mới:

Get-Disk |Where-Object PartitionStyle -eq 'RAW' |Initialize-Disk -PartitionStyle MBR -PassThru |New-Partition -AssignDriveLetter -UseMaximumSize |Format-Volume -FileSystem NTFS -Confirm:$false