Inkqubo inikezelwe
Lonke unikezelo luqaliswe kusetyenziswa iBooty sebenzisa nokuba yi-SHMFS (tmpfs) okanye SquashFS + Ukwaleka kweFS, ukhetho lomsebenzisi. Unikezelo lwenziwe kanye, kwaye ngexesha lenkqubo yokuqalisa, iiparamitha zikhethiwe ezikuvumela ukuba usebenzise i-tmpfs ecocekileyo yengcambu, okanye indibaniselwano ye-Overlay FS + SquashFS ngokurekhoda utshintsho kwi-tmpfs. Kunokwenzeka ukukopisha kwangaphambili ikhithi yokusabalalisa ekhuphekayo kwi-RAM, ekuvumela ukuba ukhuphe i-USB drive emva kokukhuphela kunye nokukopisha ikiti yokusabalalisa kwimemori.
Okokuqala, iBooty ivelisa owayo umfanekiso we-initrd, onokusebenzisa izinto eziluncedo zomthonyama kwindlela yangoku okanye ibhokisi exakekileyo. Kuyenzeka ukuquka (ukupakisha) yonke ikhithi yokuhambisa efakwe kulawulo (chroot) kwi-initramfs. Oku kunokuba luncedo xa ufuna ukunyusa inkqubo usebenzisa i kexec: phinda ulayishe kwakhona initrd nge kernel entsha kunye nenkqubo entsha ngaphakathi kwe initrd.
Ukwenza umfanekiso we-nitrd othe ngqo:
mkdir initramfs/
mkinitramfs initramfs/ --output initrd
Ukwenza umfanekiso we-initrd ukuquka unikezelo olusuka kulawulo lwe-"gentoo/":
mkdir initramfs/
mkinitramfs initramfs/ --overlay gentoo/ --cpio --output initrd
Emva koko lo mfanekiso we-initrd ulungele ngokupheleleyo ukulayishwa, umzekelo, nge-PXE okanye nge-kexec.
Okulandelayo, i-Booty ivelisa imifanekiso ngenkqubo echazwe "njengezinto ezingaphezulu". Umzekelo, ungafaka (ukhuphe ugcino) iGentoo enemiqathango kulawulo olwahlukileyo, emva koko ugcino lwecpio okanye umfanekiso weSquashFS onesixokelelwano uyakwenziwa kusetyenziswa iBooty. Ungaqwalasela kwakhona unikezelo kulawulo olwahlukileyo, kwaye ukhuphele izicwangciso zakho zobuqu komnye uvimba weefayili. Zonke ezi "leya" ziya kulayishwa ngokulandelelanayo ngaphezulu komnye kwaye zenze inkqubo enye yokusebenza.
mkdir initramfs/
mkinitramfs initramfs/ --overlay gentoo/ --iisetingi zokwaleka/ --amaxwebhu angaphezulu/ --squashfs --output initrd
Ekugqibeleni, i-Booty ikuvumela ukuba wenze imifanekiso ye-ISO evulelekileyo kunye ne-USB, i-HDD, i-SSD kunye nezinye ii-drives ngokufaka inkqubo engentla kwimifanekiso.
Isenzo esongezelelweyo esifunekayo kukulungisa ikernel (vmlinuz) yokuqalisa kwangaphambili. Umbhali (Spoofing) uncoma ukusebenzisa "make defconfig". Ngaphambi kokudala umfanekiso, kufuneka ulungiselele i-directory ngokubeka i-kernel ye-vmlinuz kunye ne-initrd elungiselelwe ngaphambili "engenanto" eyenziwe kumzekelo wokuqala.
mkdir iso/
cp /boot/vmlinuz-* iso/boot/vmlinuz
cp initrd iso/boot/initrd
Ngolu lungiselelo lugqityiwe, ngoku singenza imifanekiso ye-ISO ukusuka kolu luhlu.
Lo myalelo ulandelayo uyakwenza umfanekiso we-ISO, hayi ovulelekileyo, i-ISO nje:
mkdir iso/
mkbootisofs iso/ --output archive.iso
Ukwenza umfanekiso wesiqalo, kufuneka uchaze "--legacy-boot" ukhetho lweBIOS kunye "--efi" ye-UEFI, ngokulandelelana; iinketho zithatha nokuba yi-grub2 okanye i-syslinux njengeparameters; ungakhankanya ukhetho olunye kuphela ( umzekelo, inkxaso yesiqalo ye UEFI ayifuneki , isenokungachazwa).
mkbootisofs iso/ --legacy-boot syslinux --output boot-biosonly.iso
mkbootisofs iso/ --legacy-boot syslinux --efi grub2 --output boot-bios-uefi.iso
mkbootisofs iso/ --efi grub2 --output boot-uefionly.iso
Kwaye njengangaphambili, imifanekiso enenkqubo ibandakanyiwe kwi-initrd, ungazibandakanya kwi-ISO.
mkbootisofs iso/ --overlay gentoo/ --squashfs --legacy-boot grub2 --efi grub2 --output gentoo.iso
Emva kwalo myalelo, kuya kuveliswa umfanekiso we-BIOS/UEFI ISO olayisha iGentoo kumfanekiso weSquashFS usebenzisa i-Overlay FS, usebenzisa i-tmpfs yokugcina idatha. I-kernel kufuneka yakhiwe ngenkxaso ye-Overlay FS ngeSquashFS. Nangona kunjalo, ukuba ngesizathu esithile oku akufuneki, ungasebenzisa "-cpio" ukhetho endaweni ye -squashfs ukupakisha i-gentoo/ njengendawo yogcino lwecpio, apho ugcino luyakuvulelwa ngokuthe ngqo kwi-tmpfs kwi-boot, eyona nto iphambili. kukuba ukukhupha inkqubo ye-tmpfs yayine-RAM eyaneleyo.
Inyani enika umdla: ukuba umfanekiso we-ISO owenziwe kusetyenziswa u-“-efi” ukhetho lucatshulwe kwi-FAT32 flash drive ngokukhuphela ngokulula iifayile (cp -r), ngoko iFlash drive iya kuqalisa kwimo ye-UEFI ngaphandle kolungiselelo lokuqala, enkosi kwiinkcukacha. ye-UEFI- abakhupheli.
Ukongeza kwii-ISO eziqhumayo, nayiphi na i-drive bootable inokudalwa kunye neeparitha ezifanayo: i-USB, i-HDD, i-SSD, njalo njalo, kwaye le drive ingaqhubeka isetyenziselwa injongo yayo. Ukwenza oku, kufuneka unyuke, umzekelo, isixhobo se-USB kwaye usebenzise i-mkbootisofs kuyo. Yongeza nje inketho enye "-i-bootable" ukwenzela ukuba i-drive apho ulawulo oluchaziweyo lubekwe khona.
nyusa /dev/sdb1 /mnt
mkbootisofs / mnt --overlay gentoo/ --squashfs --legacy-boot grub2 --efi grub2 --bootable
Emva koko, isixhobo se-USB siya kuba ne-bootable kunye ne-gentoo/ i-overlay (ungalibali ukukopa i-/boot/vmlinuz kunye / ne-boot/initrd iifayile kwisixhobo).
Ukuba ngesizathu esithile i-drive ayizange ifakwe kwi / mnt, kwaye kuvela ukuba / mnt ibekwe kwisixhobo esingundoqo / dev / sda, ngoko i-bootloader iya kubhalwa kwakhona kwi /dev/sda. Kufuneka ulumke xa ukhankanya i --bootable option.
Ngexesha lenkqubo yokuqalisa, iBooty ixhasa inani leenketho ezinokugqithiselwa kumlayishi wesiqalo, grub.cfg okanye syslinux.cfg. Ngokungagqibekanga, ngaphandle kokhetho, zonke izigqubuthelo ziyalayishwa kwaye zicatshulwe kwi-tmpfs (ukhetho olumiselweyo ooty.use-shmfs). Ukusebenzisa i-Fs eWalekeneyo ukhetho lwe-booty.use-overlayfs kufuneka lusetyenziswe. I-booty.copy-to-ram inketho yokuqala ikhuphela ngaphezulu kokungaphezulu kwi-tmpfs, emva koko idibanisa kwaye ilayishe. Nje ukuba sikhutshelwe, isixhobo se-USB (okanye esinye isixhobo sokugcina) sinokususwa.
umthombo: opennet.ru