Krijimi i imazheve të ngarkesave boobstrap v1.0


Krijimi i imazheve të ngarkesave boobstrap v1.0

Dua t'ju prezantoj një kornizë të quajtur boobstrap, e shkruar në POSIX shell, për krijimin e imazheve të ngarkesës me shpërndarje GNU/Linux. Korniza lejon që të kaloni të gjithë procesin në tre hapa të thjeshtë: nga vendosja e sistemit në chroot, krijimi i një imazhi initramfs që përfshin sistemin nga chroot, dhe në fund imazhi bootable ISO. boobstrap përfshin tre utilitete mkbootstrap, mkinitramfs dhe mkbootisofs përkatësisht.

mkbootstrap instalon sistemin në një direktori të veçantë, ka mbështetje natyrore për CRUX, dhe në rastin e Arch Linux/Manjaro dhe shpërndarjeve të bazuara në Debian duhet përdorur utilitetet e jashtme pacstrap, basestrap dhe debootstrap përkatësisht.

mkinitramfs krijon njĂ« imazh initramfs, mund tĂ« pĂ«rdorni sistemin e instaluar nĂ« direktori si "overlay", tĂ« kompresuar me SquashFS, ose duke u ngarkuar direkt nĂ« sistem pĂ«rmes tmpfs. PĂ«r shembull, komanda mkinitramfs `mktemp -d` —overlay "arch-chroot/" —overlay "\/home" —squashfs-xz —output initrd do tĂ« krijojĂ« njĂ« skedhĂ« initrd, duke pĂ«rfshirĂ« dy overdej tĂ« sistemit "arch-chroot/" dhe tuajin "/home", tĂ« kompresuar me SquashFS, e cila mĂ« pas mund ta ngarkoni pĂ«rmes PXE nĂ« tmpfs, ose tĂ« krijoni njĂ« imazh bootable ISO me kĂ«tĂ« initrd.

mkbootisofs krijon një imazh bootable ISO për BIOS/UEFI nga direktoria e specifikuar. Në direktori mjafton të vendosni \/boot\/vmlinuz dhe \/boot\/initrd.

boobstrap nuk përdor busybox, dhe për krijimin e mjedisit punues initramfs kopjohet një grup minimal programesh duke përdorur ldd, të nevojshme për ngarkimin dhe kalimin në sistem. Lista e programeve për t'u kopjuar, si dhe çdo gjë tjetër, mund të konfigurohet në skedarin e konfigurimit \/etc\/boobstrap\/boobstrap.conf. Gjithashtu, mund të instaloni ndonjë shpërndarje minimaliste në një chroot të veçantë, nga e cila më pas të krijoni një ambient të plotë initramfs. Si një ambient minimaliste, por gjithashtu të plotë, sugjerohet të përdoret modeli "crux_gnulinux-embedded", i cili pas xz zë 37mb kompakt. busybox, përveç madhësisë së saj, 3-5mb përballë 30-50mb të ambientit të plotë GNU/Linux, nuk ofron ndonjë përparësi tjetër, kështu që përdorimi i busybox në projekt nuk duket i arsyeshëm.

Si mund ta verifikoni shpejt funksionalitetin dhe të filloni punën? Instaloni dhe filloni.

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

Po ashtu, ju nevojitet të instaloni varësitë, konkretisht: cpio, grub, grub-efi, dosfstools, xorriso. Përdorimi i squashfs-tools nuk është i domosdoshëm, mund të punoni në tmpfs në përputhje me sasinë e mendjes operative. Në rast se diçka mungon në sistem, boobstrap do t'ju njoftojë gjatë nisjes.

Për ta thjeshtëzuar krijimin e konfiguracioneve, boobstrap ofron përdorimin e "shablloneve" dhe "sistemeve", ku e gjithë ideja është të përdorni "shabllonët" (bootstrap-templates/) për instalim të shpejtë të sistemit nga skedari, ndërsa "sistemet" (bootstrap-systems/) përdoren për konfigurime përfundimtare.

Për shembull, ekzekutimi i skenarit boobstrap/bootstrap-templates/crux_gnulinux-embedded.bbuild do të instalojë një konfigurim minimal të sistemit CRUX GNU/Linux dhe do ta ruajë atë në skedarin crux_gnulinux-embedded.rootfs. Më pas, do të ekzekutoni boobstrap/bootstrap-systems/default/crux_gnulinux.bbuild që do të ngarkojë konfigurimin fillestar nga skedari i përmendur, do të bëjë të gjitha konfigurimet e nevojshme dhe do të përgatisë një ISO të ngarkueshëm. Kjo është e dobishme, për shembull, kur shumë sisteme përdorin një konfigurim të ngjashëm: për të mos përshkruar çdo herë të njëjtin grup paketash, përdorni një shabllon nga i cili krijoni imazhe ngarkuese të sistemeve me konfigurimin përfundimtar.

Ku do ta përdorni gjithë këtë?

Ju konfiguroni sistemin një herë në skedar dhe me një ekzekutim e grumbulloni dhe/ose e azhurnoni atë. Sistemi punon në tmpfs, duke e bërë atë njëpërdorim. Në rast se sistemi dështon, me një shtypje të butonit Reset ktheheni në gjendjen fillestare. Mund të ekzekutoni qetësisht rm -rf /.

Mund të konfiguroni të gjitha sistemet tuaja në lokal, të krijoni imazhe, t'i testoni ato në një makinë virtuale ose në një "harduer" të veçantë, pastaj t'i ngarkoni ato në një server të largët dhe me ekzekutimin e vetëm dy komandave kexec -l /vmlinuz --initrd=/initrd && kexec -e bëni azhurnimin e gjithë sistemit duke e rindizur atë në tmpfs.

Me njĂ« mĂ«nyrĂ« tĂ« ngjashme, mund tĂ« konvertoni tĂ« gjitha sistemet, pĂ«r shembull nĂ« VDS, pĂ«r tĂ« punuar nĂ« tmpfs, dhe tĂ« enkriptoni diskun /dev/vda duke e pĂ«rdorur vetĂ«m pĂ«r tĂ« dhĂ«na, pa pasur nevojĂ« pĂ«r ta mbajtur sistemin operativ mbi tĂ«. Pika e vetme e "rrjedhjes sĂ« informacionit" nĂ« kĂ«tĂ« rast do tĂ« jetĂ« vetĂ«m "kopja e ftohtĂ«" e memories sĂ« makinerisĂ« tuaj virtuale, dhe nĂ« rastin e kompromitimit tĂ« sistemit (pĂ«r shembull, duke u pĂ«rpjekur pĂ«r fjalĂ«kalimin ssh ose njĂ« dobĂ«si nĂ« exim), mund tĂ« ngarkoni njĂ« ISO tĂ« ri pĂ«rmes "panelit tĂ« kontrollit" tĂ« ofruesit tuaj, pĂ«r tĂ« rikthyer VDS nĂ« punĂ«, pa harruar tĂ« rregulloni konfigurimin e sistemit duke mbyllur tĂ« gjitha dobĂ«sitĂ«. Kjo Ă«shtĂ« mĂ« e shpejtĂ« se rinstalimi, konfigurimi pasues dhe/ose rikuperimi nga njĂ« rezervĂ«, sepse nĂ« thelb, ISO qĂ« ngarkohet me sistemin tuaj Ă«shtĂ« rezervĂ« juaj. "ShtatĂ« tĂ« kĂ«qija – njĂ« Ristrukturim."

Së fundmi, mund të krijoni çdo distribucion për detyrat tuaja, ta shkruani atë në një USB dhe të punoni me të, duke e përditësuar sipas nevojës dhe duke e riparë në USB përsëri. Të gjitha të dhënat t'i ruani në "cloud". Nuk keni më nevojë të shqetësoheni për sigurinë e sistemit dhe të bëni rezervë për të, kur sistemi, përsëris, në thelb është bërë "i njëhershëm".

Dëshirat, propozimet dhe vërejtjet tuaja janë të mirëpritura.

Në repositorinë në linkun e mëposhtëm ka një README të detajuar (në anglisht) me përshkrimin e çdo utilitari dhe shembuj përdorimi, si dhe dokumentacion të detajuar në rusisht dhe historinë e zhvillimit, të disponueshme në linkun: Kompleksi i skripteve për ngarkim boobstrap.

Burimi: linux.org.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster