Vài tuần trước, tôi quyết định dùng thử Macrium Reflect, một phần mềm chụp ảnh hệ thống miễn phí. Macrium Reflect sử dụng Windows PE làm phương tiện trực tiếp có thể khởi động, bên trong đó bạn có thể thực hiện cả thao tác sao lưu và khôi phục. Giờ đây, với phần mềm chụp ảnh hệ thống, việc kiểm tra khôi phục là điều quan trọng nhất và tôi quyết định thực hiện việc này cả trên phần cứng vật lý cũng như trên máy ảo.
Đây là nơi tôi nhấn một vấn đề. Khi cố gắng khởi động hình ảnh PE trong VirtualBox, tôi gặp lỗi sau - E_FAIL (0x80004005), với thông tin chi tiết hơn có sẵn trong tệp VBoxHardening.log. Bên trong tệp này, trong số nhiều dòng văn bản, tôi tìm thấy một số lần truy cập đọc thiếu WinVerifyTrust, một trong số đó dẫn đến lỗi bên dưới. Làm gì bây giờ?
Vấn đề chi tiết hơn
Mã lỗi cụ thể cũng như thuộc tính lỗi không quá rõ ràng. Chúng ta cần xem tệp nhật ký đã tạo để hiểu rõ hơn điều gì đã xảy ra. Cụ thể, đây là những dòng dẫn đến lỗi:
\Device\HarddiskVolume5\Windows\System32\bcrypt.dll [thiếu WinVerifyTrust]
13b4.1f40:Lỗi (rc=0):
13b4.1f40:supR3HardenedScreenImage/NtCreateSection:cache rc=Unknown Status -626 (0xfffffd8e) fImage=1 fProtect=0x10 fAccess=0xf cHits=4 \Device\HarddiskVolume5\Windows\System32\bcrypt.dll
Những gì chúng ta thấy ở đây là thư viện cụ thể này (bcrypt.dll) không vượt qua được kiểm tra WinVerifyTrust. Xin lưu ý rằng có thể có các đối tượng khác không kiểm tra được nhưng không nghiêm trọng. Thật vậy, với thông tin này, chúng ta có thể thấy rằng thực sự có một vé về vấn đề này, cũng như một cuộc thảo luận dài trên diễn đàn.
Về cơ bản, điều này có thể là do sự không khớp trong các chứng chỉ mà Windows cung cấp, như một phần của hình ảnh PE và những chứng chỉ mà VirtualBox có, trong bản dựng hiện tại. Lỗi xảy ra do tăng cường bảo mật được giới thiệu trong sản phẩm ảo hóa này.
Giải pháp
Có một số cách xung quanh này. Bạn có thể hoàn nguyên về bản dựng Windows cũ hơn cho máy ảo của mình - trong trường hợp này, hãy sử dụng một hình ảnh Windows 10 PE khác, cũ hơn làm cơ sở cho phương tiện cứu hộ chẳng hạn hoặc đối với hầu hết mọi người, chỉ là một phiên bản khác của hệ điều hành. Ngoài ra, bạn có thể thay đổi (nâng cấp) phiên bản VirtualBox. Cách thứ hai thường là cách giải quyết rẻ hơn, nhanh hơn so với việc làm hỏng hệ điều hành. Cách tốt nhất là tắt các cờ tăng cứng, nhưng điều đó dường như không thể thực hiện được theo bất kỳ cách tầm thường nào.
Và vì vậy, mặc dù nghe có vẻ giống như Xin chào Capt. Rõ ràng, bạn đang làm gì ở đây, giải pháp là cố gắng cập nhật VirtualBox lên phiên bản mới nhất, nếu có thể. Trong thử nghiệm của tôi trên một số máy chủ, việc chuyển từ nhánh 5.1.X sang nhánh 5.2.X đã giải quyết vấn đề này cho các máy ảo chạy Windows 10.
Kết luận
Là một dân công nghệ, bạn có thể tức giận khi những người hỗ trợ yêu cầu bạn cập nhật phần mềm của mình lên phiên bản mới nhất. Tuy nhiên, đôi khi, như trong trường hợp này, đó là cách nhanh nhất và hợp lý nhất để giải quyết vấn đề này. Tăng cường bảo mật trong VirtualBox gây ra nhiều phức tạp khác nhau và đây sẽ luôn là trò chơi mèo vờn chuột giữa Microsoft và Oracle. Đôi khi, một số thư viện có thể không tải, khiến máy ảo của bạn ngừng hoạt động.
Tuy nhiên, các phần kỹ thuật ít quan trọng hơn ở đây - điều quan trọng là bạn biết cách tiếp cận vấn đề này một cách có hệ thống. Trước tiên, hãy kiểm tra cẩn thận mã lỗi, sau đó đọc nhật ký lỗi. Khi bạn tìm ra thủ phạm, bạn cũng sẽ có thể đặt câu hỏi phù hợp và tìm ra giải pháp phù hợp. Trong trường hợp này, đó là vấn đề cập nhật chương trình, nhưng chúng tôi làm điều đó với sự hiểu biết đầy đủ về những gì đã xảy ra. Tôi hy vọng bạn thấy hướng dẫn nhỏ này hữu ích, cho tất cả các vấn đề về VirtualBox hiện tại và tương lai của bạn.
Chúc mừng.