Programo prezentita
Ĉiuj distribuoj ekfunkciigitaj per Booty funkcias aŭ SHMFS (tmpfs) aŭ SquashFS + Overlay FS, la elekto de la uzanto. La distribuo estas kreita unufoje, kaj dum la ekfunkciigo, parametroj estas elektitaj, kiuj ebligas al vi uzi purajn tmpfs por la radiko, aŭ kombinaĵon de Overlay FS + SquashFS kun registraj ŝanĝoj al tmpfs. Eblas antaŭkopii la elŝuteblan distribuilon en RAM, kio ebligas al vi malkonekti la USB-diskon post elŝuto kaj kopiado de la distribua ilaro en memoron.
Antaŭ ĉio, Booty generas sian propran initrd-bildon, kiu povas uzi indiĝenajn ilojn de la nuna sistemo aŭ busybox. Eblas inkluzivi (paki) la tutan distribuaron instalitan en la dosierujo (chroot) en initramfs. Ĉi tio povas esti utila kiam vi bezonas ĝisdatigi sistemon uzante kexec: simple reŝargi la initrd kun nova kerno kaj nova sistemo ene de la initrd.
Kreante Booty-specifan initrd-bildon:
mkdir initramfs/
mkinitramfs initramfs/ --output initrd
Kreante initrd-bildon inkluzive de la distribuo el la dosierujo "gentoo/":
mkdir initramfs/
mkinitramfs initramfs/ --overlay gentoo/ --cpio --output initrd
Post tio ĉi tiu initrd-bildo estas tute preta por ŝarĝo, ekzemple, per PXE aŭ per kexec.
Poste, Booty generas bildojn kun la sistemo specifita kiel "kovraĵoj". Ekzemple, vi povas instali (malpaki la arkivon) kondiĉan Gentoo en aparta dosierujo, post kio cpio-arkivo aŭ bildo SquashFS kun ĉi tiu sistemo estos generita uzante Booty. Vi ankaŭ povas agordi la distribuon en aparta dosierujo, kaj kopii viajn personajn agordojn al alia dosierujo. Ĉiuj ĉi tiuj "tavoloj" estos sinsekve ŝarĝitaj unu sur la alia kaj kreos ununuran laborsistemon.
mkdir initramfs/
mkinitramfs initramfs/ --overlay gentoo/ --overlay settings/ --overlay documents/ --squashfs --output initrd
Finfine, Booty permesas krei starteblajn ISO-bildojn kaj USB, HDD, SSD kaj aliajn diskojn instalante la supran sistemon el bildoj.
La nura kroma ago bezonata estas prepari la kernon (vmlinuz) por lanĉo anticipe. La aŭtoro (Spoofing) rekomendas uzi "make defconfig". Antaŭ krei la bildon, vi devas prepari dosierujon metante la vmlinuz-kernon kaj la antaŭe preparitan "malplenan" initrd kreitan en la unua ekzemplo.
mkdir iso/
cp /boot/vmlinuz-* iso/boot/vmlinuz
cp initrd iso/boot/initrd
Kun ĉi tio la preparado estas kompleta, ni nun povas krei ISO-bildojn el ĉi tiu dosierujo.
La sekva komando kreos ISO-bildon, ne starteblan, nur ISO:
mkdir iso/
mkbootisofs iso/ --output archive.iso
Por krei ekbildon, vi devas specifi la opcion "--legacy-boot" por BIOS kaj "--efi" por UEFI, respektive; la opcioj prenas aŭ grub2 aŭ syslinux kiel parametrojn; vi ankaŭ povas specifi nur unu opcion ( ekzemple, UEFI-ŝargsubteno ne estas bezonata, ĝi eble ne estas specifita).
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
Kaj same kiel antaŭe, bildoj kun la sistemo estis inkluditaj en la initrd, vi povas inkluzivi ilin en la ISO.
mkbootisofs iso/ --overlay gentoo/ --squashfs --legacy-boot grub2 --efi grub2 --output gentoo.iso
Post ĉi tiu komando, startebla BIOS/UEFI ISO-bildo estos generita, kiu ŝargas Gentoo en la SquashFS-bildon uzante Overlay FS, uzante tmpfs por datumstokado. La kerno devas esti konstruita kun Overlay FS-subteno kun SquashFS. Tamen, se ial tio ne estas postulata, vi povas uzi la opcion “—cpio” anstataŭ —squashfs por paki gentoo/ kiel cpio-arkivon, en kiu kazo la arkivo estos malpakita rekte en tmpfs post ekŝargo, la ĉefa afero. estas ke por malpakigi la sistemon tmpfs havis sufiĉe da RAM.
Interesa fakto: se ISO-bildo kreita per la opcio "—efi" estas malpakita sur FAT32-memordisko per simple kopiado de dosieroj (cp -r), tiam la Flash-disko ekfunkciiĝos en UEFI-reĝimo sen ia antaŭpreparo, danke al la specifaĵoj. de UEFI- elŝutiloj.
Aldone al starteblaj ISO-oj, ajna startebla disko povas esti kreita kun la samaj parametroj: USB, HDD, SSD, kaj tiel plu, kaj ĉi tiu disko povas daŭre esti uzata por sia celita celo. Por fari tion, vi devas munti, ekzemple, USB-aparaton kaj ruli mkbootisofs sur ĝi. Nur aldonu unu opcion "—ŝargebla" por ke la disko sur kiu troviĝas la specifita dosierujo fariĝu startebla.
muntu /dev/sdb1 /mnt
mkbootisofs /mnt --overlay gentoo/ --squashfs --legacy-boot grub2 --efi grub2 --bootable
Post tio, la USB-aparato fariĝos startebla per la gentoo/overlay (ne forgesu kopii la dosierojn /boot/vmlinuz kaj /boot/initrd al la aparato).
Se ial la disko ne estis muntita en /mnt, kaj rezultas, ke /mnt troviĝas sur la ĉefa aparato /dev/sda, tiam la ekŝargilo estos reverkita al /dev/sda. Vi devus esti singarda kiam specifi la --bootable opcion.
Dum la ekfunkciigo, Booty subtenas kelkajn opciojn, kiuj povas esti transdonitaj al la ekŝargilo, grub.cfg aŭ syslinux.cfg. Defaŭlte, sen iuj opcioj, ĉiuj supermetaĵoj estas ŝarĝitaj kaj malpakitaj en tmpfs (defaŭlta opcio ooty.use-shmfs). Por uzi Overlay FS la opcio booty.use-overlayfs devas esti uzata. La opcio booty.copy-to-ram unue kopias kovraĵojn al tmpfs, post kio ĝi nur ligas ilin kaj ŝarĝas ilin. Post kiam kopiite, la USB-aparato (aŭ alia stoka aparato) povas esti forigita.
fonto: opennet.ru