booty - fóntais chun íomhánna tosaithe agus tiomántáin a chruthú

Clár curtha i láthair Booty, a ligeann duit íomhánna initrd bootable, comhaid ISO nó tiomántáin a chruthú ina bhfuil aon dáileadh GNU/Linux le hordú amháin. Tá an cód scríofa i mblaosc POSIX agus dáilte ag ceadúnaithe faoi GPLv3.

Gach dáileadh tosaithe ag baint úsáide as Booty rith ceachtar SHMFS (tmpfs) nó SquashFS + Forleagan FS, rogha an úsáideora. Cruthaítear an dáileadh uair amháin, agus le linn an phróisis tosaithe, roghnaítear paraiméadair a ligeann duit tmpfs íon a úsáid don fhréamh, nó meascán de Overlay FS + SquashFS le hathruithe taifeadta ar tmpfs. Is féidir an trealamh dáileacháin in-íoslódáilte a réamhchóipeáil isteach i RAM, rud a ligeann duit an tiomántán USB a dhínascadh tar éis duit an trealamh dáileacháin a íoslódáil agus a chóipeáil sa chuimhne.

Ar an gcéad dul síos, gineann Booty a íomhá initrd féin, ar féidir leis fóntais dhúchasacha a úsáid ón gcóras reatha nó ón mbosca gnóthach. Is féidir an trealamh dáileacháin iomlán atá suiteáilte san eolaire (chroot) a chur san áireamh (pacáiste) in initramfs. Féadfaidh sé seo a bheith úsáideach nuair is gá duit córas a uasghrádú ag baint úsáide as kexec: níl le déanamh ach an initrd a athlódáil le heithne nua agus córas nua laistigh den initrd.

Íomhá initrd a bhaineann go sonrach le Booty á cruthú:

mkdir initramfs/
mkinitramfs initramfs/ --aschur initrd

Íomhá initrd a chruthú lena n-áirítear an dáileadh ón eolaire “gentoo/”:

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

Ina dhiaidh sin tá an íomhá initrd seo go hiomlán réidh le luchtú, mar shampla, trí PXE nó trí kexec.

Ansin, gineann Booty íomhánna leis an gcóras atá sonraithe mar “overlays”. Mar shampla, is féidir leat Gentoo coinníollach a shuiteáil (díphacáil an chartlann) in eolaire ar leith, agus ina dhiaidh sin ginfear cartlann cpio nó íomhá SquashFS leis an gcóras seo ag baint úsáide as Booty. Is féidir leat an dáileadh a chumrú in eolaire ar leith freisin, agus do shocruithe pearsanta a chóipeáil chuig eolaire eile. Déanfar na “sraitheanna” seo go léir a luchtú go seicheamhach ar bharr a chéile agus cruthófar córas oibre amháin.

mkdir initramfs/
mkinitramfs initramfs/ -- forleagan gentoo/ -- socruithe forleagan/ -- doiciméid forleagan/ --squashfs -- initrd

Ar deireadh thiar, ligeann Booty duit íomhánna ISO bootable agus USB, HDD, SSD agus thiomáineann eile a chruthú tríd an gcóras thuas a shuiteáil ó íomhánna. Booty tacaíonn sé le cruthú córais tosaithe BIOS agus UEFI. Tacaítear le bootloaders GRUB2 agus SYSLINUX. Is féidir bootloaders a chomhcheangal, mar shampla, bain úsáid as SYSLINUX chun tosaithe isteach sa BIOS, agus GRUB2 le haghaidh UEFI. Chun íomhánna ISO a chruthú, beidh an pacáiste cdrkit (genisoimage) nó xorriso (xorrisofs) uait freisin le roghnú as.

Is é an t-aon ghníomh breise atá ag teastáil ná an eithne (vmlinuz) a ullmhú le haghaidh tosaithe roimh ré. Molann an t-údar (Spoofing) úsáid a bhaint as "déan defconfig". Sula gcruthaítear an íomhá, ní mór duit eolaire a ullmhú tríd an eithne vmlinuz agus an initrd “folamh” ullmhaithe roimhe seo a cruthaíodh sa chéad sampla.

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

Agus an t-ullmhúchán críochnaithe, is féidir linn íomhánna ISO a chruthú ón eolaire seo anois.

Cruthóidh an t-ordú seo a leanas íomhá ISO, ní íomhá bootable, ach ISO:

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

Chun íomhá tosaithe a chruthú, ní mór duit an rogha “-legacy-boot” a shonrú le haghaidh BIOS agus “--efi” do UEFI, faoi seach; glacann na roghanna grub2 nó syslinux mar pharaiméadair; ní féidir leat ach rogha amháin a shonrú freisin ( mar shampla, níl tacaíocht tosaithe UEFI ag teastáil , ní féidir é a shonrú).

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

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

mkbootisofs iso/ --efi grub2 --aschur boot-uefionly.iso

Agus díreach mar a bhí roimhe seo, cuireadh íomhánna leis an gcóras san áireamh san initrd, is féidir leat iad a áireamh san ISO.

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

Tar éis an ordaithe seo, ginfear íomhá ISO bootable BIOS/UEFI a lódálann Gentoo isteach san íomhá SquashFS ag baint úsáide as Overlay FS, ag baint úsáide as tmpfs le haghaidh stórála sonraí. Ní mór an eithne a thógáil le tacaíocht Overlay FS le SquashFS. Mar sin féin, mura bhfuil sé seo ag teastáil ar chúis éigin, is féidir leat an rogha “-cpio” a úsáid in ionad —squashfs chun gentoo / a phacáistiú mar chartlann cpio, agus sa chás sin déanfar an chartlann a dhíphacáil go díreach isteach i tmpfs ar tosaithe, an rud is mó is é sin le haghaidh díphacáil an chórais tmpfs raibh go leor RAM.

Fíric suimiúil: má dhéantar íomhá ISO a cruthaíodh ag baint úsáide as an rogha “-efi” a dhíphacáil ar thiomántán flash FAT32 trí chomhaid a chóipeáil (cp -r), ansin cuirfear tús leis an tiomántán Flash i mód UEFI gan aon réamhullmhúchán, a bhuíochas leis na sonraí de íoslódálaithe UEFI.

Chomh maith le ISOanna bootable, is féidir aon tiomáint bootable a chruthú leis na paraiméadair chéanna: USB, HDD, SSD, agus mar sin de, agus is féidir leanúint ar aghaidh ag baint úsáide as an tiomáint seo chun na críche atá beartaithe dó. Chun seo a dhéanamh, ní mór duit, mar shampla, gléas USB a shuiteáil agus mkbootisofs a rith air. Ní gá ach rogha amháin a chur leis “- bootable” ionas go mbeidh an tiomántán ar a bhfuil an t-eolaire sonraithe suite bootable.

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

Tar éis sin, beidh an gléas USB bootable leis an gentoo / forleagan (ná déan dearmad na comhaid / boot / vmlinuz agus / boot / initrd a chóipeáil chuig an gléas).

Más rud é ar chúis éigin nach raibh an tiomántán gléasta in / mnt, agus go dtarlaíonn sé go bhfuil /mnt suite ar an bpríomhghléas /dev/sda, ansin déanfar an bootloader a athscríobh chuig /dev/sda. Ba chóir duit a bheith cúramach agus an rogha --bootable á shonrú agat.

Le linn an phróisis tosaithe, tacaíonn Booty le roinnt roghanna ar féidir iad a chur ar aghaidh chuig an lódóir tosaithe, grub.cfg nó syslinux.cfg. De réir réamhshocraithe, gan aon roghanna, déantar gach forleagan a luchtú agus a dhíphacáil isteach i tmpfs (rogha réamhshocraithe ooty.use-shmfs). Chun Forleagan FS a úsáid ní mór an rogha booty.use-overlayfs a úsáid. Déanann an rogha booty.copy-go-reithe forleagan a chóipeáil ar tmpfs ar dtús, agus ina dhiaidh sin ní nascann sé ach iad agus lódálann sé iad. Nuair a dhéantar é a chóipeáil, is féidir an gléas USB (nó feiste stórála eile) a bhaint.

Foinse: oscailtenet.ru

Add a comment