VÄlÄk tikai mÄnesis PÄc lÄnas izstrÄdes tika izlaists boobstrap v1.2 ā rÄ«ku komplekts POSIX apvalkÄ sÄknÄÅ”anas attÄlu un disku izveidei.
Boobstrap ļauj izpildīt tikai vienu komandu:
- Izveidojiet initramfs attÄlu, iekļaujot tajÄ jebkuru GNU/Linux izplatÄ«Å”anu.
- Izveidojiet sÄknÄjamus ISO attÄlus ar jebkuru GNU/Linux izplatÄ«Å”anu.
- Izveidojiet sÄknÄjamus USB, HDD, SSD diskus ar jebkuru GNU/Linux izplatÄ«Å”anu.
ÄŖpatnÄ«ba ir tÄda, ka pÄc ielÄdes GNU/Linux darbosies vai nu pilnÄ«bÄ tÄ«rÄ tmpfs, vai arÄ« izmantojot Overlay FS un SquashFS attÄlus, pÄc jÅ«su izvÄles. JÅ«s instalÄjat jebkuru GNU/Linux izplatÄ«Å”anu direktorijÄ, veiciet visus nepiecieÅ”amos iestatÄ«jumus (iespÄjams atseviÅ”Ä·Ä direktorijÄ), pÄc tam izveidojiet sÄknÄÅ”anas ierÄ«ci tikai ar vienu komandu, vai tas bÅ«tu ISO attÄls, USB, HDD, SSD disks vai jÅ«s varat izveidot initrd attÄlu ar sistÄmu. SistÄma vienmÄr bÅ«s tajÄ paÅ”Ä stÄvoklÄ«, un bojÄjumu gadÄ«jumÄ jÅ«s varat atgriezties sÄkotnÄjÄ stÄvoklÄ«, nospiežot vienu pogu Reset. Vai vÄlaties pÄrsÅ«tÄ«t sistÄmu uz citu resursdatoru vai izveidot sistÄmu no esoÅ”a konteinera? Boobstrap to izdarÄ«s.
Starp galvenajÄm izmaiÅÄm:
- Papildus jau esoÅ”ajam grub2 ir pievienots atbalsts syslinux bootloader. Tagad varat izvÄlÄties izmantot vai nu grub2, syslinux vai abus, veidojot sÄknÄÅ”anas ierÄ«ci vai ISO attÄlu ar attiecÄ«gi opcijÄm --legacy-boot syslinux un --efi grub2, kÄ arÄ« varat izvÄlÄties, kurus režīmus LejupielÄde atbalstÄ«s ISO. attÄlu.
- Pievienota opcija --bootable, kas padara jebkuru bloka ierÄ«ci sÄknÄjamu. Lai izveidotu ISO attÄlus, ir jÄizmanto opcija --iso-9660.
- Pievienotas kodola sÄknÄÅ”anas opcijas boobs.use-shmfs, lai kopÄtu visu pÄrklÄjumu saturu uz tmpfs, boobs.use-overlayfs, lai sÄknÄtu, izmantojot Overlay FS, boobs.search-rootfs, lai atlasÄ«tu avotu ar sistÄmu, boobs.copy-to-ram lai kopÄtu sistÄmu atmiÅÄ un pÄc tam izslÄgtu ierÄ«ci.
- VienÄ«gÄ nepiecieÅ”amÄ atkarÄ«ba, lai boobstrap darbotos, ir cpio. PÄrÄjÄs atkarÄ«bas nav obligÄtas: grub2, syslinux - nepiecieÅ”ams, lai izveidotu sÄknÄjamu datu nesÄju, cdrkit vai xorriso, no kuriem izvÄlÄties - lai izveidotu ISO, squashfs-tools, lai izveidotu SquashFS, taÄu nekas neliedz izmantot -cpio opciju, nevis - squashfs, lai iesaiÅotu savu izplatÄ«Å”anu arhÄ«vÄ. Busybox tiks izmantots tikai tad, ja tas ir instalÄts, bet, ja nÄ, visas nepiecieÅ”amÄs utilÄ«tas no jÅ«su sistÄmas tiks kopÄtas. TÄdÄjÄdi tiek garantÄts, ka boobstrap darbosies gandrÄ«z visur.
PiemÄram, Ŕī komanda izveidos initrd attÄlu, kurÄ iekļauts gentoo-chroot/ system, kas iepakots kÄ SquashFS attÄls, kas tiks veiksmÄ«gi palaists pÄc paÅ”a initrd ielÄdes. AtgÄdinÄÅ”u, ka, lai izmantotu Overlay FS kopÄ ar SquashFS, ir jÄnokÄrto kodola opcija boobs.use-overlayfs, pretÄjÄ gadÄ«jumÄ sistÄma tiks izpakota tmpfs. Visus papildu iestatÄ«jumus var veikt atseviÅ”Ä·Ä direktorijÄ, piemÄram, gentoo-settings/
# mkdir initramfs/
# mkinitramfs initramfs/ --overlay gentoo-chroot/ --overlay gentoo-settings/ --squashfs > initrd
Initrd attÄls ar sistÄmu ir Ärts, ja nepiecieÅ”ams Ätri izvietot sistÄmu, piemÄram, izmantojot PXE, vai ielÄdÄtÄ sistÄmÄ pÄrslÄdzieties uz initrd, izmantojot komandu kexec -l /boot/vmlinuz-* āinitrd=./initrd && kexec -e, labi vai, atrodoties QEMU virtuÄlÄs maŔīnas saskarnÄ (iespÄjams, pat Proxmox), sÄknÄjiet no attÄlÄ avota, izmantojot trÄ«s IPXE komandas: kodols http://[...]/vmlinuz, initrd http://[ ...]/initrd, sÄknÄÅ”ana. KÄ redzat, pat parastam initrd ar jÅ«su sistÄmu ir daudz lietojumu.
Lai izveidotu sÄknÄjamus diskus un attÄlus, tiek izmantota komanda mkbootisofs, piemÄram, Å”Ädi izskatÄs ISO attÄla izveide ar opciju -iso-9660, izmantojot syslinux, lai sÄknÄtu mantoto režīmu (BIOS) un grub2, lai palaistu EFI-. režīms (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
Varat norÄdÄ«t vienu no sÄknÄÅ”anas režīmiem vai nenorÄdÄ«t tos vispÄr, tiks veiksmÄ«gi izveidots atbilstoÅ”ais ISO attÄls.
InstalÄÅ”ana jebkurÄ diskdzinÄ« un sekojoÅ”a sÄknÄÅ”ana no tÄ tiek veikta, izmantojot opciju --bootable. Jums paÅ”am ir jÄizveido diska nodalÄ«jumi (fdisk) un jÄformatÄ tie (mkdosfs, mke2fs utt.), PÄc tam ierÄ«ce jÄmontÄ direktorijÄ.
# mount /dev/sdb1 /mnt/drive/
# mkbootisofs /mnt/drive/ --bootable --legacy-boot grub2 --efi grub2
--overlay gentoo-chroot/ --overlay gentoo-settings/ --squashfs
UzmanÄ«bu! Opcija --bootable nosaka, no kuras blokierÄ«ces direktorijs ir uzstÄdÄ«ts, un instalÄ sÄknÄÅ”anas ielÄdÄtÄju Å”ajÄ ierÄ«cÄ. Ja aizmirstat pievienot ierÄ«ci vai kļūdaini norÄdÄt direktoriju, kas atrodas, piemÄram, /dev/sda, sÄknÄÅ”anas ielÄdÄtÄjs vietnÄ /dev/sda tiks attiecÄ«gi pÄrrakstÄ«ts. Izmantojiet --bootable piesardzÄ«gi.
Jebkuras GNU/Linux sistÄmas instalÄÅ”ana tiek samazinÄta lÄ«dz vienai komandai. InstalÄÅ”anu var veikt uz jebkura HDD, SSD utt. Ir vÄrts atgÄdinÄt, ka Ŕī joprojÄm ir sistÄma, kas darbojas no Overlay FS / SquashFS vai pilnÄ«bÄ tiek ielÄdÄta tmpfs, pÄc jÅ«su izvÄles.
Cita starpÄ, boobstrap ir vairÄkas interesantas funkcijas un papildu iespÄjas!
PiemÄram, varat izveidot patentÄtu boobstrap initrd ar komandu mkinitramfs `mktemp -d` > /boot/initrd un ielÄdÄt sistÄmu ar Å”o initrd, norÄdot kodola opcijas boobs.use-overlayfs boobs.search-rootfs=/dev /sda1. Å ajÄ gadÄ«jumÄ /dev/sda1, kurÄ ir instalÄta jÅ«su mÄjas sistÄma, tiks savienots kÄ tikai lasÄms pÄrklÄjuma FS slÄnis, un visas jÅ«su veiktÄs izmaiÅas tiks ierakstÄ«tas tikai Ä«slaicÄ«gi tmpfs. Varat pievienot opciju boobs.copy-to-ram, un tad visa sistÄma tiks kopÄta RAM, un cieto disku var atvienot no datora. Ärti, ja jums ir nepiecieÅ”ams kaut ko sabojÄt, un jÅ«s varat atsaukt izmaiÅas, vienkÄrÅ”i pÄrstartÄjot. š
Bet ko darÄ«t, ja jums joprojÄm ir jÄsaglabÄ visas izmaiÅas sistÄmÄ? PiemÄram, jÅ«s instalÄjÄt programmatÅ«ru vai kaut ko citu. StrÄdÄjot tÄ«rÄ tmpfs formÄtÄ, tas diemžÄl nav iespÄjams, bet, ja bootÄjÄt, izmantojot Overlay FS, tad visas izmaiÅas, kas notiek sistÄmÄ, tiek saglabÄtas atseviÅ”Ä·Ä tmpfs direktorijÄ: /mnt/overlayfs/rootfs-changes! LietoÅ”anas scenÄrijs ir ļoti vienkÄrÅ”s. JÅ«s sÄkÄt savu sistÄmu no USB ierÄ«ces, veicÄt kÄdu darbu un gribÄjÄt saglabÄt visu, kas tika mainÄ«ts, pÄc tam izveidojÄt cpio arhÄ«vu un ievietojÄt to Å”eit, tajÄ paÅ”Ä USB ierÄ«cÄ.
# cd /mnt/overlayfs/rootfs-changes
# atrast. -print0 | cpio --create --format "newc" --null --quiet > /mnt/drive/rootfs-changes.cpio
# cd $OLDPWD
ArhÄ«vu var novietot blakus citiem SquashFS un cpio āslÄÅiemā, tad pÄc sekojoÅ”as ielÄdes arhÄ«vs tiks savienots kÄ vÄl viens tikai lasÄms slÄnis. Lai turpinÄtu darbu ar izmaiÅÄm, izmantojiet augÅ”upielÄdes opciju boobs.rootfs-changes=/rootfs-changes.cpio. Opcija boobs.rootfs-changes iespÄjo norÄdÄ«to slÄni ar piekļuvi izmaiÅÄm. SlÄnis var bÅ«t blokierÄ«ce, piemÄram, jÅ«s varat norÄdÄ«t /dev/sdb1, tad visas Overlay FS veiktÄs izmaiÅas tiks vienkÄrÅ”i saglabÄtas /dev/sdb1.
Boobstrap, neskatoties uz plaÅ”ajÄm iespÄjÄm, joprojÄm ir izstrÄdes stadijÄ, visi jÅ«su komentÄri un ieteikumi tiek Åemti vÄrÄ!
Avots: linux.org.ru