booty - utilitas pikeun nyiptakeun gambar boot sareng drive

Program dibere Booty, anu ngamungkinkeun anjeun nyiptakeun gambar initrd bootable, file ISO atanapi drive anu ngandung distribusi GNU/Linux kalayan hiji paréntah. Kodeu ditulis dina cangkang POSIX sareng disebarkeun ku dilisensikeun dina GPLv3.

Kabéh sebaran booted maké Booty ngajalankeun boh SHMFS (tmpfs) atanapi SquashFS + Overlay FS, pilihan pamaké. Distribusi dijieun sakali, sarta salila prosés boot dipilih parameter nu ngidinan Anjeun pikeun ngagunakeun tmpfs murni pikeun akar, atawa kombinasi Overlay FS + SquashFS kalawan rékaman parobahan tmpfs. Kasebut nyaéta dimungkinkeun pikeun tos nyalin kit distribution bisa diundeur kana RAM, nu ngidinan Anjeun pikeun megatkeun USB drive sanggeus ngundeur tur nyalin kit distribution kana memori.

Anu mimiti, Booty ngahasilkeun gambar initrd sorangan, anu tiasa nganggo utilitas asli tina sistem ayeuna atanapi busybox. Kasebut nyaéta dimungkinkeun pikeun ngawengku (pak) sakabéh kit distribution dipasang dina diréktori (chroot) kana initramfs. Ieu tiasa mangpaat nalika anjeun kedah ningkatkeun sistem nganggo kexec: kantun muat ulang initrd sareng kernel énggal sareng sistem énggal di jero initrd.

Nyiptakeun gambar initrd khusus Booty:

mkdir initramfs/
mkinitramfs initramfs/ --output initrd

Nyiptakeun gambar initrd kalebet distribusi tina diréktori "gentoo/":

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

Saatos éta gambar initrd ieu tos siap pikeun dimuat, contona, via PXE atanapi via kexec.

Salajengna, Booty dibangkitkeun gambar kalawan sistem dieusian salaku "overlays". Contona, anjeun tiasa install (ngabongkar arsip) a Gentoo kondisional dina diréktori misah, nu satutasna arsip cpio atawa gambar SquashFS kalawan sistem ieu bakal dihasilkeun maké Booty. Anjeun oge bisa ngonpigurasikeun distribusi dina diréktori misah, sarta nyalin setelan pribadi Anjeun ka diréktori sejen. Sadaya "lapisan" ieu bakal dimuat sacara berurutan di luhur masing-masing sareng nyiptakeun sistem kerja tunggal.

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

Pamustunganana, Booty ngamungkinkeun anjeun nyiptakeun gambar ISO bootable sareng USB, HDD, SSD sareng drive sanésna ku cara masang sistem di luhur tina gambar. Booty ngadukung nyiptakeun sistem boot BIOS sareng UEFI. Bootloaders GRUB2 sareng SYSLINUX dirojong. Bootloaders tiasa digabungkeun, contona, nganggo SYSLINUX pikeun boot kana mios, sareng GRUB2 pikeun UEFI. Pikeun nyiptakeun gambar ISO, anjeun ogé peryogi pakét cdrkit (genisoimage) atanapi xorriso (xorrisofs), pikeun dipilih.

Hiji-hijina tindakan tambahan anu diperyogikeun nyaéta nyiapkeun kernel (vmlinuz) pikeun boot sateuacanna. Panulis (Spoofing) nyarankeun ngagunakeun "nyieun defconfig". Sateuacan nyiptakeun gambar, anjeun kedah nyiapkeun diréktori ku cara nempatkeun kernel vmlinuz sareng initrd "kosong" anu sateuacana didamel dina conto anu munggaran.

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

Kalayan persiapan ieu parantos réngsé, urang ayeuna tiasa nyiptakeun gambar ISO tina diréktori ieu.

Paréntah di handap ieu bakal nyiptakeun gambar ISO, sanés bootable, ngan ukur ISO:

mkdir iso/
mkbootisofs iso/ --output archive.iso

Pikeun nyiptakeun gambar boot, anjeun kedah netepkeun pilihan "--legacy-boot" kanggo BIOS sareng "--efi" kanggo UEFI, masing-masing; pilihan nyandak grub2 atanapi syslinux salaku parameter; anjeun ogé tiasa netepkeun ngan hiji pilihan ( contona, rojongan boot UEFI teu diperlukeun, eta bisa jadi teu dieusian).

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

Sareng sapertos sateuacanna, gambar sareng sistem kalebet dina initrd, anjeun tiasa ngalebetkeun kana ISO.

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

Saatos paréntah ieu, bakal ngahasilkeun gambar BIOS / UEFI ISO bootable anu ngamuat Gentoo kana gambar SquashFS nganggo Overlay FS, nganggo tmpfs pikeun neundeun data. Kernel kedah diwangun kalayan dukungan Overlay FS sareng SquashFS. Nanging, upami kusabab sababaraha alesan ieu henteu diperyogikeun, anjeun tiasa nganggo pilihan "-cpio" tibatan -squashfs pikeun ngarangkep gentoo/ salaku arsip cpio, dina hal ieu arsip bakal dibongkar langsung kana tmpfs nalika boot, hal utama. nyaeta pikeun unpacking sistem tmpfs miboga cukup RAM.

Kanyataan anu pikaresepeun: upami gambar ISO anu diciptakeun nganggo pilihan "-efi" dibongkar kana flash drive FAT32 ku ngan saukur nyalin file (cp -r), maka Flash drive bakal boot dina modeu UEFI tanpa persiapan awal, hatur nuhun kana spésifikna. tina UEFI- downloaders.

Salian ISO bootable, sagala drive bootable bisa dijieun kalawan parameter sarua: USB, HDD, SSD, jeung saterusna, sarta drive ieu bisa terus dipaké pikeun tujuan dimaksudkeun. Jang ngalampahkeun ieu, anjeun kudu masang, contona, hiji alat USB tur ngajalankeun mkbootisofs dinya. Ngan tambahkeun hiji pilihan "-bootable" supados drive dimana diréktori anu ditangtukeun janten bootable.

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

Saatos éta, alat USB bakal tiasa boot ku gentoo/ overlay (tong hilap nyalin file /boot/vmlinuz sareng /boot/initrd kana alat).

Upami kusabab sababaraha alesan drive henteu dipasang dina / mnt, sareng tétéla yén / mnt aya dina alat utama / dev / sda, teras bootloader bakal ditulis ulang ka / dev / sda. Anjeun kedah ati-ati nalika netepkeun pilihan --bootable.

Salila prosés boot, Booty ngarojong sababaraha pilihan nu bisa dibikeun ka boot loader, grub.cfg atanapi syslinux.cfg. Sacara standar, tanpa pilihan, sadaya overlay dimuat sareng dibongkar kana tmpfs (pilihan standar ooty.use-shmfs). Pikeun make Overlay FS pilihan booty.use-overlayfs kudu dipaké. Pilihan booty.copy-to-ram mimiti nyalin overlays ka tmpfs, nu satutasna ngan nyambungkeun aranjeunna sarta beban aranjeunna. Sanggeus disalin, alat USB (atawa alat panyimpen sejenna) bisa dipiceun.

sumber: opennet.ru

Tambahkeun komentar