booty - tól til að búa til ræsimyndir og drif

Dagskrá kynnt Booty, sem gerir þér kleift að búa til ræsanlegar initrd myndir, ISO skrár eða drif sem innihalda hvaða GNU/Linux dreifingu sem er með einni skipun. Kóðinn er skrifaður í POSIX skel og dreift af leyfi samkvæmt GPLv3.

Allar dreifingar sem ræstar eru með Booty keyra annað hvort SHMFS (tmpfs) eða SquashFS + Overlay FS, val notandans. Dreifingin er búin til einu sinni og meðan á ræsingu stendur eru færibreytur valdar sem gera þér kleift að nota hreina tmpfs fyrir rótina, eða blöndu af Overlay FS + SquashFS með upptökubreytingum á tmpfs. Það er hægt að forafrita niðurhalanlega dreifibúnaðinn í vinnsluminni, sem gerir þér kleift að aftengja USB-drifið eftir að hafa hlaðið niður og afritað dreifisettið í minni.

Fyrst af öllu býr Booty til sína eigin frummynd, sem getur notað innfædd tól frá núverandi kerfi eða busybox. Það er hægt að setja (pakka) öllu dreifingarsettinu sem er uppsett í möppunni (chroot) inn í initramfs. Þetta getur verið gagnlegt þegar þú þarft að uppfæra kerfi með kexec: einfaldlega endurhlaða initrd með nýjum kjarna og nýju kerfi inni í initrd.

Búa til Booty-sértæka initrd mynd:

mkdir initramfs/
mkinitramfs initramfs/ --output initrd

Að búa til initrd mynd þar á meðal dreifingu úr „gentoo/“ skránni:

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

Eftir það er þessi initrd mynd alveg tilbúin til hleðslu, til dæmis í gegnum PXE eða í gegnum kexec.

Næst býr Booty til myndir með kerfinu sem tilgreint er sem „yfirlag“. Til dæmis er hægt að setja upp (pakka upp skjalasafninu) skilyrt Gentoo í sérstakri möppu, eftir það verður cpio skjalasafn eða SquashFS mynd með þessu kerfi búið til með því að nota Booty. Þú getur líka stillt dreifinguna í sérstakri möppu og afritað persónulegar stillingar þínar í aðra möppu. Öll þessi „lög“ verða hlaðin í röð ofan á hvert annað og búa til eitt vinnukerfi.

mkdir initramfs/
mkinitramfs initramfs/ --overlay gentoo/ --overlay settings/ --overlay documents/ --squashfs --output initrd

Að lokum gerir Booty þér kleift að búa til ræsanlegar ISO myndir og USB, HDD, SSD og önnur drif með því að setja upp ofangreint kerfi úr myndum. Booty styður stofnun BIOS og UEFI ræsikerfi. GRUB2 og SYSLINUX ræsiforritarar eru studdir. Hægt er að sameina ræsiforritara, til dæmis, notaðu SYSLINUX til að ræsa inn í BIOS og GRUB2 fyrir UEFI. Til að búa til ISO myndir þarftu að auki cdrkit (genisoimage) eða xorriso (xorrisofs) pakkann til að velja úr.

Eina viðbótaraðgerðin sem þarf er að undirbúa kjarnann (vmlinuz) fyrir ræsingu fyrirfram. Höfundur (spoofing) mælir með því að nota "make defconfig". Áður en þú býrð til myndina þarftu að undirbúa möppu með því að setja vmlinuz kjarnann og áður tilbúna „tóma“ initrd sem búið var til í fyrsta dæminu.

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

Með þessu er undirbúningi lokið, við getum nú búið til ISO myndir úr þessari möppu.

Eftirfarandi skipun mun búa til ISO mynd, ekki ræsanlega, bara ISO:

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

Til að búa til ræsimynd þarftu að tilgreina „--legacy-boot“ valkostinn fyrir BIOS og „--efi“ fyrir UEFI, í sömu röð; valkostirnir taka annað hvort grub2 eða syslinux sem færibreytur; þú getur líka tilgreint aðeins einn valkost ( til dæmis, UEFI ræsistuðningur er ekki nauðsynlegur, hann er kannski ekki tilgreindur).

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

Og alveg eins og áður voru myndir með kerfinu innifaldar í initrd, þú getur sett þær inn í ISO.

mkbootisofs iso/ --overlay gentoo/ --squashfs --legacy-boot grub2 --efi grub2 --output gentoo.iso

Eftir þessa skipun verður ræsanleg BIOS/UEFI ISO mynd sem hleður Gentoo inn í SquashFS myndina með Overlay FS, með tmpfs fyrir gagnageymslu. Kjarninn verður að vera byggður með Overlay FS stuðningi með SquashFS. Hins vegar, ef þetta er ekki krafist af einhverjum ástæðum, geturðu notað „—cpio“ valkostinn í stað —squashfs til að pakka gentoo/ sem cpio skjalasafni, en þá verður skjalasafninu pakkað beint upp í tmpfs við ræsingu, aðalatriðið er að til að taka upp kerfið hafði tmpfs nóg vinnsluminni.

Áhugaverð staðreynd: ef ISO mynd sem búin er til með „—efi“ valmöguleikanum er pakkað niður á FAT32 glampi drif með því einfaldlega að afrita skrár (cp -r), þá mun Flash drifið ræsast í UEFI ham án nokkurs undirbúnings, þökk sé sérstöðunni af UEFI- niðurhalsmönnum.

Auk ræsanlegra ISO-kerfa er hægt að búa til hvaða ræsanlegu drif sem er með sömu breytum: USB, HDD, SSD, og ​​svo framvegis, og þetta drif er hægt að nota áfram í þeim tilgangi sem það er ætlað. Til að gera þetta þarftu að tengja til dæmis USB tæki og keyra mkbootisofs á það. Bættu bara við einum valmöguleika „—ræsanlegt“ svo að drifið sem tilgreind mappa er á verði ræsanlegt.

tengja /dev/sdb1 /mnt
mkbootisofs /mnt --overlay gentoo/ --squashfs --legacy-boot grub2 --efi grub2 --ræsanlegt

Eftir það verður USB tækið ræsanlegt með gentoo/ yfirlaginu (ekki gleyma að afrita /boot/vmlinuz og /boot/initrd skrárnar í tækið).

Ef af einhverjum ástæðum var drifið ekki fest í /mnt, og það kemur í ljós að /mnt er staðsett á aðaltækinu /dev/sda, þá verður ræsiforritið endurskrifað í /dev/sda. Þú ættir að vera varkár þegar þú tilgreinir --bootable valmöguleikann.

Meðan á ræsiferlinu stendur styður Booty fjölda valkosta sem hægt er að senda til ræsiforritsins, grub.cfg eða syslinux.cfg. Sjálfgefið, án nokkurra valkosta, eru allar yfirlögn hlaðnar og þeim pakkað niður í tmpfs (sjálfgefinn valkostur ooty.use-shmfs). Til að nota Overlay FS verður að nota booty.use-overlayfs valkostinn. Booty.copy-to-ram valkosturinn afritar fyrst yfirlög í tmpfs, eftir það tengir hann þær aðeins og hleður þeim. Þegar það hefur verið afritað er hægt að fjarlægja USB-tækið (eða annað geymslutæki).

Heimild: opennet.ru

Bæta við athugasemd