Cara membuat multiboot usb dengan linux
- 1735
- 19
- Miss Angelo Toy
Objektif
Buat perangkat USB yang dapat di -booting yang berisi beberapa distribusi Linux.
Persyaratan
- Perangkat USB dengan ukuran yang cukup untuk mengandung beberapa ISO
- Root Izin untuk memodifikasi partisi perangkat dan menginstal grub
Kesulitan
SEDANG
Perkenalan
Mampu menjalankan seluruh sistem operasi langsung dari media instalasi itu sangat berguna: kami dapat menguji distribusi, menggunakannya untuk tujuan cadangan, atau mungkin untuk memperbaiki sistem yang ada. Cara biasa untuk membuat media yang dapat di -boot adalah menulis gambar sistem di atasnya menggunakan DD
perintah atau alat khusus. Dalam tutorial ini kita akan melihat cara membuat perangkat USB multiboot yang dapat meng -host beberapa gambar distribusi.
Sebuah kata di bios vs uefi
Uefi
(Interface firmware terpadu) Ini adalah firmware modern yang dibuat sebagai pengganti warisan Bios
(Sistem output input dasar). Mayoritas distribusi Linux baru -baru ini dapat boot di kedua mode tanpa masalah: pemasang akan secara otomatis menyesuaikan perilakunya sesuai.
Dua firmwares, dengan standar, terkait dengan tata letak tabel partisi tertentu: Uefi
berjalan seiring dengan GPT
, ketika Bios
Dilengkapi dengan msdos
satu. Namun, asosiasi itu tidak sepenuhnya wajib, karena, setidaknya secara teori, a Uefi
firmware dapat memulai proses boot dari a msdos
tata letak disk dan warisan Bios
Sistem dapat melakukan hal yang sama dari a GPT
Disk yang dipartisi.
Dalam kasus sebelumnya Efi
partisi harus menjadi yang pertama pada disk, dan diformat dengan fat32
FileEnystem, di yang terakhir, a Boot BIOS
Partisi tanpa sistem file yang ada di dalamnya harus ada, diperlukan untuk menyimpan tahap grub 1.5, karena pada a GPT
Tata letak kesenjangan antara rekaman boot master dan partisi pertama tidak ada (di sinilah tahap grub ini biasanya diinstal).
Kami akan menyiapkan perangkat kami menggunakan tradisional msdos
tata letak, menginstal grub bootloader di mode EFI dan Legacy untuk dapat memulai distribusi keduanya di Uefi
Dan Bios
mode.
Mempersiapkan perangkat
Hal pertama yang harus kami lakukan adalah menyiapkan perangkat kami. Kami akan membuat dua partisi, secara berurutan:
- Sebuah
Efi
partisi - Partisi data
Yang pertama diperlukan untuk boot masuk Uefi
mode, karena di mana grub-lefi diinstal. Partisi harus diformat dengan a fat32
berkas sistem. Secara teoritis, pengaturan akan berfungsi bahkan hanya dengan partisi ini, karena kami juga dapat menggunakannya untuk menyimpan gambar distribusi yang ingin kami gunakan. Namun dalam hal ini kami akan terbatas, karena fat32
tidak mendukung file lager dari 4GB, dan beberapa ISO dapat melebihi ukuran ini.
Partisi kedua akan diformat dengan sistem file yang didukung oleh Grub, dan akan meng -host gambar dan file konfigurasi grub.
Demi tutorial ini saya akan menganggap perangkat yang ingin kami siapkan /dev/sdb
.
Tabel partisi dan partisi EFI
Hal pertama yang harus dilakukan adalah membuat a msdos
Tabel partisi pada perangkat:
$ sudo berpisah -s /dev /sdb mklabel msdos
Setelah langkah ini, kita dapat membuat Efi
partisi dan format dengan a fat32
berkas sistem. Ukuran yang disarankan untuk partisi adalah 550 MIB
: Pada partisi yang lebih kecil kita bisa menerima kesalahan seperti "tidak cukup kelompok untuk 32 bit lemak":
$ sudo berpisah -s /dev /sdb mkpart primer 1mib 551mib
Kami kemudian akan melanjutkan dalam mengaktifkan esp
Dan boot
Bendera:
$ sudo dipisahkan -s /dev /sdb set 1 esp pada $ sudo berpisah -s /dev /sdb set 1 boot on
Akhirnya kita harus membuat fat32
berkas sistem:
$ sudo mkfs.Fat -F32 /dev /sdb1
Partisi data
Partisi lain yang harus kita buat adalah partisi data, yang akan meng -host gambar ISO dari distribusi dan file konfigurasi grub. Kita dapat menyesuaikan ukuran partisi dengan kebutuhan kita: semakin besar, gambar terbanyak yang akan dapat dikandung. Di sini kita akan menggunakan semua ruang yang tersisa di perangkat:
$ sudo berpisah -s /dev /sdb mkpart primer 551mib 100%
Kami dapat memformat partisi dengan salah satu sistem file yang didukung oleh grub. Dalam hal ini saya akan menggunakan ext4
:
$ sudo mkfs.ext4 /dev /sdb2
Buat Mountpoints dan Pasang Partisi
Langkah selanjutnya adalah memasang Efi
partisi dan partisi data di suatu tempat dalam sistem kami sehingga kami dapat membuat direktori yang diperlukan, menginstal grub dan menempatkan file ISO kami di tempat:
# Buat mountpoints $ sudo mkdir /media /efi, data # pasang partisi EFI $ sudo mount /dev /sdb1 /media /EFI # pasang partisi data $ sudo mount /dev /sdb2 /media /data
Menginstal grub bootloader
Agar perangkat kami dapat bekerja di keduanya warisan
Dan Uefi
Mode Kita perlu menginstal grub dan grub untuk Efi
. Di fedora, biner grub itu disebut grub2
dan untuk menghasilkan konfigurasi khusus pada pengaturan UEFI, pemasangan GRUB2-EFI-Modul
Paket juga diperlukan. Pada beberapa distribusi lain nama biner, itu hanya "grub":
# Menginstal legacy grub2 sudo grub2-install \ --sarget = i386-pc \ ---reck \ --boot-direktori = "/media/data/boot"/dev/sdb # Menginstal grub untuk eFi sudo grub2-install \- -target = x86_64-efi \ --reck \ ---removable \ --efi-directory = "/media/efi" \ --boot-direktori = "/media/data/boot"
Seperti yang dapat Anda amati, dalam kedua kasus yang kami gunakan /media/data/boot
Sebagai grub boot-direktori. Direktori ini akan dibuat secara otomatis ketika perintah di atas diluncurkan, dan akan meng -host file konfigurasi grub.
Salin gambar dan buat grub.File CFG
Untuk membuat atau memperbarui konfigurasi grub pada sistem Linux modern, kami biasanya menjalankan grub2-mkconfig
perintah, atau, dalam distribusi berbasis Debian, UPDATE-GRUB
skrip pembungkus. Alat -alat ini melakukan operasi yang dibutuhkan secara otomatis.
Namun, dalam kasus kami, kami harus membuat tangan kami kotor dan membuat konfigurasi secara manual. Tidak semua distribusi membutuhkan arahan yang sama, tetapi di sini akan melihat beberapa contoh umum. Pertama kita harus membuat direktori yang akan meng -host gambar distribusi kita:
$ sudo mkdir/media/data/boot/iso
Secara opsional kami mungkin ingin mengambil kepemilikan dari direktori ini, untuk dapat memindahkan gambar dengan lebih mudah. Dengan asumsi a pengenal
Dan gid
dari 1000 kami akan menjalankan:
$ sudo chown 1000: 1000/media/data/boot/iso
Sekarang, misalkan kita ingin memasukkan gambar fedora netinstall terbaru dalam pengaturan kami. Pertama kita harus mengunduh gambar di /Media/Data/ISO
direktori:
$ wget -o/media/data/boot/iso/fedora-workstation-netinst-x86_64-28-1.1.iso \ https: // download.Fedoraproject.org/pub/fedora/linux/rilis/28/workstation/x86_64/iso/fedora-workstation-netinst-x86_64-28-1.1.iso
Kemudian, setelah unduhan selesai, kita harus menambahkan entri untuk itu di grub.CFG
file di /media/data/boot/grub2
direktori. Karena ini adalah entri pertama, kami menambahkan file itu sendiri harus dibuat:
Menuentry "fedora-workstation-netinst-x86_64-28-1.1 "isofile ="/boot/iso/fedora-workstation-netinst-x86_64-28-1.1.iso "loopback loop" $ isofile "linux (loop)/isolinux/vmlinuz iso-scan/filename =" $ isofile "inst.Tahap2 = HD: Label = Fedora-WS-DVD-X86_64-28 Sunyi initrd (loop)/isolinux/initrd.img
Struktur entri itu cukup sederhana: kami mendefinisikan isofile
variabel, dengan jalur ke gambar kita sebagai nilai. Grub mampu boot dari ISO Directy, dan itulah yang Loopback
Perintah adalah untuk: dalam contoh di atas gambar sistem file akan dipasang dan tersedia di lingkaran
perangkat.
Garis dimulai dengan Linux
berisi jalan menuju vmlinuz
, yang merupakan kernel yang dapat dieksekusi, ditambah arahan boot lainnya. Di antara mereka, Anda dapat melihat iso-scan/fileName
yang diperlukan untuk menemukan gambar ISO pada disk menggunakan jalur yang ditentukan.
Akhirnya, garis dimulai dengan initrd
Menentukan jalur ke initrd. Semua jalur itu, jelas, relatif terhadap perangkat loop, itu sebabnya mereka diawali oleh (lingkaran)
notasi.
Bagaimana kita mengetahui arahan yang harus kita gunakan dalam kasus tertentu? Salah satu caranya adalah dengan memasang gambar di suatu tempat di sistem kami dan melihat file yang ditempatkan di direktori isolinux. Namun, konfigurasi pra-tertulis sudah ada dan mudah ditemukan secara online.
Contoh lain, sekarang: kami akan menambahkan gambar rilis Ubuntu terbaru ke perangkat bootable kami:
$ wget http: // rilis.Ubuntu.com/18.10/ubuntu-18.10-desktop-AMD64.iso?_GA = 2.232120863.1006005768.1540658570-734439277.1540658570 \ -o/media/data/boot/iso/ubuntu -18.10-desktop-AMD64.iso
Sekarang, kami menambahkan entri ke file konfigurasi:
Menuentry "Ubuntu 18.10 - Coba tanpa menginstal "isofile ="/boot/iso/ubuntu -18.10-desktop-AMD64.iso "loopback loop" $ isOfile "linux (loop)/casper/vmlinuz iso-scan/filename =" $ isofile "boot = casper diam splash --- initrd (loop)/casper/initrd
Inilah yang seharusnya terlihat multiboot-menu kami pada titik ini:
Menu multiboot grubMenutup pikiran
Dalam tutorial ini kami melihat cara membuat perangkat multiboot-USB yang berisi banyak gambar distribusi. Mengikuti pengaturan ini, kami akan dapat mem -boot keduanya pada lawas di firmware UEFI, memilih gambar apa yang akan diluncurkan dari menu Grub.
Itu
grub.Pengaturan CFG yang disajikan di sini benar -benar minim, dan dapat disesuaikan lebih lanjut untuk memasukkan banyak modul lain dan menyesuaikan pengaturan lain seperti batas waktu: berkonsultasi dengan dokumentasi grub resmi adalah cara yang sempurna untuk mulai mengeksplorasi banyak kemungkinan.
Tutorial Linux Terkait:
- Buat USB Bootable Manjaro Linux
- Pengantar Penyelamatan Grub
- Cara membuat MS Windows USB yang dapat di -boot di bawah Linux
- Cara membuat USB multiboot dengan ventoy
- Ubuntu 22.04 Tidak Booting: Panduan Pemecahan Masalah
- Buat ubuntu 22 yang dapat di -boot.04 Disk Startup USB
- Cara Membuat USB Bootable dari ISO di Linux
- Hal -hal yang harus diinstal pada ubuntu 20.04
- Ubuntu 22.04 Sistem Pencadangan dan Pulihkan
- Buat Ubuntu 20 Bootable.04 USB Stick pada MS Windows 10