Công cụ tạo môi trường khôi phục Windows và USB có thể khởi động chỉ 200KB
(github.com/joshuacline)- Windows Deployment Image Customization Kit là công cụ triển khai ảnh Windows dựa trên native command shell, và theo tiêu đề trên HN, được giới thiệu là công cụ tạo môi trường khôi phục Windows và USB có thể khởi động với kích thước 200KB
- Liên quan đến SecureBoot, công cụ này nhận thức rằng dùng bootmgfw_EX.efi trong thư mục
EFI_EXbên trongboot.wimthay chobootmgfw.efithông thường sẽ ít gặp vấn đề tương thích hơn - Hiện tại đang chờ Microsoft chuẩn hóa theo hướng nào, và nếu hướng đi vẫn không rõ ràng thì có kế hoạch lấy bootloader EFI_EX hoặc thay đổi để cho phép chọn giữa hai cách
- Trước mắt, người dùng có thể tự lấy bootloader từ vị trí
EFI_EX, đặt vào thư mục cache, rồi bắt đầu cập nhật tệp khởi động trong recovery - Nếu tắt SecureBoot, người dùng vẫn có thể tiếp tục sử dụng Windows bình thường cho đến khi Microsoft quyết định sẽ chuẩn hóa bootloader nào
Công cụ triển khai ảnh Windows
- Windows Deployment Image Customization Kit là công cụ triển khai ảnh Windows dựa trên native command shell
- Trong tiêu đề HN, dự án này được giới thiệu là công cụ tạo môi trường khôi phục Windows và USB có thể khởi động với dung lượng 200KB
- README có kèm hình ảnh màn hình GUI và màn hình MenuScript
SecureBoot và xử lý bootloader
- Dùng bootmgfw_EX.efi trong thư mục
EFI_EXbên trongboot.wimthay chobootmgfw.efithông thường sẽ giảm các vấn đề tương thích SecureBoot - Lý do chưa áp dụng thay đổi ngay là vì hướng đi của Microsoft vẫn chưa rõ ràng
- Nếu định hướng của Microsoft vẫn không rõ, một trong các thay đổi sau có thể được áp dụng
- Lấy bootloader từ thư mục
EFI_EXthay thế - Cho phép chọn giữa hai cách bootloader
- Lấy bootloader từ thư mục
- Mục tiêu là tránh tình huống thay đổi bây giờ rồi sau này lại phải hoàn tác
Cách xử lý thủ công hiện có
- Người dùng có thể tự lấy bootloader từ vị trí
EFI_EX - Sau khi lấy, có thể đặt bootloader vào thư mục cache rồi bắt đầu cập nhật tệp khởi động trong recovery
- Nếu vô hiệu hóa SecureBoot, người dùng có thể tiếp tục sử dụng Windows bình thường cho đến khi Microsoft quyết định hướng bootloader tiêu chuẩn
Phân phối và tài liệu
- Bản mirror:
- MajorGeeks: mirror của Windows Deployment Image Customization Kit
- Softpedia: mirror của Windows Deployment Image Customization Kit
- Tài liệu:
- GitHub documentation: tài liệu dự án
- Microsoft TechNet Wiki archive: tài liệu triển khai môi trường khôi phục và triển khai Windows PE có thể khởi động trong command shell
- YouTube channel: kênh video liên quan
1 bình luận
Ý kiến Hacker News
Đây là file batch lớn nhất mà tôi từng thấy. Hồi cấp ba tôi từng nghĩ file khoảng 200 dòng mình viết đã là quá lố rồi, nên sự kiên trì để đẩy batch đi xa đến mức này thật sự đáng nể
Tôi có biết sơ qua vài thứ kiểu gọi hàm giả lập hay cú pháp kỳ quặc, nhưng chỉ lướt qua thôi cũng thấy rất nhiều thứ lần đầu gặp. Thường các dự án kiểu “X in Y KiB” hay dựa vào việc xử lý linker một cách kỳ dị, còn cái này thì mới mẻ. Và tên tính năng “Windows To Go” với “Windows To Stay” khá buồn cười
Script chính [1] là một file batch hơn 1MB. Hồi trước tôi khá sa đà vào vụ mod Wii, và nhớ là đã vài lần trò chuyện lặt vặt về batch với tác giả script đó. Tôi không thể tưởng tượng nổi việc bảo trì một file cỡ như vậy
[1] https://github.com/modmii/modmii.github.io/blob/master/Suppo...
Trong bối cảnh PowerShell đã có sẵn trong cài đặt mặc định, việc viết bằng batch script không chỉ 3085 dòng mà ở bất kỳ độ dài nào cũng hoàn toàn là không bình thường
Nó nhồi đầy các kiểm tra errorlevel để xử lý chuyển door, Fidonet và những thứ tương tự. Nếu thực sự cần thêm tính năng, file batch có thể trở nên phức tạp đến mức vô lý
Xin lưu ý là không có giấy phép được nêu rõ
Theo tôi biết, “Windows Recovery Environment” là một phiên bản Windows tối giản, rút gọn, thiếu phần lớn user space thông thường và cả một phần kernel, và mọi người đã mở rộng cũng như tùy biến nó theo nhiều cách
Nó cũng hoàn toàn không có dependency
Đây là một trong những công cụ dựa trên shell ấn tượng hơn mà tôi từng dùng. Chỉ riêng việc nhét vừa trong 200KB đã là một thành tựu, và rất thông minh
Một bắt bẻ rất nhỏ thôi, nhưng tôi luôn hơi rùng mình khi thấy dạng số nhiều kiểu FOO'S
Nếu VHDXS gây khó đọc thì cứ bỏ toàn bộ chữ hoa đi và viết thành VHDXs là được
https://www.hamilton.edu/academics/centers/writing/seven-sin...
Trông có vẻ ngầu, nhưng tôi tò mò là nó làm được điều gì mà phân vùng Windows Recovery Environment tiêu chuẩn không làm được
Có phải nó dành cho trường hợp môi trường khôi phục tiêu chuẩn bị hỏng không? Tôi cũng tự hỏi liệu sự cố CrowdStrike gần đây có phải là kiểu trường hợp đó không
Trên laptop công việc của tôi, môi trường khôi phục vẫn hoạt động bình thường, tôi vẫn có thể boot vào safe mode, và safe mode cũng không bị crash
Liệu có thể dùng cái này để cài driver màn hình hoặc firmware không? Ý tôi là tạo USB có thể boot, chép bộ cài vào đó, rồi dùng nó để cài firmware chẳng hạn
https://www.lg.com/au/support/product-support/cs-32GS95UE-B....
Tôi cũng từng nghĩ đến chuyện thử với WINE, nhưng hơi rén. Tiếc là firmware mới cho màn hình của tôi chỉ cài được bằng exe, còn hiện giờ tôi chỉ có máy bàn Linux
Sau đó, nếu tìm được rồi thì tìm cách nạp nó. Khi bạn nghĩ mình đã nảy ra được cách làm, nhất định phải là lúc rất khuya và mệt đến mức lơ mơ. Có như vậy bạn mới đủ tự tin rằng mình sẽ làm được mà không biến nó thành cục gạch. Mà thật ra, nếu không brick nó thì còn gì vui nữa? Cứ lấy đại một cái clip nhái Pomona SOIC rồi dump ngẫu nhiên ROM từ con chip là được
Cuối cùng, nếu bạn còn đủ tỉnh để không bị các bước trước lừa, thì hãy vứt bỏ toàn bộ công sức đã làm và quyết định dành thời gian tạo một USB Windows có thể boot. Nếu chuyện đó không xong vì một trong nhiều lý do, hãy đi mượn một chiếc laptop Windows. Nhưng lúc đó bạn đã quá mệt, nên thay vào đó sẽ tạo một máy ảo Windows trong QEMU, rồi cứ khởi động lại máy tính hết lần này đến lần khác để chỉnh passthrough cần thiết cho kết nối thiết bị. Chạy utility, khởi động file EXE và nó bắt đầu hoạt động. Quá phấn khích, bạn vô tình rút hết mọi kết nối giữa chừng. Dù sao thì màn hình có vẻ vẫn hoạt động, nhưng bạn sẽ tin chắc rằng có gì đó hơi sai sai ở đâu đó. Vài năm sau lại lôi cái kẹp SOIC ra dùng tiếp. Đây là câu chuyện tổng hợp từ nhiều lần tôi tự làm hỏng việc
Thực tế mà nói thì đúng vậy. Dự án này nhiều khả năng sẽ cho phép làm kiểu việc đó khá ổn. Chỉ là nên chuẩn bị tinh thần rằng bộ cài có thể là bloatware hoàn toàn, khiến nó không chạy chút nào, hoặc giả vờ chạy được gần xong rồi lại hỏng ở đâu đó
Trong các trường hợp khác thì cần Win32, và khi đó người ta sẽ dùng những thứ như Hiren’s Boot CD bản mới. Nếu tôi nhớ không nhầm thì bản mới dựa trên Windows 10, còn các bản phát hành đầu tiên dựa trên XP
https://www.hirensbootcd.org/
Quá khủng. Một shell script 3 nghìn dòng, tôi thật sự nể những ai có thể bảo trì được thứ như vậy
Với tôi nó giống một mớ hỗn độn nóng hổi khó mà tiếp cận được
Tôi mở một tab hoặc cửa sổ chia đôi cho từng “khu vực” mình muốn làm. Nếu đang làm ba khu vực thì tôi mở ba khung chia, mỗi khung tập trung vào một khu vực rồi chuyển qua lại giữa chúng. Về cơ bản thì gần giống như đang xử lý ba file riêng biệt