Tổng quan
Tạo phương tiện truyền thông trực tiếp USB chỉ UEFI khởi động khá dễ dàng. Chỉ cần sao chép các tệp vào ổ USB có định dạng FAT32 của bạn . Đó là nó!
Hãy nhớ rằng để cài đặt hoặc khởi động phương tiện:
Mục lục
- Sao chép tệp từ phương thức ISO
- Ví dụ qua thiết bị đầu cuối
- Ví dụ qua GUI
- Ví dụ trên Windows
- Phương pháp loopback ISO (nâng cao)
- Tạo nhị phân
- Tạo tập tin cấu hình
- Thêm kiên trì
- Kiểm tra tính toàn vẹn
- Khởi động an toàn UEFI
1. Sao chép tệp từ phương thức ISO
Phương pháp này cũng hoạt động đối với các phương tiện cài đặt khác có chứa bộ tải EFI, như Windows chẳng hạn.
1.1. Ví dụ qua thiết bị đầu cuối
Bạn có thể làm một cái gì đó như sau nếu 604A-00EA
là ổ USB của bạn và bạn đã p7zip
cài đặt:
$ 7z x ubuntu-12.04-desktop-amd64.iso -o/media/$USER/604A-00EA/
Bạn đã hoàn thành nếu bạn chỉ có một phân vùng trên ổ USB này, nếu không, bạn cần gắn cờ phân vùng là khả năng khởi động, ví dụ: thông qua parted
:
# parted /dev/sdX set 1 boot on
/dev/sdX
Ổ đĩa USB của bạn sẽ ở đâu và 1
số phân vùng nên được sử dụng để khởi động.
1.2. Ví dụ qua GUI
Gắn tệp .iso và sao chép nội dung vào ổ USB của bạn. Nhấn Ctrl+ Htrong Nautilus để hiển thị và sao chép các tập tin ẩn.
Thêm cờ khởi động thông qua GParted .
1.3. Ví dụ trên Windows
- Tương tự như trên, chỉ cần sao chép các tập tin.
- Nhấn Windows/Super+ X, đi đến Quản lý đĩa và kiểm tra xem phân vùng có được đánh dấu là hoạt động không. Trên các phiên bản Windows trước Windows 8, bạn nhấn Windows/Super+ Rđể mở menu chạy và mở
diskmgmt.msc
, điều đó sẽ mở Quản lý đĩa.
2. Phương pháp loopback ISO (nâng cao)
Thay vì trích xuất nội dung từ hình ảnh ISO, GRUB và GRUB2 đã có thể khởi động trực tiếp từ hình ảnh ISO thông qua thiết bị loopback. Cho rằng hình ảnh ISO có khả năng khởi động UEFI, chúng ta có thể thiết lập một ổ USB chứa nhiều ISO với các hệ điều hành khác nhau mà không tạo ra sự lộn xộn trên ổ USB.
Nếu bạn muốn khởi động Windows quá, bạn có thể muốn xem SARDU . Tôi nhớ sử dụng nó với Windows PE vào khoảng năm 2005 và dường như nó đã được cập nhật để hỗ trợ các ổ USB và UEFI, nhưng hãy nhớ rằng công cụ này cũng hỗ trợ khả năng khởi động kế thừa.
Chúng ta cần gì?
- Kiến thức rất cơ bản về tập tin cấu hình GRUB.
- Kiến thức rất cơ bản về khả năng khởi động UEFI và GRUB, vì chúng ta sẽ tạo ra hình ảnh bộ tải khởi động GRUB của riêng mình với rất nhiều mô-đun đi kèm.
- Hình ảnh ISO có thể khởi động UEFI, ổ USB có định dạng FAT và máy chạy Linux.
- Không, chúng tôi không cần cài đặt UEFI cho Linux (có thể là tình huống gà và trứng), một máy ảo Linux truyền thống như trong VirtualBox vẫn ổn.
2.1. Tạo nhị phân
Trên máy Ubuntu hoặc VM của bạn, đảm bảo gói grub-efi-amd64-bin đã được cài đặt (grub-efi-ia32-bin cũng có sẵn cho các kiến trúc Intel 32 bit trên các bản phát hành mới hơn). Gói có thể có một tên khác trên bản phân phối khác, bạn có thể so sánh danh sách tệp của gói để tìm gói phù hợp trên bản phân phối của mình.
Lệnh sau sẽ tạo hình ảnh GRUB, trong trường hợp này là tệp nhị phân EFI mà mọi máy tính có chương trình cơ sở UEFI sẽ có thể chạy:
grub-mkimage -o bootx64.efi -p /efi/boot -O x86_64-efi \
fat iso9660 part_gpt part_msdos \
normal boot linux configfile loopback chain \
efifwsetup efi_gop efi_uga \
ls search search_label search_fs_uuid search_fs_file \
gfxterm gfxterm_background gfxterm_menu test all_video loadenv \
exfat ext2 ntfs btrfs hfsplus udf
Mọi phần mềm UEFI tiêu chuẩn nên xem xét \EFI\BOOT\
một tệp có tên boot{arch}.efi
, vì vậy hãy tạo các thư mục trên ổ USB và sao chép hình ảnh chúng ta vừa tạo vào vị trí này. Các kiến trúc khác thay vì x64 là có thể, nhưng hãy đơn giản với x64 / amd64.
2.2. Tạo tập tin cấu hình
Một ví dụ rất cơ bản cho grub.cfg
tệp cấu hình nên được đặt trong cùng thư mục bootx64.efi
như sau:
set timeout=3
set color_highlight=black/light-magenta
menuentry 'Boot Ubuntu 14.04.2 LTS from ISO' {
set isofile="/efi/boot/ubuntu-14.04.2-desktop-amd64.iso"
loopback loop $isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject quiet splash persistent --
initrd (loop)/casper/initrd.lz
}
submenu 'Useful snippets' {
menuentry 'Ubuntu' {
chainloader /efi/ubuntu/grubx64.efi
}
menuentry 'Windows' {
chainloader /efi/Microsoft/Boot/bootmgfw.efi
}
menuentry 'Firmware Setup' {
fwsetup
}
}
Điều quan trọng là khối cấu hình với tiêu đề Boot Ubuntu 14.04.2 LTS from ISO
. Bạn có thể thay đổi màu sắc và thời gian chờ theo sở thích của bạn. Tôi đã chọn black/light-magenta
vì nó vẫn trông hơi giống Ubuntu-ish nhưng có thể dễ dàng phân biệt khi tải chuỗi các cấu hình khác. Bạn có thể tìm thấy nhiều ví dụ cho các bản phân phối khác trong Arch Wiki và đọc hướng dẫn GRUB thực sự đáng để bạn dành thời gian nếu bạn muốn vượt qua điều đó.
Quay trở lại khối cấu hình, rõ ràng là ISO được tham chiếu là /efi/boot/ubuntu-14.04.2-desktop-amd64.iso
, vì vậy hãy sao chép ISO của bạn \EFI\BOOT\
và thay thế ubuntu-14.04.2-desktop-amd64.iso
trong cấu hình bằng tên tệp thực tế của ISO của bạn.
loopback loop $isofile
là dòng, sẽ tải tệp ISO của chúng tôi đến một thiết bị loopback mà từ đó chúng tôi có thể khởi động hạt nhân Linux trực tiếp. Điều này là có thể bởi vì hình ảnh EFI GRUB của chúng tôi bao gồm mô-đun loopback. (Một chút thử và sai đã tham gia vào việc chỉ ra các module một cách hợp lý để bao gồm. Bạn không nên thấy bất kỳ thông báo lỗi, nó vẫn không hoàn hảo mặc dù.) Nói về kernel bạn có thể thêm các tham số kernel như toram
, các thông số cho các ngôn ngữ khác nhau (ví dụ locale=de_DE bootkbd=de
) và như trong ví dụ:persistent
2.3. Thêm kiên trì
Bạn có thể thêm một phân vùng như được mô tả trong: Làm cách nào để tôi có được USB trực tiếp để sử dụng phân vùng để duy trì? Hoặc bạn có thể tạo một casper-rw
tệp và đặt nó vào thư mục gốc của ổ USB.
dd if=/dev/zero of=casper-rw bs=1M count=4094
mkfs.ext4 -m 0 casper-rw
Tôi chưa kiểm tra mức tối đa tuyệt đối là bao nhiêu, nó phải nằm trong khoảng từ 4094 đến 4096 MB. Sử dụng một phân vùng nếu bạn có ý định sử dụng nhiều không gian hơn. Lưu ý rằng mọi thay đổi đối với (root) là một sửa đổi đối với hệ thống tệp lớp phủ, thậm chí xóa các tệp.
2.4. Kiểm tra tính toàn vẹn
Bạn nên xem câu trả lời cho các câu hỏi sau để xác minh rằng nội dung Live ISO trên ổ USB đang trong tình trạng nguyên sơ:
2.5. Khởi động an toàn UEFI
Secure Boot sẽ trở thành bắt buộc với các máy Windows 10, tôi khuyên bạn nên xem PreLoader của Linux Foundation để thêm chức năng Secure Boot cho thiết lập này. Dưới đây là một số menu minh họa nghệ thuật ASCII của HashTool đi kèm .
Xin chúc mừng, tôi muốn nói rằng bạn đã thành thạo việc khởi động UEFI và không nên sợ nữa.