Es vÄlos iepazÄ«stinÄt jÅ«su uzmanÄ«bu ar sistÄmu boobstrap, kas rakstÄ«ta POSIX apvalkÄ, lai izveidotu sÄknÄÅ”anas attÄlus ar GNU/Linux izplatÄ«Å”anu. Ietvars ļauj iziet cauri visam procesam, veicot tikai trÄ«s vienkÄrÅ”as darbÄ«bas: sÄkot no sistÄmas izvietoÅ”anas chroot sistÄmÄ, izveidojot initramfs attÄlu, kurÄ iekļauta chroot sistÄma, un beidzot ar sÄknÄjamu ISO attÄlu. boobstrap ietver trÄ«s utilÄ«tas attiecÄ«gi mkbootstrap, mkinitramfs un mkbootisofs.
mkbootstrap instalÄ sistÄmu atseviÅ”Ä·Ä direktorijÄ, ir vietÄjais CRUX atbalsts, un Arch Linux/Manjaro un Debian distribÅ«ciju gadÄ«jumÄ ir jÄizmanto attiecÄ«gi treÅ”Äs puses utilÄ«tas pacstrap, basestrap un debootstrap.
mkinitramfs izveido initramfs attÄlu, jÅ«s varat izmantot instalÄto sistÄmu direktorijÄ kÄ "pÄrklÄjumu", saspiestu, izmantojot SquashFS, vai pÄc sistÄmas sÄknÄÅ”anas strÄdÄt tieÅ”i tmpfs. PiemÄram, komanda mkinitramfs `mktemp -d` --overlay "arch-chroot/" --overlay "/home" --squashfs-xz --output initrd izveidos initrd failu, ieskaitot divus pÄrklÄjumus ar "arch- chroot/" sistÄmu un savu "/home", kas ir saspiests, izmantojot SquashFS, kuru pÄc tam varat palaist caur PXE uz tmpfs vai izveidot sÄknÄjamu ISO attÄlu, izmantojot Å”o initrd.
mkbootisofs izveido BIOS/UEFI sÄknÄjamu ISO attÄlu no norÄdÄ«tÄ direktorija. VienkÄrÅ”i ievietojiet direktorijÄ /boot/vmlinuz un /boot/initrd.
boobstrap neizmanto busybox, un, lai izveidotu darba initramfs vidi, ar ldd palÄ«dzÄ«bu tiek kopÄts minimÄls programmu kopums, kas nepiecieÅ”ams, lai palaistu un pÄrslÄgtos uz sistÄmu. KopÄjamo programmu sarakstu, tÄpat kÄ visu pÄrÄjo, var konfigurÄt, izmantojot konfigurÄcijas failu /etc/boobstrap/boobstrap.conf. TÄpat jÅ«s varat instalÄt jebkuru minimÄlistisku izplatÄ«Å”anu atseviÅ”Ä·Ä chroot/, no kuras pÄc tam varat izveidot pilnvÄrtÄ«gu initramfs vidi. KÄ tÄdu minimÄlistisku, bet tajÄ paÅ”Ä laikÄ pilnvÄrtÄ«gu vidi tiek piedÄvÄts izmantot ācrux_gnulinux-embeddedā veidni, kas pÄc xz aizÅem 37 MB kompromisu. busybox, papildus tÄ izmÄram, 3-5 MB pret 30-50 MB pilnvÄrtÄ«gÄ GNU/Linux vidÄ, vairs nepiedÄvÄ nekÄdas priekÅ”rocÄ«bas, tÄpÄc busybox izmantoÅ”ana projektÄ neŔķiet piemÄrota.
KÄ Ätri pÄrbaudÄ«t funkcionalitÄti un sÄkt? InstalÄjiet un palaidiet.
# git klons https://github.com/sp00f1ng/boobstrap.git
# cd boobstrap
# make install# boobstrap/tests/crux_gnulinux-download-and-build
Jums arÄ« jÄinstalÄ atkarÄ«bas, proti: cpio, grub, grub-efi, dosfstools, xorriso. Squashfs-tools izmantoÅ”ana nav nepiecieÅ”ama; jÅ«s varat strÄdÄt tmpfs ar atbilstoÅ”u RAM apjomu. Ja sistÄmÄ kaut kÄ trÅ«kst, boobstrap par to ziÅos startÄÅ”anas laikÄ.
Lai vienkÄrÅ”otu konfigurÄciju izveidi, boobstrap iesaka izmantot āveidnesā un āsistÄmasā, kuru bÅ«tÄ«ba ir izmantot āveidnesā (bootstrap-templates/), lai Ätri instalÄtu sistÄmas no faila, un tieÅ”i āsistÄmasā (bootstrap- sistÄmas/), ko izmanto galÄ«go konfigurÄciju iestatÄ«Å”anai.
PiemÄram, palaižot skriptu boobstrap/bootstrap-templates/crux_gnulinux-embedded.bbuild, tiks instalÄta minimÄlÄ CRUX GNU/Linux sistÄmas konfigurÄcija un saglabÄta tÄ failÄ crux_gnulinux-embedded.rootfs, pÄc tam palaidÄ«siet boobstrap/bootstrap-systems. /default/crux_gnulinux.bbuild kas ielÄdÄs primÄro konfigurÄciju no minÄtÄ faila, veiks visu nepiecieÅ”amo konfigurÄciju un sagatavos bootable ISO. Tas ir Ärti, ja, piemÄram, daudzas sistÄmas izmanto viena veida konfigurÄciju: lai katru reizi neaprakstÄ«tu vienu un to paÅ”u pakotÅu kopu, tiek izmantota viena veidne, uz kuras pamata tiek izveidoti sistÄmu sÄknÄÅ”anas attÄli ar galÄ«go konfigurÄciju.
Kur es varu to visu izmantot?
SistÄmu vienreiz konfigurÄjat failÄ un, to palaižot, veidojat un/vai atjauniniet to. SistÄma darbojas tmpfs formÄtÄ, kas padara to bÅ«tÄ«bÄ vienreiz lietojamu. Ja sistÄma neizdodas, varat atgriezties sÄkotnÄjÄ stÄvoklÄ«, noklikŔķinot uz pogas AtiestatÄ«t. Varat droÅ”i palaist rm -rf /.
Varat konfigurÄt visu savu sistÄmu konfigurÄcijas lokÄli, izveidot attÄlus, pÄrbaudÄ«t tos virtuÄlajÄ maŔīnÄ vai atseviÅ”Ä·Ä aparatÅ«rÄ, pÄc tam augÅ”upielÄdÄt tos attÄlajÄ serverÄ« un palaist tikai divas komandas kexec -l /vmlinuz āinitrd=/initrd && kexec -e lai atjauninÄtu visu sistÄmu, restartÄjot to tmpfs formÄtÄ.
TÄdÄ paÅ”Ä veidÄ jÅ«s varat pÄrsÅ«tÄ«t visas sistÄmas, piemÄram, uz VDS, lai strÄdÄtu tmpfs, un Å”ifrÄt /dev/vda disku un izmantot to tikai datiem, bez nepiecieÅ”amÄ«bas tajÄ saglabÄt operÄtÄjsistÄmu. VienÄ«gais āinformÄcijas noplÅ«des punktsā Å”ajÄ gadÄ«jumÄ bÅ«s tikai jÅ«su virtuÄlÄs maŔīnas atmiÅas āaukstÄ izgÄztuveā un sistÄmas kompromitÄÅ”anas gadÄ«jumÄ (piemÄram, uzminot ssh paroli vai ievainojamÄ«bu Exim), varat lejupielÄdÄt jaunu ISO, izmantojot sava pakalpojumu sniedzÄja āvadÄ«bas paneliā, lai VDS atkal darbotos, neaizmirstot rediÄ£Ät sistÄmas konfigurÄciju, lai aizvÄrtu visas ievainojamÄ«bas. Tas ir ÄtrÄk nekÄ atkÄrtota instalÄÅ”ana, turpmÄka konfigurÄÅ”ana un/vai atjaunoÅ”ana no dublÄjuma, jo bÅ«tÄ«bÄ lejupielÄdÄjamais ISO ar jÅ«su sistÄmu ir jÅ«su dublÄjums. "SeptiÅas nepatikÅ”anas - viena atiestatÄ«Å”ana."
Galu galÄ varat izveidot jebkuru izplatÄ«Å”anu savÄm vajadzÄ«bÄm, ierakstÄ«t to USB diskdzinÄ« un strÄdÄt tajÄ, pÄc vajadzÄ«bas to atjauninot un vÄlreiz pÄrrakstot USB diskdzinÄ«. Visi dati tiek glabÄti mÄkoÅos. Jums vairs nav jÄuztraucas par sistÄmas droŔību un jÄveido dublÄjums, kad sistÄma, es atkÄrtoju, bÅ«tÄ«bÄ ir kļuvusi āvienreiz lietojamaā.
JÅ«su vÄlmes, ieteikumi un komentÄri ir laipni gaidÄ«ti.
RepozitorijÄ ar zemÄk esoÅ”o saiti ir detalizÄts README fails (angļu valodÄ) ar katras utilÄ«tas aprakstu un lietoÅ”anas piemÄriem, ir arÄ« detalizÄta dokumentÄcija krievu valodÄ un izstrÄdes vÄsture, kas pieejama saitÄ: Boobstrap sÄknÄÅ”anas skriptu komplekss.
Avots: linux.org.ru