Kuu aega hiljem mugava arenduse jĂ€rel ilmus Boobstrap v1.2 - tööriistakomplekt POSIX shell'i jaoks kĂ€ivituskuvade ja -mĂ€lude loomiseks. Boobstrap vĂ”imaldab seda kĂ”ike ĂŒhe kĂ€suga:
Luua initramfs pilt, sisse hÔlmates mistahes GNU/Linuxi distributsiooni.
- Luua kÀivitus ISO-pilte mistahes GNU/Linuxi distributsiooniga.
- Luua kÀivitus USB, HDD, SSD mÀluseadmeid mistahes GNU/Linuxi distributsiooniga.
- EripĂ€ra seisneb selles, et pĂ€rast GNU/Linuxi kĂ€ivitamist töötab see kas tĂ€ielikult puhtas tmpfsis vĂ”i koos Overlay FS ja SquashFS piltidega, vastavalt teie valikule. Paigaldage mistahes GNU/Linuxi distributsioon katalooge, tehke kĂ”ik vajalikud seadistused (soovi korral eraldi kataloogis) ning seejĂ€rel looge ĂŒhe kĂ€suga kĂ€ivitusseade, olgu selleks ISO-pilt, USB, HDD vĂ”i SSD mĂ€luseade, vĂ”i vĂ”ite luua ka initrd pildi sĂŒsteemiga. SĂŒsteem jÀÀb alati ĂŒhte seisundisse ja tĂ”rke korral saate ĂŒhe Reset-nupuvajutusega algseisundisse tagasi pöörduda. Kas soovite sĂŒsteemi teisele hostile ĂŒle kanda vĂ”i olemasolevast konteinerist sĂŒsteemi luua? Boobstrap teeb seda.
Peamised muudatused:
Lisatud on syslinux'i laadija tugi, peale juba olemasoleva grub2. NĂŒĂŒd saate valida, kas kasutada grub2, syslinux'i vĂ”i mĂ”lemat koos, kui loote kĂ€ivitusseadet vĂ”i ISO pilti, millest vastutavad valikud âlegacy-boot syslinux ja âefi grub2 vastavalt, samuti saab valida, milliseid laadimisreĆŸiime ISO pilt toetab.
- Lisatud on valik âbootable, mis muudab mistahes plokkseadmest kĂ€ivitusseadme. ISO-piltide loomiseks peab olema kasutatud valikut âiso-9660.
- Lisa valikad laadimise tuuma boob.use-shmfs kĂ”ikide overlayde sisu tmpfs-i kopeerimiseks, boobs.use-overlayfs laadimise jaoks koos Overlay FS-iga, boobs.search-rootfs sĂŒsteemi allika valimiseks, boobs.copy-to-ram sĂŒsteemi mĂ€llu kopeerimiseks ja seadme sulgemiseks.
- Boobstrap koos uusi vĂ”imalusi sĂŒsteemiga töötamiseks.
- Ainus kohustuslik sĂ”ltuvus boobstrap'i töötamiseks on cpio. ĂlejÀÀnud sĂ”ltuvused on valikulised: grub2, syslinux on vajalikud kĂ€ivitusmeedia loomisel, cdrkit vĂ”i xorriso valikule - ISO loomiseks, squashfs-tools SquashFS-i loomiseks, kuid miski ei takista kasutamast valikut âcpio asemel âsquashfs teie distributsiooni arhiveerimiseks. busybox'i kasutatakse ainult siis, kui see on installitud, kuid kui seda ei ole, kopeeritakse kĂ”ik vajalikud utiliidid teie sĂŒsteemist. Seega on boobstrap'i töö tagatud peaaegu igal pool.
NĂ€iteks jĂ€rgmine kĂ€sk loob initrd pildi, lisades sellesse gentoo-chroot sĂŒsteemi, mis on pakitud SquashFS pildina ning mis kĂ€ivitatakse pĂ€rast initrd'i laadimist. Tuletan meelde, et Overlay FS kasutamine koos SquashFS-iga nĂ”uab tuumale valiku boobs.use-overlayfs edastamist, vastasel juhul laetakse sĂŒsteem tmpfs-i. KĂ”ik tĂ€iendavad seadistused saab teha eraldi kataloogis, nĂ€iteks gentoo-settings/
# mkdir initramfs/
# mkinitramfs initramfs/ âoverlay gentoo-chroot/ âoverlay gentoo-settings/ âsquashfs > initrd
Initrd-pilt sĂŒsteemiga on mugav, kui on vaja kiiresti sĂŒsteemi kĂ€ivitada, nĂ€iteks PXE kaudu, vĂ”i laadida juba kĂ€ivitatud sĂŒsteemis initrd'i, kasutades kĂ€sku kexec -l /boot/vmlinuz-* âinitrd=./initrd && kexec -e, vĂ”i olla QEMU virtuaalmasina liideses (vĂ”imalik, et isegi Proxmoxis), laadida kaugallikast, kasutades kolme IPXE kĂ€sku: kernel http://[âŠ] /vmlinuz, initrd http://[âŠ] /initrd, boot. Nagu nĂ€ha, on isegi tavaline initrd, mille sisu on teie sĂŒsteem, paljusid kasutusvĂ”imalusi.
KĂ€ivituskandjate ja piltide loomiseks kasutatakse kĂ€sku mkbootisofs, nĂ€iteks nii nĂ€eb vĂ€lja ISO pildi loomine valikuga âiso-9660, kasutades syslinuxi Legacy-reĆŸiimis (BIOS) ja grub2 EFI-reĆŸiimis (UEFI) kĂ€ivitamiseks.
# 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
Saate mÀÀrata ĂŒhe laadimisreĆŸiimi vĂ”i mitte mÀÀrata neid ĂŒldse, vastav ISO pilt luuakse edukalt.
Iga mĂ€luseadmest installimine ja sellelt kĂ€ivitamine toimub valiku âbootable kaudu. Te peate ise looma seadmed (fdisk) ja vormindama need (mkdosfs, mke2fs jne), seejĂ€rel mountige seade katalooge.
# mount /dev/sdb1 /mnt/drive/
# mkbootisofs /mnt/drive/ âbootable âlegacy-boot grub2 âefi grub2
âoverlay gentoo-chroot/ âoverlay gentoo-settings/ âsquashfs
Olge ettevaatlik! Valik âbootable mÀÀrab, millisest plokiseadmest on juurkaust montitud ja paigaldab buuteri sellesse seadmesse. Kui unustate seadme mountida vĂ”i nĂ€itate valesti kausta, mis asub nĂ€iteks /dev/sda, kirjutatakse vastavalt buuter /dev/sda ĂŒle. Kasutage âbootable ettevaatlikult.
Iga GNU/Linux sĂŒsteemi paigaldamine koosneb tegelikult ĂŒhest kĂ€sust. Paigaldamine vĂ”ib toimuda mistahes HDD, SSD jne. Oluline on meeles pidada, et see on endiselt sĂŒsteem, mis töötab Overlay FS / SquashFS, vĂ”i tĂ€ielikult laaditud tmpfs-i, vastavalt teie valikule.
Lisaks on boobstrapil mitmeid huvitavaid omadusi ja tÀiendavaid vÔimalusi!
NĂ€iteks saate luua oma kaubamĂ€rgi boobstrap initrd kĂ€su mkinitramfs `mktemp -d` > /boot/initrd ja bootida oma sĂŒsteemi selle initrd-ga, mÀÀrates kernel'i valikuteks boobs.use-overlayfs boobs.search-rootfs=/dev/sda1. Sellisel juhul on /dev/sda1, kuhu teie kodusĂŒsteem on installitud, ĂŒhendatud lugemiseks ainult Overlay FS kiht, ja kĂ”ik muudatused, mida teete, salvestatakse ainult ajutiselt tmpfs-i. Saate lisada valiku boobs.copy-to-ram ja siis kopeeritakse kogu teie sĂŒsteem RAM-i, vĂ”imaldades kĂ”vaketta arvutist lahti ĂŒhendada. See on mugav, kui peate midagi purustama, ning muudatuste tagasiviimiseks piisab lihtsalt taaskĂ€ivitamisest. đ
Aga mis juhul, kui peate siiski kĂ”ik muudatused sĂŒsteemis salvestama? NĂ€iteks, kui olete paigaldanud tarkvara vĂ”i midagi muud. Puhtas tmpfs-is on see kahjuks vĂ”imatu, kuid kui olete bootinud kasutades Overlay FS-i, siis kĂ”ik sĂŒsteemis toimuvad muudatused salvestatakse eraldi tmpfs-kausta: /mnt/overlayfs/rootfs-changes! Kasutusskeem on vĂ€ga lihtne. Olete bootinud oma sĂŒsteemi USB-seadmest, töötanud ja soovinud salvestada kĂ”ik muutused, siis looge cpio-arhiiv ja asetage see samuti sellele samale USB-seadmest.
# cd /mnt/overlayfs/rootfs-changes
# find . -print0 | cpio âcreate âformat "newc" ânull âquiet > /mnt/drive/rootfs-changes.cpio
# cd $OLDPWD
Saate arhiivi paigutada kĂ”rval teiste SquashFS ja cpio âkihtideâ kĂ”rvale, siis jĂ€rgmisel kĂ€ivitamisel ĂŒhendatakse arhiiv lihtsalt veel ĂŒhe read-only kihina. Muudatustega töötamiseks kasutage laadimisvalikut boobs.rootfs-changes=\/rootfs-changes.cpio. Valik boobs.rootfs-changes ĂŒhendab mÀÀratud kihi muudatuste tegemise Ă”igusega. Kihiks vĂ”ib olla blokiseade, nĂ€iteks vĂ”ite tĂ€histada \/dev\/sdb1, siis salvestatakse kĂ”ik Overlay FS-is tehtud muudatused lihtsalt \/dev\/sdb1-le.
Boobstrap, vaatamata oma ulatuslikele vÔimalustele, on endiselt arendamisstaadiumis, teie mÀrkused ja ettepanekud on teretulnud!
Allikas: linux.org.ru

