Ƙirƙirar hotunan bootstrap v1.0


Ƙirƙirar hotunan bootstrap v1.0

Ina so in gabatar wa hankalinku tsarin da ake kira boobstrap, wanda aka rubuta a cikin harsashi POSIX, don ƙirƙirar hotunan taya tare da rarraba GNU/Linux. Tsarin yana ba ku damar aiwatar da duka tsari cikin sauƙi guda uku: daga tura tsarin a cikin chroot, ƙirƙirar hoton intramfs wanda ya haɗa da tsarin chrooted, kuma a ƙarshe hoton ISO mai bootable. Boobstrap ya ƙunshi abubuwa uku mkbootstrap, mkinitramfs da mkbootisofs bi da bi.

mkbootstrap yana shigar da tsarin a cikin wani babban kundin adireshi, akwai goyon baya na asali don CRUX, kuma a cikin yanayin Arch Linux / Manjaro da rarraba tushen Debian, pacstrap na kayan aiki na ɓangare na uku, basestrap da debootstrap dole ne a yi amfani da su bi da bi.

mkinitramfs yana haifar da hoton initramfs, zaku iya amfani da tsarin da aka shigar a cikin kundin adireshi azaman "overlay", matsawa ta amfani da SquashFS, ko bayan kunnawa cikin tsarin, kuyi aiki kai tsaye a cikin tmpfs. Don haka misali, umarnin mkinitramfs `mktemp -d` --overlay "arch-chroot/" --overlay "/home" --squashfs-xz --output initrd zai haifar da fayil initrd, gami da overlays biyu tare da "arch- chroot/" tsarin da "/gida", matsa ta amfani da SquashFS, wanda za ka iya yin taya ta PXE cikin tmpfs, ko ƙirƙirar bootable image ISO tare da wannan initrd.

mkbootisofs yana ƙirƙirar hoton ISO na BIOS/UEFI daga ƙayyadaddun shugabanci. Kawai saka /boot/vmlinuz da /boot/initrd a cikin directory.

boobstrap baya amfani da busybox, kuma don ƙirƙirar yanayin initramfs mai aiki, ana kwafin ƙaramin tsarin shirye-shirye ta amfani da ldd, dole don taya da canzawa zuwa tsarin. Jerin shirye-shiryen don kwafi, kamar kowane abu, ana iya daidaita su ta hanyar fayil ɗin sanyi /etc/boobstrap/boobstrap.conf. Hakanan, zaku iya shigar da kowane ɗan rabe-raben rabe-raben cikin keɓantaccen chroot/, wanda daga ciki zaku iya ƙirƙirar yanayin initramfs cikakke. Kamar yadda irin wannan ƙaramin abu, amma a lokaci guda cikakken yanayi, an ba da shawarar yin amfani da samfurin "crux_gnulinux-embedded", wanda bayan xz ya ɗauki sulhu na 37 MB. busybox, ban da girmansa, 3-5 MB da 30-50 MB na cikakken yanayin GNU/Linux, baya bayar da wani fa'ida, don haka amfani da akwatin busy a cikin aikin bai dace ba.

Yadda za a duba ayyuka da sauri kuma farawa? Shigar da gudu.

# git clone https://github.com/sp00f1ng/boobstrap.git
# cd bubstrap
# yi install# boobstrap/tests/crux_gnulinux-download-and-build
# qemu-system-x86_64 -enable-kvm -m 1G -cdrom tmp.*/install.iso

Hakanan kuna buƙatar shigar da abubuwan dogaro, wato: cpio, grub, grub-efi, dosfstools, xorriso. Yin amfani da kayan aikin squashfs ba lallai ba ne; kuna iya aiki a cikin tmpfs tare da adadin RAM da ya dace. Idan wani abu ya ɓace a cikin tsarin, boobstrap zai ba da rahoton wannan yayin farawa.

Don sauƙaƙe ƙirƙirar saiti, boobstrap yana ba da shawarar yin amfani da “samfurin” da “tsari”, ainihin su shine amfani da “samfurin” (bootstrap-samfurin /) don shigar da tsarin da sauri daga fayil, kuma kai tsaye “tsari” (bootstrap- Systems/) da aka yi amfani da su don saita saiti na ƙarshe.

Don haka alal misali, gudanar da rubutun boobstrap/bootstrap-templates/crux_gnulinux-embedded.bbuild zai shigar da mafi ƙarancin tsarin tsarin CRUX GNU/Linux kuma ya adana shi a cikin fayil ɗin crux_gnulinux-embedded.rootfs, sannan kuna gudu bootstrap/bootstrap-systems. /default/crux_gnulinux.bbuild wanda zai ɗora saitunan farko daga fayil ɗin da aka ambata, yi duk saitunan da suka dace kuma shirya ISO mai bootable. Wannan ya dace lokacin da, alal misali, tsarin da yawa suna amfani da nau'in tsari iri ɗaya: don kada a kwatanta saitin fakiti ɗaya kowane lokaci, kuna amfani da samfuri ɗaya, dangane da abin da kuka ƙirƙiri hotunan taya na tsarin tare da tsari na ƙarshe.

A ina zan iya amfani da duk wannan?

Kuna saita tsarin a cikin fayil sau ɗaya kuma ta hanyar sarrafa shi kuna ginawa da/ko sabunta shi. Tsarin yana gudana a cikin tmpfs, wanda ke sa shi da gaske abin zubarwa. Idan tsarin ya gaza, zaku iya komawa zuwa asalinsa tare da dannawa ɗaya na maɓallin Sake saitin. Kuna iya gudu rm-rf / a amince.

Kuna iya saita saitunan duk tsarin ku a gida, ƙirƙirar hotuna, gwada su a cikin injin kama-da-wane ko kayan aiki daban, sannan loda su zuwa uwar garken nesa kuma ku aiwatar da umarni biyu kawai kexec -l / vmlinuz —initrd=/initrd && kexec -e don sabunta tsarin gaba ɗaya, sake kunna shi cikin tmpfs.

Hakazalika, zaku iya canja wurin duk tsarin, misali akan VDS, don yin aiki a cikin tmpfs, da ɓoye diski / dev/vda kuma amfani dashi kawai don bayanai, ba tare da buƙatar kiyaye tsarin aiki akansa ba. Abinda kawai "batun zubar da bayanai" a cikin wannan yanayin shine kawai "jujiwar sanyi" na ƙwaƙwalwar ajiyar na'urar ku, kuma a cikin yanayin rashin daidaituwa na tsarin (misali, ta hanyar zato kalmar sirri ta ssh ko rashin lahani a ciki). Exim), zaku iya zazzage sabon ISO ta hanyar "kontrol Panel" na mai ba ku, don dawo da VDS cikin aiki, ba tare da mantawa da daidaita tsarin tsarin don rufe duk wani lahani ba. Wannan yana da sauri fiye da sake shigarwa, daidaitawa na gaba da/ko maidowa daga madadin, saboda a zahiri, zazzagewar ISO tare da tsarin ku shine madadin ku. "Matsaloli bakwai - sake saiti daya."

A ƙarshe, zaku iya ƙirƙirar kowane rarraba don buƙatunku, rubuta shi zuwa kebul na USB kuma kuyi aiki a ciki, sabunta shi yadda ake buƙata kuma sake rubuta shi zuwa kebul na USB. Ana adana duk bayanai a cikin gajimare. Ba kwa buƙatar ƙara damuwa game da amincin tsarin kuma ku yi wariyar ajiya lokacin da tsarin, na sake maimaitawa, da gaske ya zama “an zubarwa”.

Fatan ku, shawarwari da sharhi suna maraba.

A cikin ma'ajiya a hanyar haɗin da ke ƙasa akwai cikakken fayil na README (a cikin Turanci) tare da bayanin kowane mai amfani da misalan amfani, akwai kuma cikakkun bayanai a cikin Rashanci da tarihin ci gaba da ke samuwa a hanyar haɗin gwiwar: Rubutun rubutun Boobstrap.

source: linux.org.ru

Add a comment