Að búa til bootstrap v1.2 myndir


Að búa til bootstrap v1.2 myndir

Eftir bara mánuður Eftir hæga þróun kom boobstrap v1.2 út - sett af verkfærum á POSIX skelinni til að búa til ræsimyndir og drif.

Boobstrap gerir þér kleift að gera aðeins eina skipun:

  • Búðu til initramfs mynd, þar á meðal hvaða GNU/Linux dreifingu sem er í henni.
  • Búðu til ræsanlegar ISO myndir með hvaða GNU/Linux dreifingu sem er.
  • Búðu til ræsanlegt USB, HDD, SSD drif með hvaða GNU/Linux dreifingu sem er.

Sérkennin er sú að eftir hleðslu mun GNU/Linux virka annað hvort algjörlega í hreinu tmpfs, eða nota Overlay FS og SquashFS myndir, að eigin vali. Þú setur upp hvaða GNU/Linux dreifingu sem er í möppu, gerir allar nauðsynlegar stillingar (hugsanlega í sérstakri möppu), eftir það býrðu til ræsitæki með aðeins einni skipun, hvort sem það er ISO mynd, USB, HDD, SSD drif, eða þú getur búið til initrd mynd með kerfi. Kerfið verður alltaf í sama ástandi og komi til bilunar er hægt að fara aftur í upprunalegt ástand með því að ýta á einn Reset hnapp. Viltu flytja kerfið til annars hýsils, eða búa til kerfi úr núverandi íláti? Boobstrap mun gera það.

Meðal helstu breytinga:

  • Bætti við stuðningi við syslinux ræsiforritið, til viðbótar við grub2 sem þegar er til. Þú getur nú valið að nota annað hvort grub2, syslinux eða bæði þegar þú býrð til ræsitæki eða ISO mynd með --legacy-boot syslinux og --efi grub2 valmöguleikunum í sömu röð og þú getur líka valið hvaða stillingar Niðurhalið mun styðja ISO mynd.
  • Bætt við --bootable valkost, sem gerir hvaða blokk tæki sem er ræsanlegt. Til að búa til ISO myndir verður að nota --iso-9660 valmöguleikann.
  • Bætt við kjarnaræsavalkostum boobs.use-shmfs til að afrita innihald allra yfirlagna í tmpfs, boobs.use-overlayfs til að ræsa með Overlay FS, boobs.search-rootfs til að velja uppruna með kerfinu, boobs.copy-to-ram til að afrita kerfið í minni og slökkva svo á tækinu.
  • Eina nauðsynlega ósjálfstæðin til að boobstrap virki er cpio. Restin af ósjálfstæðin eru valfrjáls: grub2, syslinux - nauðsynlegt til að búa til ræsanlegt miðil, cdrkit eða xorriso til að velja úr - til að búa til ISO, squashfs-tól til að búa til SquashFS, en ekkert kemur í veg fyrir að þú notir -cpio valkostinn í stað - squashfs til að pakka dreifingu þinni inn í skjalasafn. busybox verður aðeins notað ef það er uppsett, en ef ekki, verða öll nauðsynleg tól úr kerfinu þínu afrituð. Þannig er tryggt að boobstrap virki nánast alls staðar.

Til dæmis mun eftirfarandi skipun búa til initrd mynd sem inniheldur gentoo-chroot/ kerfi sem er pakkað sem SquashFS mynd, sem mun ræsast með góðum árangri eftir að initrd sjálft hefur hlaðið inn. Leyfðu mér að minna þig á að til að nota Overlay FS í tengslum við SquashFS þarftu að standast boobs.use-overlayfs kjarnavalkostinn, annars verður kerfinu pakkað upp í tmpfs. Allar viðbótarstillingar er hægt að gera í sérstakri möppu, til dæmis gentoo-settings/

# mkdir initramfs/
# mkinitramfs initramfs/ --overlay gentoo-chroot/ --overlay gentoo-settings/ --squashfs > initrd

Initrd mynd með kerfi inni er þægileg þegar þú þarft að dreifa kerfi fljótt, til dæmis með PXE, eða á hlaðinni kerfisskipti yfir í initrd með því að nota skipunina kexec -l /boot/vmlinuz-* —initrd=./initrd && kexec -e, ja eða, þar sem þú ert í QEMU sýndarvélaviðmótinu (hugsanlega jafnvel Proxmox), ræstu frá ytri uppsprettu með því að nota þrjár IPXE skipanir: kjarna http://[...]/vmlinuz, initrd http://[ ...]/initrd, stígvél. Eins og þú sérð hefur jafnvel venjulegur initrd með kerfið þitt inni margs konar notkun.

Til að búa til ræsanleg drif og myndir er mkbootisofs skipunin notuð, til dæmis lítur þetta út fyrir að búa til ISO mynd með -iso-9660 valkostinum að nota syslinux til að ræsa í Legacy-mode (BIOS) og grub2 til að ræsa í EFI- ham (UEFI).

# mkdir initrd/
# mkinitramfs initrd/ > initrd
# mkdir isoimage/
# mkdir isoimage/boot
# cp /boot/vmlinuz-* isoimage/boot/vmlinuz
# cp initrd isoimage/boot/initrd
# mkbootisofs isoimage/ —iso-9660 —legacy-boot syslinux —efi grub2 —output boot.iso
--overlay gentoo-chroot/ --overlay gentoo-settings/ --squashfs

Þú getur tilgreint einn af ræsistillingunum, eða alls ekki tilgreint þá, samsvarandi ISO mynd verður búin til.

Uppsetning á hvaða drifi sem er og síðar ræsing frá því er framkvæmd með því að nota --bootable valkostinn. Þú þarft að búa til skipting á drifinu sjálfur (fdisk) og forsníða þau (mkdosfs, mke2fs o.s.frv.), og tengja síðan tækið í möppu.

# tengja /dev/sdb1 /mnt/drive/
# mkbootisofs /mnt/drive/ --bootable --legacy-boot grub2 --efi grub2
--overlay gentoo-chroot/ --overlay gentoo-settings/ --squashfs

Varúð! --bootable valmöguleikinn ákvarðar úr hvaða blokkunartæki skrárinn er settur upp og setur upp ræsiforritið á þessu tæki. Ef þú gleymir að tengja tækið eða tilgreinir fyrir mistök möppu sem er staðsett, til dæmis á /dev/sda, verður ræsiforritinu á /dev/sda skrifað yfir í samræmi við það. Notaðu --bootable með varúð.

Uppsetning á hvaða GNU/Linux kerfi sem er er minnkað í eina skipun. Hægt er að setja upp á hvaða HDD sem er, SSD, og ​​svo framvegis. Það er þess virði að muna að þetta er enn kerfi sem keyrir frá Overlay FS / SquashFS, eða hleður algjörlega í tmpfs, að eigin vali.

Boobstrap hefur meðal annars fjölda áhugaverðra eiginleika og viðbótarmöguleika!

Til dæmis geturðu búið til sér boobstrap initrd með skipuninni mkinitramfs `mktemp -d` > /boot/initrd og ræst inn í kerfið þitt með þessu initrd, tilgreint kjarnavalkostina boobs.use-overlayfs boobs.search-rootfs=/dev /sda1. Í þessu tilviki verður /dev/sda1, þar sem heimiliskerfið þitt er uppsett, tengt sem skrifvarið Overlay FS lag og allar breytingar sem þú gerir verða aðeins skrifaðar tímabundið í tmpfs. Þú getur bætt við valkostinum boobs.copy-to-ram og þá verður allt kerfið þitt afritað í vinnsluminni og harða diskinn er hægt að aftengja frá tölvunni. Þægilegt þegar þú þarft að brjóta eitthvað og þú getur afturkallað breytingar einfaldlega með því að endurræsa. 🙂

En hvað ef þú þarft samt að vista allar breytingar á kerfinu? Til dæmis, þú settir upp hugbúnað eða eitthvað annað. Þegar unnið er í hreinu tmpfs er þetta því miður ómögulegt, en ef þú ræstir með Overlay FS, þá eru allar breytingar sem verða á kerfinu vistaðar í sérstakri tmpfs möppu: /mnt/overlayfs/rootfs-changes! Notkunarsviðið er mjög einfalt. Þú ræstir þig inn í kerfið þitt úr USB tæki, gerðir smá vinnu og vildir vista allt sem var breytt, búa síðan til cpio skjalasafn og setja það hér, á sama USB tæki.

# cd /mnt/overlayfs/rootfs-changes
#finna. -prent0 | cpio --búa til --snið "newc" --null --quiet > /mnt/drive/rootfs-changes.cpio
# geisladiskur $OLDPWD

Þú getur sett skjalasafnið við hliðina á öðrum SquashFS og cpio „lögum“, og við síðari hleðslu verður skjalasafnið tengt sem annað skrifvarið lag. Til að halda áfram að vinna með breytingar, notaðu upphleðsluvalkostinn boobs.rootfs-changes=/rootfs-changes.cpio. Boobs.rootfs-changes valkosturinn gerir tilgreint lag með breytingaaðgangi kleift. Lagið getur verið blokkartæki, til dæmis er hægt að tilgreina /dev/sdb1, þá verða allar breytingar sem gerðar eru í Overlay FS einfaldlega vistaðar í /dev/sdb1.

Boobstrap, þrátt fyrir þá víðtæku möguleika sem eru í boði, er enn á þróunarstigi, tekið er tillit til allra athugasemda og ábendinga!

Heimild: linux.org.ru

Bæta við athugasemd