taonga taonga - whaipainga mo te hanga whakaahua whawhai me nga puku

Ka whakaatuhia te kaupapa taonga, ka taea e koe te hanga whakaahua initrd bootable, nga konae ISO me nga puku kei roto tetahi tohatoha GNU/Linux me te whakahau kotahi. Ka tuhia te waehere ki te anga POSIX me te tohaina e raihana i raro i te GPLv3.

Ko nga tohatoha katoa i pekehia ma te whakamahi i te Booty ka rere SHMFS (tmpfs) ranei SquashFS + Overlay FS, ko te whiriwhiri a te kaiwhakamahi. Ko te tohatoha ka hangaia kotahi, a, i te wa o te tukanga whawhai, ka tohua nga tawhā e taea ai e koe te whakamahi i nga tmpfs parakore mo te pakiaka, te huinga ranei o te Overlay FS + SquashFS me te tuhi i nga huringa ki nga tmpfs. Ka taea te kape i mua i te kete tohatoha ka taea te tango ki te RAM, ka taea e koe te momotu i te puku USB i muri i te tango me te kape i te kete tohatoha ki te mahara.

Tuatahi, ka hangaia e Booty tana ake whakaahua initrd, ka taea te whakamahi i nga taputapu taketake mai i te punaha o naianei, pouaka pukumahi ranei. Ka taea te whakauru i te kete tohatoha katoa kua whakauruhia ki roto i te whaiaronga (chroot) ki initramfs. Ka whai hua tenei ina hiahia koe ki te whakapai ake i tetahi punaha ma te whakamahi i te kexec: utaina noa te initrd me tetahi kaara hou me tetahi punaha hou kei roto i te initrd.

Te hanga i tetahi whakaahua initrd motuhake- Booty:

mkdir initramfs/
mkinitramfs initramfs/ --output initrd

Te hanga pikitia initrd tae atu ki te tohatoha mai i te raarangi "gentoo/":

mkdir initramfs/
mkinitramfs initramfs/ --overlay gentoo/ --cpio --output initrd

Muri iho ka tino rite tenei whakaahua initrd mo te utaina, hei tauira, ma te PXE, ma te kexec ranei.

I muri mai, ka hangaia e Booty nga whakaahua me te punaha kua tohua hei "whakakikorua". Hei tauira, ka taea e koe te whakauru (tango i te puranga) he Gentoo herenga ki roto i te raarangi motuhake, muri iho ka hangaia he puranga cpio, he ahua SquashFS ranei me tenei punaha ma te whakamahi i a Booty. Ka taea hoki e koe te whirihora i te tohatoha ki tetahi raarangi motuhake, ka kape i o tautuhinga whaiaro ki tetahi atu raarangi. Ko enei "papa" katoa ka utaina ki runga ake o tetahi ki tetahi, ka hangaia he punaha mahi kotahi.

mkdir initramfs/
mkinitramfs initramfs/ --whakakikorua gentoo/ --tautuhinga whakakikorua/ --paparua tuhinga/ --squashfs --putanga initrd

I te mutunga, ka taea e Booty te hanga whakaahua ISO bootable me te USB, HDD, SSD me etahi atu puku ma te whakauru i te punaha o runga mai i nga whakaahua. taonga e tautoko ana i te hanga o nga punaha whawhai BIOS me UEFI. Kei te tautokohia nga bootloaders GRUB2 me SYSLINUX. Ka taea te whakakotahi i nga Bootloaders, hei tauira, whakamahia te SYSLINUX ki te peke ki te BIOS, me te GRUB2 mo UEFI. Hei waihanga whakaahua ISO, ka hiahia ano koe ki te kete cdrkit (genisoimage) xorriso (xorrisofs) ranei, hei whiriwhiri mai.

Ko te mahi taapiri anake e hiahiatia ana ko te whakarite i te pata (vmlinuz) mo te whawhai i mua. E taunaki ana te kaituhi (Spoofing) ki te whakamahi i te "make defconfig". I mua i te hanga i te ahua, me whakarite e koe he whaiaronga ma te whakatakoto i te vmlinuz kernel me te "mutu" initrd i mahia i mua i te tauira tuatahi.

mkdir iso/
cp /boot/vmlinuz-* iso/boot/vmlinuz
cp initrd iso/boot/initrd

Na tenei kua oti te whakarite, ka taea e taatau te hanga whakaahua ISO mai i tenei raarangi.

Ko te whakahau e whai ake nei ka hanga he ahua ISO, ehara i te mea ka taea, he ISO anake:

mkdir iso/
mkbootisofs iso/ --output archive.iso

Hei waihanga i te ahua boot, me tohu koe i te "--legacy-boot" te waahanga mo te BIOS me te "--efi" mo te UEFI; ko nga whiringa ka tango i te grub2, i te syslinux ranei hei taapiri; ka taea ano e koe te tohu kotahi noa te whiringa ( hei tauira, UEFI boot support is not needed , kare pea e tohua).

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

Ka rite ki o mua, ko nga whakaahua me te punaha i whakauruhia ki roto i te initrd, ka taea e koe te whakauru ki roto i te ISO.

mkbootisofs iso/ --whakakikorua i te gentoo/ --squashfs --whakaahua-boot grub2 --efi grub2 --putanga gentoo.iso

I muri i tenei whakahau, ka hangaia he ahua BIOS/UEFI ISO ka taea te utaina a Gentoo ki te ahua SquashFS ma te whakamahi i te Overlay FS, ma te whakamahi i nga tmpfs mo te rokiroki raraunga. Me hanga te kernel me te tautoko Overlay FS me SquashFS. Heoi, ki te kore e hiahiatia tenei, ka taea e koe te whakamahi i te "—cpio" hei utu mo —squashfs ki te kohi i te gentoo/ hei puranga cpio, penei ka wetewetehia te purongo ki roto i nga tmpfs i runga i te boot, te mea nui. Ko te mea mo te wetewete i te punaha tmpfs he nui te RAM.

He mea whakamiharo: mena he whakaahua ISO i hangaia ma te whakamahi i te whiringa "—efi" ka wetewete ki te puku kohiko FAT32 ma te kape noa i nga konae (cp -r), katahi ka tiimata te puku Flash ki te aratau UEFI kaore he whakaritenga tuatahi, he mihi ki nga korero motuhake. o UEFI- nga kai tango.

I tua atu i nga ISO ka taea, ka taea te hanga i tetahi puku bootable me nga tawhā rite: USB, HDD, SSD, me etahi atu, ka taea tonu te whakamahi i tenei puku mo tana kaupapa. Ki te mahi i tenei, me whakauru koe, hei tauira, he taputapu USB me te whakahaere i nga mkbootisofs ki runga. Taapiri noa tetahi kowhiringa "—bootable" kia taea ai te puku i runga i te whaiaronga kua tohua.

Maunga /dev/sdb1 /mnt
mkbootisofs /mnt --whakakikorua i te gentoo/ --squashfs --he tuku iho-boot grub2 --efi grub2 --bootable

Whai muri i tera, ka taea e te taputapu USB te putunga me te gentoo/ whakakikorua (kaua e wareware ki te kape i nga konae /boot/vmlinuz me /boot/initrd ki te taputapu).

Mena na etahi take kaore i whakauruhia te puku ki / mnt, ka puta ko / mnt kei runga i te taputapu matua / dev / sda, katahi ka tuhia ano te bootloader ki / dev / sda. Kia tupato koe i te wa e tohu ana i te whiringa --bootable.

I te wa o te tukanga whawhai, ka tautoko a Booty i te maha o nga whiringa ka taea te tuku ki te kaitautai whawhai, grub.cfg, syslinux.cfg ranei. Ma te taunoa, kaore he whiringa, ka utaina nga whakakikorua katoa ka wetewete ki roto i nga tmpfs (kowhiringa taunoa ooty.use-shmfs). Hei whakamahi i te Overlay FS me whakamahi te kōwhiringa booty.use-overlayfs. Ko te kōwhiringa booty.copy-to-ram ka kape tuatahi ka whakakikoruatia ki tmpfs, ka mutu ka hono noa ka utaina. Ina kapea, ka taea te tango i te taputapu USB (tetahi atu taputapu rokiroki ranei).

Source: opennet.ru

Tāpiri i te kōrero