Ikusasa selikhona vele noma ikhodi ngqo esipheqululini

Ngizokutshela ngesimo esihlekisayo esenzeke kimi, nokuthi ungaba kanjani umnikeli wephrojekthi edumile.

Esikhathini esingeside esidlule bengicabanga ngombono: ukuqala i-Linux ngqo ku-UEFI...
Umbono awumusha futhi kunenqwaba yamabhukwana ngalesi sihloko. Ungabona omunye wabo lapha

Empeleni, imizamo yami yesikhathi eside yokuxazulula le nkinga iholele ekutheni kube semthethweni ngokuphelele isinqumo. Isixazululo sisebenza impela futhi ngisisebenzisa kweminye yemishini yami yasekhaya. Lesi sixazululo sichazwa ngokuningiliziwe okwengeziwe. lapha.

Ingqikithi ye-UEFI-Boot iwukuthi ukwahlukanisa kwe-ESP (EFI System Partition) kuhlanganiswe ne-direct directory. Labo. zonke izithombe ze-kernel ne-bootstrap (initrd) zitholakala esabelweni esifanayo lapho i-UEFI ingaqalisa khona amafayela asebenzisekayo futhi, ikakhulukazi, iqalise izilayishi zesistimu yokuqalisa. Kodwa i-Linux kernel ngokwayo ekusabalaliseni okuningi isivele ihlanganiswe nenketho ye-UEFISTUB, evumela i-kernel ngokwayo ukuthi yethulwe ku-UEFI.

Lesi sixazululo sinesikhathi esisodwa esingemnandi - ukwahlukanisa kwe-ESP kufomethwe ku-FAT32, lapho kungenakwenzeka khona ukudala izixhumanisi eziqinile (okudalwa yisistimu njalo lapho kubuyekezwa i-initrd). Futhi akukho lutho oluwubugebengu ikakhulukazi ngalokhu, kodwa ukubona izexwayiso zesistimu lapho ubuyekeza izingxenye ze-kernel akujabulisi kakhulu...

Kukhona enye indlela.

Umphathi we-UEFI boot (okufana lapho udinga ukubhalisa khona i-OS bootloader) angakwazi, ngaphezu kwama-bootloader/ama-Linux kernels, aphinde alayishe abashayeli. Ngakho-ke ungakwazi ukulayisha umshayeli wesistimu yefayela lapho unayo / uqalise futhi ulayishe i-kernel ngqo kusuka lapho usebenzisa i-UEFI. Umshayeli, kunjalo, udinga ukufakwa ku-ESP partition. Lokhu cishe okwenziwa ama-bootloader afana ne-GRUB. Kodwa okugqamile ukuthi yonke imisebenzi ye-GRUB esetshenziswa njalo isivele iku-UEFI. Ngokuqondile kumphathi wayo wokulanda. Futhi ukuze ube yisicefe nakakhulu, umphathi we-UEFI boot unamakhono amaningi kwezinye izinto.

Kubonakala kuyisixazululo esihle, kodwa kukhona "KODWA" (noma kunalokho, bekuyikho, kodwa okuningi kulokho kamuva). Iqiniso liwukuthi uhlelo lomshayeli we-UEFI lulula kakhulu. Ayikho into efana nokukhweza isistimu yefayela noma ukuhlobanisa umshayeli nedivayisi ethile. Kunocingo lwesistimu olunegama elivamile elithi Imephu, oluthatha umshayeli ngamunye ngokushintshana bese luzama ukuluhlanganisa nabo bonke, okungenani amadivaysi afanelekile. Futhi uma umshayeli ekwazi ukuthatha idivayisi, khona-ke imephu idalwe - irekhodi lokuxhuma. Yile ndlela kanye umshayeli osanda kulayishwa ngayo okufanele aqaliswe ngayo enqwabeni efanayo nabo bonke abanye. Futhi okudingayo nje ukusetha ibhithi elilodwa (LOAD_OPTION_FORCE_RECONNECT) libe ngu-1 kurekhodi lokuqalisa komshayeli futhi i-UEFI izokwenza le mephu yomhlaba wonke ngemva kokuyilayisha.

Kodwa lokhu akulula kakhulu ukukwenza. Isisetshenziswa esijwayelekile se-efibootmgr (esisetshenziswa ukulungisa isiphathi sokulayishwa kwe-UEFI) asazi ukuthi (noma kunalokho, besingazi kanjani) ukuthi singasethwa kanjani lesi sici. Kwadingeka ngiyifake mathupha ngenqubo eyinkimbinkimbi neyingozi.

Futhi futhi, ngemva kokuzama ukukwenza ngezandla zami, angikwazanga ukukumela futhi ngenza kube semthethweni khipha ku-GitHub icela onjiniyela ukuthi bengeze lesi sici.

Kwadlula izinsuku ezimbalwa, kodwa akekho owasinaka isicelo sami. Futhi ngenxa yelukuluku, ngabheka ikhodi yomthombo... ngayifohla, futhi nganquma ngamadolo ukuthi ngingasengeza kanjani lesi sici ... "Emadolweni ami" ngoba angizange ngifake lutho olunjalo futhi ngihlele umthombo. ikhodi ngqo esipheqululini.

Ngiyazi u-C (ulimi lokuhlela) ngokukha phezulu, kodwa ngidwebe isixazululo esilinganiselwe (ikakhulukazi kopisha-namathisela)... ngase ngicabanga - okungenani nginamaphutha amaningi lapho (imizamo yami edlule yokuhlela omunye umuntu. Ikhodi C yaqedwa cishe isikhathi se-10) ngizokhipha Isicelo Sokudonsa. Hhayi-ke yakhelwe.

Futhi lapho uTravis CI watholakala enamathiselwe ukuze ahlole izicelo zokudonsa. Futhi wangitshela ngenkuthalo wonke amaphutha ami. Yebo, uma kukhona amaphutha aziwayo, asikho isidingo sokuyilungisa: futhi, khona kanye esipheqululini, futhi emzamweni wesine ikhodi isebenzile (impumelelo kimi).

Futhi kanjalo, ngaphandle kokushiya isiphequluli, ngifomethe isicelo sokudonsa sangempela sibe yinsizakalo esetshenziswa cishe kukho konke ukusatshalaliswa kweLinux yesimanje.

Kwangimangaza ukuthi, ngaphandle kolwazi ngempela ulimi, ngaphandle kokumisa noma yini (ukuncika kudinga imitapo yolwazi embalwa ukuze ihlanganiswe), futhi ngaphandle kokusebenzisa isihlanganisi, ngimane “ngifake ikhodi” isici esisebenza ngokuphelele nesiwusizo isiphequluli .

Nokho, isicelo sami asizange siphendule kusukela ngoMashi 19, 2019, futhi ngase ngiqalile ukukhohlwa ngaso.

Kodwa izolo lesi sicelo sengezwe ku-master.

Pho imayelana nani indaba yami? Futhi ukhuluma ngeqiniso lokuthi, ngaphakathi kohlaka lobuchwepheshe besimanje, kwavela ukuthi ikhodi yangempela ingabhalwa kakade esipheqululini, ngaphandle kokufaka noma yimaphi amathuluzi okuthuthukisa kanye nokuxhomeka endaweni.

Ngaphezu kwalokho, kufanele ngivume, lesi sekuyisicelo sami sesibili sokudonsa sezinsiza ezaziwayo (okungenani emibuthanweni emincane). Okokugcina, isicelo sami sokulungisa ukuvezwa kwezinkambu ezithile kusixhumi esibonakalayo sewebhu se-SyncThing siholele ekuhleleni kwami ​​umugqa owodwa ngokoqobo endaweni engingayazi nhlobo.

Abasebenzisi ababhalisiwe kuphela abangabamba iqhaza kuhlolovo. Ngena ngemvume, wamukelekile.

Kufanele ngibhale okwengeziwe noma cha?

  • yebo

  • akufanelekile

Bangu-294 abasebenzisi abavotile. Abasebenzisi abangu-138 bagobile.

Source: www.habr.com

Engeza amazwana