booty — utilitar për krijimin e imazheve dhe diskëve të ngarkesës

Programi është paraqitur Booty, i cili lejon që me një komandë të krijoni imazhe startuese initrd, skedarë ISO ose disqe, duke përfshirë çdo distribuim GNU/Linux. Kodi është shkruar në POSIX shell dhe distribuohet në përputhje me licencën GPLv3.

Të gjitha distribucionet e ngarkuara duke përdorur Booty punojnë ose në SHMFS (tmpfs) ose në SquashFS + Overlay FS, sipas zgjedhjes së përdoruesit. Distribucioni krijohet një herë, dhe gjatë ngarkesës zgjidhen parametrat që lejojnë përdorimin e tmpfs të pastër për rrënjën, ose kombinimin Overlay FS + SquashFS me regjistrimin e ndryshimeve në tmpfs. Ka mundësinë për të kopjuar paraprakisht distributivin e ngarkuar në RAM, çka mundëson që të çaktivizohet disku USB pas ngarkesës dhe kopjimit të distributivit në memorie.

Para së gjithash, Booty gjeneron një imazh initrd të vetin, në të cilin mund të përdoren utilitetet vendas nga sistemi aktual ose busybox. Ka mundësinë për të përfshirë (paketuar) tërësisht në initramfs distribuimin e instaluar në drejtorinë (chroot). Kjo mund të jetë e dobishme kur është e nevojshme të azhurnohet sistemi duke përdorur kexec: vetëm rinisni initrd me një të re kernel dhe një sistem të ri brenda initrd.

Krijimi i një imazhi initrd specifik për Booty:

mkdir initramfs/
mkinitramfs initramfs/ —output initrd

Krijimi i imazhit initrd duke përfshirë distribucionin nga direktoria «gentoo/»:

mkdir initramfs/
mkinitramfs initramfs/ —overlay gentoo/ —cpio —output initrd

Pas kësaj, ky imazh initrd është plotësisht i gatshëm për ngarkim, për shembull, nëpërmjet PXE ose kexec.

Më pas, Booty gjeneron imazhe me sistemin që është caktuar si «overlays». Për shembull, mund të instaloni (ndarni arkivin) një Gentoo të kushtuar në një direktor të veçantë, pas së cilës me përdorimin e Booty do të gjenerohet një arhivë cpio ose imazh SquashFS me këtë sistem. Gjithashtu, në një direktor të veçantë mund të përfitoni konfigurimin e distribucionit, ndërsa në një drejtor tjetër të kopjoni cilësimet personale. Të gjitha këto «shkallë» do të ngarkohen njëra mbi tjetrën dhe do të krijojnë një sistem funksional të vetëm.

mkdir initramfs/
mkinitramfs initramfs/ —overlay gentoo/ —overlay settings/ —overlay documents/ —squashfs —output initrd

Në fund, Booty lejon krijimin e imazheve ISO bootues dhe USB, HDD, SSD dhe pajisje të tjera duke instaluar sistemin e përshkruar më lart nga imazhet. Booty mbështet krijimin e sistemeve të ngarkesës BIOS dhe UEFI. Mbështeten ngarkuesit GRUB2 dhe SYSLINUX. Ngarkuesit mund të kombinohen, për shembull, për ngarkimin në BIOS përdoret SYSLINUX, ndërsa për UEFI — GRUB2. Për krijimin e imazheve ISO, do të kërkohet gjithashtu paketa cdrkit (genisoimage), ose xorriso (xorrisofs), sipas zgjedhjes.

Veprimi i vetëm shtesë që nevojitet është përgatitja në paradhëne e bërthamës (vmlinuz) për ngarkim. Autori (Spoofing) rekomandon përdorimin e „make defconfig“. Para krijimit të imazhit, duhet të përgatitet direktoriumi, duke vendosur brenda tij bërthamën vmlinuz dhe një „initrd“ të përgatitur më parë, të krijuar në shembullin e parë.

mkdir iso/
cp /boot/vmlinuz-* iso/boot/vmlinuz
cp initrd iso/boot/initrd

Tani përgatitja përfundoi, tani mund të krijojmë imazhe ISO nga ky direktorium.

Komanda e ardhshme do të krijojë një imazh ISO, jo ngarkues, thjesht ISO:

mkdir iso/
mkbootisofs iso/ —output archive.iso

Për krijimin e një imazhi ngarkues, është e nevojshme të specifikohet opsioni „—legacy-boot“ për BIOS dhe „—efi“ për UEFI përkatësisht, si parametra, opsionet pranojnë ose grub2, ose syslinux, si dhe mund të specifikohet vetëm një opsion (për shembull, nëse nuk është e nevojshme mbështetje për ngarkimin UEFI, ajo mund të mos specifikohet).

mkbootisofs iso/ —legacy-boot syslinux —output boot-biosonly.iso

mkbootisofs iso/ —legacy-boot syslinux —efi grub2 —output boot-bios-uefi.iso

mkbootisofs iso/ —efi grub2 —output boot-uefionly.iso

Po ashtu siç ishin përfshirë imazhet me sistem në initrd, ato mund të përfshihen në ISO.

mkbootisofs iso/ —overlay gentoo/ —squashfs —legacy-boot grub2 —efi grub2 —output gentoo.iso

Pas kësaj komande, do të formohet një ISO i rrethit BIOS/UEFI, që ngarkon Gentoo nga një imazh SquashFS me përdorimin e Overlay FS, duke përdorur tmpfs për ruajtjen e të dhënave. Bërthama duhet të jetë e ndërtuar me mbështetje për Overlay FS me SquashFS. Megjithatë, nëse për ndonjë arsye kjo nuk është e nevojshme, mund të përdorni opsionin «—cpio» në vend të —squashfs, për paketimin e gentoo/ si një arkiv cpio, në atë rast arkivi do të shkarkohet drejtpërdrejt në tmpfs gjatë ngarkimit, me kusht që të ketë mjaft memorie operative për të shkarkuar sistemin në tmpfs.

Fakt interesant: nëse imazhi ISO i krijuar me opsionin «—efi» shkarkohet në një flash drive FAT32 përmes kopjimit të thjeshtë të skedareve (cp -r), atëherë pajisja Flash do të ngarkohet në modalitetin UEFI pa ndonjë përgatitje paraprake, falë veçorive të ngarkuesve UEFI.

Përveç ISO-ve startuese me të njëjtat parametra, mund të krijohet çdo pajisje startuese: USB, HDD, SSD dhe kështu me radhë, duke e vazhduar përdorimin e saj për qëllimin e saj të drejtpërdrejtë. Për këtë, nevojitet të montoni, për shembull, pajisjen USB dhe të kryeni fillimin e mkbootisofs mbi të. Thjesht shtoni një opsion ‘—bootable’, në mënyrë që pajisja mbi të cilën ndodhet direktoria e specifikuar të bëhet startuese.

mount /dev/sdb1 /mnt
mkbootisofs /mnt —overlay gentoo/ —squashfs —legacy-boot grub2 —efi grub2 —bootable

Pas kësaj, pajisja USB do të bëhet startuese me overlay-n gentoo/ (mos harroni të kopjoni skedarët /boot/vmlinuz dhe /boot/initrd në pajisje).

Nëse për ndonjë arsye pajisja nuk u montua në /mnt, dhe ndodh që /mnt të jetë në pajisjen kryesore /dev/sda, atëherë përkatësisht ngarkuesi do të ripërcaktohet në /dev/sda. Duhet të tregoni kujdes kur specifikoni opsionin —bootable.

Gjatë ngarkimit, Booty mbështet një sërë opsionesh që mund të përcaktohen në bootloader, grub.cfg ose syslinux.cfg. Në mënyrë të parazgjedhur, pa ndonjë opsion, ngarkohet dhe shpërndahet të gjitha overlay-t në tmpfs (opsioni i parazgjedhur ooty.use-shmfs). Për të përdorur Overlay FS, duhet të përdoret opsioni booty.use-overlayfs. Opsioni booty.copy-to-ram paraprakisht kopjon overlay-t në tmpfs, pas së cilës vetëm i monton dhe i ngarkon. Pas kopjimit, pajisja USB (ose një pajisje tjetër ruajtëse) mund të nxirret.

Burimi: opennet.ru

Bleni hostim të besueshëm për faqe me mbrojtje nga DDoS, serverë VPS VDS 🔥 Bleni hostim të besueshëm për faqe me mbrojtje nga DDoS, serverë VPS VDS | ProHoster