Computer >> 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 tôi sẽ xem xét quản lý đĩa, phân vùng và khối lượng từ bảng điều khiển PowerShell. Bạn có thể thực hiện từ PowerShell tất cả các hoạt động quản lý đĩa cục bộ và phân vùng 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. Các lệnh ghép ngắn quản lý đĩa được bao gồm trong Bộ nhớ mô-đun có sẵn trong PowerShell 3.0. Chúng tôi sẽ xem xét cách khởi tạo đĩa, tạo bảng phân vùng trên đó, tạo ổ đĩa và định dạng đĩa. 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 lệnh ghép ngắn PowerShell trong mô-đun Lưu trữ 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 hết sức 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ê các phân vùng và đĩa cục bộ

Trước hết, hãy cố gắng hiển thị danh sách các đĩa cục bộ có sẵn trong hệ thống của bạn ở mức logic. Để thực hiện, hãy chạy lệnh sau:

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 có thể 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 vùng chọn):

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 chỉ có thể hiển thị đĩa ngoại tuyến:

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 Get-PhysicalDisk lệnh ghép ngắn (trước đây chúng tôi đã hướng dẫn cách phát hiện đĩa vật lý bị lỗi trong Storage Spaces Direct bằng cách sử dụng lệnh ghép ngắn Get-PhysicalDisk và cách sử dụng nó, sau đó định cấu hình bộ lưu trữ S2D có khả năng 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 được kết nối:SSD, HDD (thường được kết nối qua bus SATA) hoặc ổ đĩa flash USB (Loại phương tiện chưa được chỉ định).

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 các phân vùng trên tất cả các đĩa:

Get-Partition

Hoặc chỉ phân vùng 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 sau:

Get-Volume

Quản lý đĩa và phân vùng với Windows PowerShell Xin lưu ý rằng việc đánh số đĩa bắt đầu từ 0 và đánh số 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 là Ngoại tuyến và có nhãn RAW trong cột Kiểu phân vùng. Hãy thử khởi chạy nó, tạo bảng phân vùng GPT hoặc MBR và tạo một phân vùng mới trên đó.

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

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

Bây giờ bạn có thể khởi tạo nó (chỉ mục 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 một MBR, hãy chạy lệnh này:

Initialize-Disk 1 –PartitionStyle MBR

Nếu có một số dữ liệu trên đĩa, bạn có thể thay đổi bảng phân vùng từ MBR sang GPT mà không cần 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 bằng bảng phân vùng RAW:

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

Xin 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 mình như sau.

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

Để tạo phân vùng mới trên đĩa, Phân vùng mới cmdlet được sử dụng. Hãy tạo một 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 tất cả dung lượng đĩa có sẵn, hãy sử dụng UseMaximumSize thuộc tính. Để tự động gán một chữ cái, AssignDriveLetter tham số được sử dụng ( đôi khi Windows không tự động gán ký tự ổ đĩa ).

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 hãy hiển thị không gian có sẵn chưa được phân bổ để 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 của phân vùng đến mức 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 kích hoạt một phân vùng, lệnh này được sử dụng:

Set-Partition -DriveLetter U -IsActive $true

Định dạng phân vùng bằng 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

Làm cách nào để Xóa các Phân vùng khỏi Đĩa?

Để xóa tất cả cá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 sau:

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ả cá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, Hệ thống dành riêng), hãy sử dụng RemoveOEM tham số để loại bỏ chúng:

Clear-Disk -Number 1 -RemoveData –RemoveOEM

Một lớp lót PowerShell tiếp theo sẽ khởi tạo tất cả các đĩa kiểu RAW mới được 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ó rất thuận tiện để sử dụng nó khi kết nối một đĩ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