Tạo ổ USB Windows 10 (UEFI) có khả năng khởi động từ Linux


24

Làm cách nào tôi có thể tạo ổ USB Windows 10 có thể khởi động từ Linux?

Xin lưu ý:

  • WinUSB không hoạt động với Windows 10.
  • UNetbootin cũng không hoạt động.
  • dd phương pháp không hoạt động tốt.

Bên cạnh đó, tôi đã thử tạo một bảng phân vùng GPT và một phân vùng loại ef00 và được định dạng là fat32, sau đó sao chép tất cả các nội dung ISO vào nó. Nó khởi động OK, nhưng khi tôi bắt đầu cài đặt, nó hiển thị lời nhắc cho hộp thoại media.

Cập nhật

Một lần thử khác:

  1. Tạo GPT
  2. Tạo một FAT32 ở cuối ổ 50 MB
  3. Tạo NTFS ở không gian còn lại
  4. Đặt UEFI: NTFS trên FAT32
  5. Sao chép nội dung ISO sang NTFS

Quá trình cài đặt bắt đầu ổn, nhưng khi bắt đầu tiến trình hiển thị lỗi 0xc0000005 (nếu tôi nhớ chính xác).


Tôi nghĩ rằng nó nên được định dạng NTFS ... (bạn có phải là người đã hỏi điều này trên reddit quá btw không?)
Alex

@Alex, không phải, không phải tôi ... và không, UEFI chỉ có thể khởi động từ FAT32!
Victor Aurélio

Bạn đã sửa chữa cửa hàng BCD?
fpmurphy

@ fpmurphy1 không, làm sao vậy?
Victor Aurélio

1
"Đặt UEFI: NTFS trên FAT32" nghĩa là gì?
Philipp Ludwig

Câu trả lời:


7

Bạn đã làm đúng. Tạo bảng gpt với fat32 và sao chép tất cả dữ liệu từ iso trên đó. Nhưng bạn cũng cần đặt cờ "msftdata" (không phải "boot") trên phân vùng này, ví dụ như chia tay.


1
Đối với những người sử dụng gdisk: thay vì ef00tạo một 0700phân vùng.
Victor Aurélio

đặt cờ "msftdata" (không phải "khởi động"), cảm ơn bạn @Feretj, bạn đã cứu mạng tôi
gpanda

Bạn không thể đặt tất cả dữ liệu vào ổ đĩa FAT32 kể từ tháng 6 năm 2019. Bản cập nhật mới nhất chứa dung lượng windows.wimlớn hơn 4,1 GiB.
Ben

8

Hướng dẫn chuẩn bị phát hành Windows 10 tháng 10 năm 2018 Ổ USB có thể khởi động UEFI trên bất kỳ bản phân phối Linux nào.

Lưu ý rằng bản phát hành Windows 10 tháng 10 năm 2018 có tệp cài đặt sources/install.wimlớn hơn FAT32kích thước tệp tối đa , vì vậy chúng tôi sẽ định dạng ổ USB NTFS. Trình cài đặt Windows cũng không thể hoạt động với phân vùng EFI (mã ef00), vì vậy chúng tôi sẽ sử dụng Microsoft basic dataloại phân vùng (mã 0700).

Các bước để tạo ổ đĩa USB có tên /dev/sdc( Thay thế tất cả các lệnh bằng tên thiết bị CỦA BẠN! ):

  1. Lắp ổ USB vào máy tính và đảm bảo rằng nó chưa được kết nối. Một số bản phân phối muốn tự động hóa các ổ USB, vì vậy hãy đảm bảo bạn ngắt kết nối chúng. Các phân vùng được gắn kết có thể được tìm thấy mount -l | grep '/dev/sdc', sau đó ngắt kết nối sudo umount /dev/sdcX(X là số phân vùng).
  2. Mở thiết bị chặn USB bằng cách sử dụng gdisk /dev/sdc, định cấu hình thiết bị GPTvà tạo Microsoft basic dataphân vùng (mã 0700), sau đó viết thay đổi và thoát (Các bước tiếp theo sẽ hủy bảng phân vùng trong ổ USB của bạn !!! ).
sudo gdisk /dev/sdc
o
> This option deletes all partitions and creates a new protective MBR.
> Proceed? (Y/N): y
n
> Partition number ... > hit Enter
> First sector ... : > hit Enter
> Last sector ... : > hit Enter
> Current type is 'Linux filesystem'
> Hex code or GUID (L to show codes, Enter = 8300): 0700
p
> Should print something like:
> Disk /dev/sdc: 15646720 sectors, 7.5 GiB
> Model: DataTraveler 160
> Sector size (logical/physical): 512/512 bytes
> Disk identifier (GUID): ...
> Partition table holds up to 128 entries
> Main partition table begins at sector 2 and ends at sector 33
> First usable sector is 34, last usable sector is 15646686
> Partitions will be aligned on 2048-sector boundaries
> Total free space is 2014 sectors (1007.0 KiB)
> Number  Start (sector)    End (sector)  Size       Code  Name
>    1            2048        15646686   7.5 GiB     0700  Microsoft basic data
w
> Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!!
> Do you want to proceed? (Y/N): y
q
  1. Định dạng phân vùng mới dưới dạng NTFS:
sudo mkfs.ntfs /dev/sdc1
  1. Gắn phân vùng USB mới vào thư mục tạm thời trong nhà của bạn:
mkdir ~/tmp-win10-usb-drive
sudo mount /dev/sdc1 ~/tmp-win10-usb-drive
  1. Tải xuống ISO cài đặt Windows, tạo thư mục tạm thời mới trong nhà của bạn và gắn kết nó ở đó:
mkdir ~/tmp-win10-iso-mnt
sudo mount Win10_1809Oct_English_x64.iso ~/tmp-win10-iso-mnt
  1. Sao chép tất cả các tệp từ ISO được gắn vào ổ USB (bạn có thể sử dụng rsyncđể xem tiến trình):
sudo cp -rT ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
  1. Tháo ổ đĩa Windows ISO và USB và xóa các thư mục tạm thời:
sudo umount ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
rmdir ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
  1. Lắp ổ USB vào máy tính mới và khởi động từ nó.

2
Một số phần mềm không kiểm tra các tệp khởi động trong phân vùng NTFS, có người sửa tôi nếu mi sai.
Victor Aurélio

Bạn có thể nén install.wim nhỏ hơn 4GB bằng cách sử dụng mức nén "wimtools" và "solid". Bằng cách này, bạn có thể chỉ cần sử dụng FAT32, xem tqdev.com/2019-cannot-copy-windows-10-install-wim
mevdschee

Bạn có thể tăng tốc đáng kể định dạng của thanh khi bạn bỏ qua điền vào số không trước: sudo mkfs.ntfs -Q / dev / sdc1
Robert

3

Tôi đã sử dụng woeusb trên Ubuntu theo cách sau ( Cảnh báo: điều này sẽ ghi đè lên toàn bộ bảng phân vùng của bạn! ):

sudo woeusb --tgt-fs NTFS --device Win10_1809Oct_Hungarian_x64.iso /dev/sdc

Nếu bạn gặp thông báo lỗi này:

Phân vùng vẫn được phát hiện sau khi xóa tất cả chữ ký, điều này cho thấy rằng ổ đĩa có thể bị khóa ở chế độ chỉ đọc do hết tuổi thọ.

làm như sau : sudo fdisk /dev/sdc, và chọn dvà cuối cùng w.

(Nguồn: https://github.com/slacka/WoeUSB/issues/219 .) Sau đó, hãy thử lại để chạy lệnh trên.

Dù sao, với phương pháp này, woeusb đã tạo một bảng phân vùng gpt với hai phân vùng:

partition      file system    label          size          flags
----------------------------------------------------------------
/dev/sdc1      nfts           Windows USB     57.00 GiB
/dev/sdc2      fat16          UEFI_NTFS      512.00 KiB    lba
unallocated                                    4.00 MiB

Cuối cùng, tất cả những gì tôi phải làm là đặt cờ khởi động với gparted cho phân vùng / dev / sdc2 (cùng với lba).

Bằng cách này, tôi có thể khởi động thành công ở chế độ UEFI và cài đặt Windows 10 từ thanh USB của mình.


Bình luận chỉ để nhắc nhở bản thân tôi upvote nếu nó hoạt động.
chàng người Brazil đó

2

Hãy thử sử dụng Rufus với Wine.

Trân trọng.


2
Đây không phải là một giải pháp "linux".
Victor Aurélio

1
Nhưng nó hoạt động tốt.
aalf1987

Rufus là nguồn mở. Nhanh chóng, hiệu quả, hoạt động trên Linux. Cảm ơn!
akhmed

0

Phân vùng EFI phải là Fat32. Đó là trong thông số EFI. Hệ thống của bạn sẽ không bao giờ khởi động nếu bạn đặt các tệp cài đặt vào phân vùng NTFS.

Bạn thậm chí không cần bất kỳ phần mềm đặc biệt. GPT / FAT32 cho trình cài đặt, trích xuất tất cả các tệp từ iso (Tôi giả sử bạn có iso mới nhất bằng công cụ tạo phương tiện, vì nó bao gồm bản cập nhật tháng 11) và đặt "cờ khởi động" bằng gparted. Sau đó, nó sẽ khởi động vào trình cài đặt ở chế độ EFI, giả sử bạn chọn USB EFI từ các tùy chọn khởi động khi máy tính của bạn khởi động.

Bình.


Vấn đề là ngay khi trình cài đặt bắt đầu quá trình, nó sẽ báo lỗi, được mô tả trong câu hỏi.
Victor Aurélio

bạn đã thử với một iso khác nhau? Tôi sẽ nghi ngờ nguồn của tôi. Lấy cái mới nhất như được mô tả trong câu trả lời của tôi. Nếu bạn khởi động với điều đó trên usb của bạn và bạn vẫn gặp lỗi, tôi sẽ bắt đầu đặt câu hỏi về phần cứng ...
Pingers

vâng, tôi cũng đã thử rồi ...
Victor Aurélio
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.