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

Khắc phục lỗi “Winload.efi bị thiếu hoặc chứa lỗi” trong Windows 10

Hãy xem xét một lỗi khởi động Windows 10 phổ biến khác xảy ra do tệp winload.efi bị hỏng hoặc thiếu. Vấn đề biểu hiện như sau: Windows dừng khởi động với màn hình xanh (BSOD) và thông báo lỗi xuất hiện trên màn hình khởi động:

Recovery
Your PC needs to be repaired
The application or operating system couldn’t be loaded because a required file is missing or contains errors.
File: \Windows\system32\winload.efi
Error code: 0xc000000f
You’ll need to use the recovery tools on your installation media. If you don’t have any installation media (like a disc or USB device), contact your system administrator or PC manufacturer.
Press Enter to try again
Press F8 for Startup Settings
Press ESC for UEFI Firmware Settings

Lưu ý. Mã lỗi có thể trông như: Error code: 0xc0000225 hoặc 0xc0000001.

Lỗi này xảy ra khi tệp khởi động hệ thống \windows\system32\winload.efi bị thiếu hoặc cấu trúc của nó bị hỏng. Thường thì vấn đề xuất hiện sau khi cập nhật hệ thống không đúng, nếu ổ đĩa hoặc hệ thống tệp bị hỏng, khi phân vùng lại ổ đĩa bằng công cụ bên thứ ba, cập nhật phần mềm diệt virus, sau khi clone hình ảnh Windows sang ổ khác, thay thế bo mạch chủ máy tính (hoặc thay đổi phần cứng đáng kể), v.v.

Tệp Winload.efi là tệp thực thi của môi trường EFI với bootloader khởi tạo môi trường và bắt đầu khởi động Windows. Nếu tệp này bị hỏng, thiếu hoặc trong cấu hình khởi động có đường dẫn đến ổ không tồn tại chứa tệp winload.efi, Windows 10 sẽ không thể khởi động.

Giải pháp phụ thuộc vào việc bạn đã dùng chế độ khởi động UEFI hay Legacy trước khi vấn đề xảy ra. Tiếp theo, xem xét các bước cơ bản giúp khắc phục lỗi này và khởi động đúng Windows 10 hoặc Windows Server 2016.

Bật chế độ Legacy Boot (CSM) và tắt Secure Boot

Hầu hết máy tính hỗ trợ UEFI có thể khởi động từ cả ổ đĩa bảng phân vùng GPT và MBR legacy.

Phím vào menu UEFI phụ thuộc vào nhà cung cấp thiết bị. Thông thường là các phím F2, F8, Del hoặc Esc. Hoặc nhấn nút ESC trực tiếp trên màn hình lỗi.

  1. Thử bật chế độ tương thích CSM Boot trong cài đặt UEFI (trong một số phiên bản firmware UEFI gọi là Legacy Boot);
  2. Tìm và tắt chế độ Secure Boot trong cài đặt UEFI. Vị trí cài đặt này cũng phụ thuộc vào firmware UEFI. Thường thấy ở phần Security, Authentication, hoặc Boot. Trên laptop HP, Secure Boot nằm dưới phần Security. Đặt chế độ Secure Boot thành Disabled hoặc Off; Mẹo. Trước đây chúng ta đã nói về UEFI và tại sao cần Secure Boot. Có thể lỗi khởi động liên quan đến không khả dụng của tệp winload.efi sẽ được khắc phục sau khi tắt Secure Boot trong cài đặt UEFI.
  3. Đảm bảo ổ cứng của bạn được chọn làm thiết bị khởi động đầu tiên; Kiểm tra thứ tự ưu tiên khởi động. Đảm bảo ổ cứng Windows được chọn làm thiết bị khởi động chính trong cài đặt UEFI;
  4. Lưu thay đổi và khởi động lại máy tính;
  5. Nếu menu UEFI Boot khả dụng khi máy tính khởi động, thử chọn thủ công mục OS Boot Manager (UEFI) – Windows Boot Manager.

Sử dụng Automatic Startup Repair để sửa bootloader Windows

Thử khắc phục lỗi này bằng công cụ Automatic System Repair. Để làm vậy:

  1. Khởi động từ phương tiện cài đặt Windows 10 (hoặc USB boot UEFI);
  2. Nhấn Repair your computer hoặc phím R;
  3. Đi đến Troubleshoot -> Advanced options -> Startup repair;
  4. Wizard khôi phục sẽ bắt đầu. Làm theo hướng dẫn của nó.

Nếu bạn không có đĩa cài đặt Windows, bạn phải khởi động lại máy tính ba lần liên tiếp bằng cách nhấn nút Power cho đến khi màn hình console khôi phục WinRE xuất hiện. Chọn See advanced repair options. Sau đó làm theo hướng dẫn trên.

Tắt bảo vệ Early Launch Anti-Malware (ELAM) trên Windows 10

Nếu các phương pháp trước không khắc phục được lỗi tải winload.efi, hãy tắt bảo vệ ELAM (Early Launch Anti-Malware), được bật mặc định cho bootloader Windows.

Lưu ý. ELAM cho phép phần mềm diệt virus được chứng nhận khởi động trước tất cả phần mềm bên thứ ba. Phần mềm diệt virus có thể thực hiện quét diệt virus sớm và kiểm soát việc khởi động driver và phần mềm khác.

Để làm điều đó:

  1. Thực hiện bước 1 và 2 từ Giải pháp 2;
  2. Đi đến Troubleshoot -> Advanced options -> Startup settings;
  3. Khởi động lại máy tính với nút Restart;
  4. Sau lần khởi động tiếp theo, hệ thống sẽ tự động mở Startup Settings (từ bước này bạn cũng có thể khởi động Windows ở Safe Boot mode);
  5. Nhấn F8 để chọn mục 8) Disable early launch anti-malware protection.

Khắc phục lỗi hệ thống tệp và kiểm tra tính toàn vẹn tệp hệ thống

Kiểm tra ổ đĩa lỗi, có thể có lỗi ổ đĩa hoặc hệ thống tệp trên phân vùng chứa tệp winload.efi. Để kiểm tra tất cả ổ đĩa lỗi và sửa chữa, chạy lệnh:

chkdsk /f /r

Sau đó, cũng khuyến khích kiểm tra tính toàn vẹn tệp hệ thống bằng công cụ sfc. Để dùng tiện ích sfc ở chế độ ngoại tuyến, bạn cần chỉ định đường dẫn đến ổ hệ thống và đường dẫn đến thư mục Windows. Bạn có thể xác định ký tự ổ được gán cho phân vùng Windows bằng lệnh:

Bcdedit /enum | find "osdevice"

Giả sử, trong trường hợp của bạn là ổ D:. Lệnh kiểm tra tính toàn vẹn tệp hệ thống trông như sau:

sfc /scannow /offboot=d:\ /offwindir=d:\windows

Bạn cũng cần thực hiện kiểm tra ngoại tuyến Windows Component Store bằng DISM. Bạn cần so sánh hình ảnh của mình với tệp wim cài đặt gốc của bản dựng Windows 10 của bạn (giả sử wim gốc trên ổ E:):

Dism /image:D:\ /Cleanup-Image /RestoreHealth /Source:E:\sources\install.wim
Mẹo. Để hiểu ký tự ổ nào được gán cho卷 trong môi trường WinPe, chạy lệnh:
Diskpart
List vol

Theo nhãn và kích thước ổ đĩa, bạn có thể xác định ký tự ổ của phân vùng cài đặt Windows.

Sửa BCD và tệp Winload.efi cho thiết bị UEFI

Nếu Windows 10 của bạn được cài đặt ở chế độ UEFI gốc trên ổ đĩa GPT, khuyến nghị làm theo hướng dẫn tái tạo bootloader EFI Windows 10 trên thiết bị UEFI. Tôi khuyên dùng bài viết tại liên kết, mọi thứ được mô tả chi tiết ở đó. Dưới đây là hướng dẫn ngắn:

Khởi động thiết bị từ phương tiện khôi phục/cài đặt và mở dấu nhắc lệnh:

  1. Thực thi lệnh: diskpart
  2. Liệt kê phân vùng trên ổ đĩa: list volume
  3. Tìm phân vùng có nhãn ESP hoặc EFI kích thước 100 MB. Nhớ nó (kích thước và tên phân vùng có thể khác tùy phiên bản Windows, nhưng điều chính là hệ thống tệp của nó luôn phải là FAT32). Nếu phân vùng EFI bị xóa nhầm, có thể khôi phục như sau;
  4. Chọn phân vùng này: select volume 2
  5. Gán ký tự ổ cho phân vùng: assign letter=Z
  6. Thoát diskpart: exit
  7. Bây giờ cần tái tạo cấu hình bootloader. Sao chép tệp boot từ thư mục Windows: bcdboot c:\Windows /s Z: /f ALL (thay thế c:\ bằng ký tự ổ cài Windows). Nếu làm đúng, thông báo sẽ xuất hiện: Boot files successfully created;
  8. Khởi động lại thiết bị và kiểm tra xem vấn đề khởi động với tệp winload.efi đã được khắc phục chưa.

Tái tạo BCD và Master Boot Record dùng Bootrec và Bcdedit

Nếu bạn cài Windows ở chế độ BIOS legacy (không phải UEFI), bạn có thể tái tạo bản ghi khởi động và bootloader MBR bằng công cụ bootrec.

  1. Làm theo bước 1 và 2 từ Giải pháp 2;
  2. Đi đến Troubleshoot > Command Prompt;
  3. Trong dấu nhắc lệnh, chạy lần lượt các lệnh sau:
    • bootrec /FixMbr — ghi MBR vào phân vùng hệ thống;
    • bootrec /FixBoot — ghi lại sector khởi động mới trên phân vùng hệ thống;
    • bootrec /ScanOs — quét ổ đĩa tìm OS đã cài;
    • bootrec /RebuildBcd — tái tạo cấu hình bootloader.
  4. Đóng dấu nhắc lệnh bằng lệnh: exit
  5. Khởi động lại máy tính.

Nếu phương pháp trước không giúp, bạn phải tái tạo tệp cấu hình boot (BCD) cho MBR trong dấu nhắc lệnh Recovery Console:
bcdedit /set {bootmgr} device boot
bcdedit /set {default} device boot
bcdedit /set {default} osdevice boot
bcdedit /set {default} device partition=c:
bcdedit /set {default} osdevice partition=c:
bcdedit /set {default} path \windows\system32\winload.efi

Khởi động lại máy tính và kiểm tra xem vấn đề đã được khắc phục chưa.