Mbr2gpt.exe là một công cụ bảng điều khiển Windows 10 mới được tích hợp sẵn cho phép bạn chuyển đổi đĩa có bảng phân vùng MBR (Master Boot Record) thành GPT (GUID Partition Table) mà không mất dữ liệu và không cần xóa phân vùng hiện có. Công cụ mbr2gpt có thể được sử dụng để chuyển đổi bảng phân vùng cả trong Windows PE (Windows Preinstallation Environment) và trực tiếp từ Windows 10. Bạn có thể sử dụng công cụ này để thay đổi bảng phân vùng từ MBR sang GPT cả trên dữ liệu (không phải hệ thống) đĩa và trên đĩa hệ thống, trên đó Windows 10 được cài đặt (sử dụng /allowFullOS
Lựa chọn).
Công cụ MBR2GPT hoạt động như thế nào?
mbr2gpt.exe
công cụ này là một phần của hình ảnh Windows 10, bắt đầu từ bản dựng 1703 (Bản cập nhật dành cho người sáng tạo). Bạn có thể sử dụng mbr2gpt để chuyển đổi đĩa từ MBR sang GPT ở chế độ ngoại tuyến trên các bản dựng Windows 10 trước đó (1507, 1511 và 1607). Các phiên bản Windows trước (Win 7 / 8.1) không được hỗ trợ chính thức.
Tài liệu MBR2GPT cho biết, các điều kiện sau phải được đáp ứng để chuyển đổi bảng phân vùng đĩa sang GPT:
- Bảng phân vùng đĩa hiện tại là MBR;
- Có dung lượng trống trên đĩa để đặt bảng GPT chính và phụ ở đầu và cuối đĩa;
- Bảng MBR không được chứa nhiều hơn 3 phân vùng, một trong số đó đang hoạt động (thiếu các phân vùng bổ sung và hợp lý);
- Cấu hình BCD phải có bản ghi khởi động trỏ đến phân vùng Windows.
Logic của Mbr2gpt khi chuyển đổi đĩa MBR sang GPT như sau:
- Kiểm tra đĩa;
- Nếu không có phân vùng hệ thống EFI (ESP), nó được tạo bằng cách sử dụng dung lượng trống từ một trong các phân vùng (nếu không có đủ dung lượng trống, thông báo lỗi sẽ xuất hiện “
cannot find room for the EFI system partition
”); - Các tệp khởi động UEFI được sao chép vào phân vùng EFI;
- Siêu dữ liệu GPT và bảng phân vùng được áp dụng cho đĩa (bảng phân vùng MBR được chuyển đổi thành GPT mà không làm mất dữ liệu trên các phân vùng hiện có);
- Cấu hình bộ nạp khởi động BCD đã được cập nhật.
Cú pháp của công cụ MBR2GPT là:
mbr2gpt /validate|convert [/disk:] [/logs:] [/map:=] [/allowFullOS]
- / xác thực - đĩa chỉ được xác thực nếu bảng phân vùng có thể được chuyển đổi (bao gồm kiểm tra dung lượng trống để lưu bảng GPT chính và phụ:16 KB + 2 sector ở đầu đĩa và 16 KB + 1 sector ở cuối );
- / chuyển đổi - bắt đầu chuyển đổi đĩa nếu xác nhận thành công;
- / disk: - chỉ định số lượng đĩa sẽ được chuyển đổi thành GPT. Nếu số không được đặt, đĩa hệ thống sẽ được chuyển đổi (như lệnh Diskpart:
select disk system
) - / log: - chỉ định đường dẫn đến thư mục mà MBR2GPT sẽ ghi các tệp nhật ký. Nếu đường dẫn không được đặt,
%windir%
thư mục được sử dụng. Các tệp nhật ký là Diagerr.xml, Diagwrn.xml, setuperr.log và setupact.log; - / map: - cho phép bạn chỉ định ánh xạ bảng phân vùng bổ sung giữa MBR và GPT. Ví dụ:/ map:42 ={af9b60a0-1431-4f62-bc68-3311714a69ad}. Số của phân vùng MBR được chỉ định bằng ký hiệu thập phân và GPT GUID chứa các dấu phân cách. Bạn có thể chỉ định nhiều ánh xạ cùng một lúc;
- / allowFullOS - theo mặc định, MBR2GPT chỉ có thể được sử dụng trong Windows PE. Bạn có thể sử dụng tham số allowFullOS để chuyển đổi đĩa hệ thống trực tiếp từ chạy Windows 10. Sử dụng phím này, bạn có thể chạy công cụ trong môi trường Windows đầy đủ. Nếu bạn không chỉ định tham số này khi sử dụng mbr2gpt từ Windows, lỗi sẽ xuất hiện:
ERROR: MBR2GPT can only be used from the Windows Preinstallation Environment. Use /allowFullOS to override.
Chuyển đổi Đĩa từ MBR sang GPT mà không mất Dara từ Windows 10
Hoạt động chuyển đổi đĩa từ MBR sang GPT là không thể hoàn nguyên. Đảm bảo máy tính của bạn hỗ trợ UEFI trước khi chuyển đổi.Trước khi chuyển đổi bảng phân vùng đĩa, hãy xác thực đĩa hệ thống hiện tại để chuyển đổi từ MBR sang GPT:
mbr2gpt.exe /disk:0 /validate /Logs:C:\logs /allowFullOS
MBR2GPT: Attempting to validate disk 0 MBR2GPT: Retrieving layout of disk MBR2GPT: Validating layout, disk sector size is: 512
Dòng MBR2GPT: Validation completed successfully
cho thấy rằng đĩa này có thể được chuyển đổi. Dòng MBR2GPT: Disk layout validation failed
có nghĩa là đĩa không thể được chuyển đổi vì nó không đáp ứng các điều kiện.
Một lỗi phổ biến khác Cannot find OS partition (s) for disk 0
thường liên quan đến việc sử dụng bộ nạp khởi động của bên thứ ba hoặc chọn sai đĩa để chuyển đổi. Bạn cũng có thể cố gắng di chuyển các tệp khởi động Windows vào phân vùng hệ thống (bcdboot c:\Windows /f bios /s c:
), và kiểm tra các mục nhập cho môi trường WinRE trong BCD (reagentc /disable && reagentc /enable
) đúng.
Bây giờ bạn có thể chuyển đổi bảng phân vùng trên đĩa hệ thống:
mbr2gpt.exe /convert /disk:0
MBR2GPT will now attempt to convert disk 0. If conversion is successful the disk can only be booted in GPT mode. These changes cannot be undone! MBR2GPT: Attempting to convert disk 0 MBR2GPT: Retrieving layout of disk MBR2GPT: Validating layout, disk sector size is: 512 bytes MBR2GPT: Trying to shrink the system partition MBR2GPT: Trying to shrink the OS partition MBR2GPT: Creating the EFI system partition MBR2GPT: Installing the new boot files MBR2GPT: Performing the layout conversion MBR2GPT: Migrating default boot entry MBR2GPT: Adding recovery boot entry MBR2GPT: Fixing drive letter mapping MBR2GPT: Conversion completed successfully MBR2GPT: Before the new system can boot properly you need to switch the firmware to boot to UEFI mode!
Việc chuyển đổi đĩa từ MBR sang GPT từ Windows 10 đã cài đặt được thực hiện trong vài giây.
Để khởi động máy tính từ phân vùng EFI mới, bạn phải thay đổi cài đặt của nó để khởi động ở chế độ UEFI. Khởi động lại máy tính của bạn và trong cài đặt UEFI, thay đổi chế độ khởi động từ Legacy (BIOS) thành UEFI (Pure) và lưu các thay đổi.
Windows 10 sẽ khởi động thành công. Sử dụng msinfo32.exe, bạn có thể đảm bảo rằng Windows 10 đã khởi động ở Chế độ BIOS = UEFI .
Các lợi ích chính của việc chuyển sang chế độ UEFI gốc và bảng phân vùng GPT:
- Bạn có thể tạo một phân vùng có kích thước lớn hơn 2 Tb;
- Bảo vệ môi trường khởi động bằng Khởi động an toàn;
- Công nghệ ELAM (Early Launch Antimalware);
- Các tính năng của Device Guard và Credential Guard trong Windows 10 Enterprise;
- Khởi động được đo
Chuyển MBR sang GPT trong khi cài đặt Windows 10
Bạn có thể sử dụng các công cụ mbr2gpt trong quá trình cài đặt Windows 10. Ví dụ:bạn đã tạo ổ đĩa flash UEFI có thể khởi động và đang cố gắng cài đặt Windows 10 trên đĩa có bảng phân vùng MBR trên máy tính sử dụng UEFI. Trong trường hợp này, lỗi sẽ xuất hiện:
Windows cannot be installed to this disk. The selected disk has an MBR partition table. On EFI system, Windows can only be installed to GPT disks.
Nếu bạn không muốn mất phân vùng dữ liệu hiện có trên đĩa MBR (nó được sử dụng để khởi động ở chế độ Kế thừa hoặc trên máy tính có BIOS) khi thay đổi bảng phân vùng đĩa thành GPT, bạn có thể chuyển đổi đĩa MBR sang GPT trực tiếp từ Cửa sổ cài đặt Windows 10.
- Nhấn các phím
Shift+F10
trên màn hình thiết lập Windows 10 để mở dấu nhắc lệnh của môi trường WinPE; - Kiểm tra xem bảng phân vùng đĩa có thể được chuyển đổi thành GPT hay không. Chạy lệnh:
mbr2gpt /validate
- Nếu lệnh trả về
Validation completed successful
, bạn có thể chuyển đổi đĩa này; Nếu lỗiFailed to retrieve geometry for disk -1
xuất hiện, rất có thể bạn có một số đĩa được kết nối với máy tính của mình. Chạy lệnhdiskpart
->list disk
để xác định số đĩa. Bạn có thể xác thực một đĩa cụ thể theo số đĩa bằng lệnh:mbr2gpt /validate /disk:0
- Để chuyển đổi bảng phân vùng đĩa, hãy chạy lệnh
mbr2gpt /convert
hoặc với số đĩambr2gpt /convert /disk:0
- Công cụ mbr2gpt sẽ tạo phân vùng khởi động phân vùng hệ thống EFI mới, sao chép bộ nạp khởi động Windows vào đó và chuyển đổi bảng phân vùng thành GPT (các phân vùng hiện có sẽ được lưu). Bạn chỉ cần chuyển sang cửa sổ Thiết lập Windows 10, nhấp vào nút Làm mới trong màn hình chọn đĩa và bắt đầu cài đặt Windows 10 trên phân vùng đã chọn.
MBR2GPT Sự cố đã biết
Sau khi chuyển đổi bảng phân vùng bằng mbr2gpt, hầu hết các sự cố xảy ra với BitLocker và Hyper-V (có sẵn trong các phiên bản Windows 10 Pro và Enterprise).
Nếu bạn đã chuyển đổi đĩa hệ thống của mình và cố gắng bật BitLocker, bạn có thể nhận được thông báo lỗi:The system cannot find the file specified
. Đây rất có thể là sự cố với Môi trường Khôi phục Windows (WinRE).
Cố gắng đổi tên tệp %windir%\System32\Recovery\ReAgent.xml
và bật BitLocker (tệp ReAgent.xml mới sẽ được tạo tự động).
Cũng có thể xảy ra lỗi khi khởi động máy ảo Hyper-V:
Virtual machine could not be started because the hypervisor is not running.
Để khắc phục lỗi này, bạn cần bật tự động khởi động Hyper-V trong cấu hình BCD:
BCDEDIT /Set {current} hypervisorlaunchtype auto
Nếu bạn cố gắng chuyển đổi đĩa bằng các phiên bản Windows trước (7 / 8.1), công cụ sẽ báo lỗi mbr2gpt cannot install new boot files
. Trong trường hợp này, bạn nên thực hiện nâng cấp tại chỗ lên Windows 10 trước và chỉ sau đó chuyển đổi bảng phân vùng.