Aia ka wā e hiki mai ana ma ʻaneʻi a i ʻole ke code pololei ma ka polokalamu kele pūnaewele

E haʻi wau iā ʻoe e pili ana i kahi kūlana ʻakaʻaka i loaʻa iaʻu, a pehea e lilo ai i mea kōkua i kahi papahana kaulana.

ʻAʻole i liʻuliʻu i hala aku nei ua hoʻomaka wau me kahi manaʻo: hoʻoiho pololei iā Linux mai UEFI ...
ʻAʻole hou ka manaʻo a he nui nā manual e pili ana i kēia kumuhana. Hiki iā ʻoe ke ʻike i kekahi o lākou maanei

ʻOiaʻiʻo, ʻo kaʻu mau hoʻāʻo lōʻihi e hoʻoponopono i kēia pilikia i hopena i ka hoʻokō piha ʻana ka hoʻoholo. Ke hana maikaʻi nei ka hopena a hoʻohana wau ia ma kekahi o kaʻu mau mīkini home. Hōʻike ʻia kēia hāʻina ma kahi kikoʻī iki. maanei.

ʻO ke kumu o UEFI-Boot ʻo ia ka hui ʻana o ka ESP (EFI System Partition) me ka papa kuhikuhi / boot. ʻO kēlā mau. aia nā kernels a me nā kiʻi bootstrap (initrd) ma ka ʻāpana like kahi e hiki ai iā UEFI ke hoʻomaka i nā faila hiki ke hoʻokō a, ʻo ia hoʻi, hoʻomaka i nā ʻōnaehana boot loader. Akā ʻo ka Linux kernel ponoʻī i nā māhele he nui ua hui pū ʻia me ka koho UEFISTUB, e hiki ai ke hoʻokuʻu ʻia ka kernel ponoʻī mai UEFI.

He hoʻokahi manawa leʻaleʻa kēia hoʻonā - ua hoʻohālikelike ʻia ka ʻāpana ESP i FAT32, kahi hiki ʻole ke hana i nā loulou paʻakikī (kahi e hana mau ai ka ʻōnaehana i ka wā e hoʻonui ai i ka initrd). A ʻaʻohe mea hewa nui e pili ana i kēia, akā ʻo ka ʻike ʻana i nā ʻōkuhi ʻōnaehana i ka wā e hoʻonui ai i nā ʻāpana kernel ʻaʻole ʻoluʻolu loa...

Aia kekahi ala.

Hiki i ka UEFI boot manager (ʻo ia ka mea e pono ai ʻoe e hoʻopaʻa inoa i ka bootloader OS), ma kahi o nā bootloaders/Linux kernels, hiki ke hoʻouka i nā mea hoʻokele. No laila hiki iā ʻoe ke hoʻouka i ka mea hoʻokele no ka ʻōnaehana faila kahi āu i loaʻa ai / boot a hoʻouka pololei i ka kernel mai laila me ka hoʻohana ʻana iā UEFI. ʻO ka mea hoʻokele, ʻoiaʻiʻo, pono e kau ʻia i ka pā ESP. ʻO kēia ka mea e hana ai nā bootloaders e like me GRUB. Akā ʻo ka mea koʻikoʻi ʻo ia nā hana GRUB i hoʻohana pinepine ʻia i UEFI. ʻOi aku ka pololei ma kāna mana hoʻoiho. A ʻoi aku ka luhi, ʻoi aku ka nui o ka mana boot UEFI i kekahi mau mea.

Me he mea lā he hopena maikaʻi, akā aia kekahi "BUT" (a i ʻole, ʻo ia, akā ʻoi aku ka nui ma hope). ʻO ka ʻoiaʻiʻo he maʻalahi ka ʻōnaehana hoʻokele UEFI. ʻAʻohe mea e like me ke kau ʻana i kahi ʻōnaehana faila a i ʻole ka hui ʻana i kahi mea hoʻokele me kahi hāmeʻa kikoʻī. Aia kahi kelepona ʻōnaehana me ka inoa maʻamau ʻo Map, e lawe i kēlā me kēia mea hoʻokele i ka huli a hoʻāʻo e hoʻopili iā ia me nā mea āpau, ma ka liʻiliʻi loa. A inā hiki i ka mea hoʻokele ke kiʻi i ka hāmeʻa, a laila hana ʻia kahi palapala palapala - kahi moʻolelo pili. ʻO kēia ke ʻano o ka hoʻomaka ʻana o ka mea hoʻokele hou i hoʻoili ʻia ma kahi puʻu maʻamau me nā mea ʻē aʻe. A ʻo nā mea a pau āu e makemake ai, e hoʻonoho i hoʻokahi bit (LOAD_OPTION_FORCE_RECONNECT) i ka 1 i loko o ka moʻolelo boot drive a e hana ʻo UEFI i kēia remap honua ma hope o ka hoʻouka ʻana.

Akā ʻaʻole maʻalahi kēia hana. ʻO ka pono efibootmgr maʻamau (i hoʻohana ʻia no ka hoʻonohonoho ʻana i ka luna hoʻoiho UEFI) ʻaʻole ʻike pehea (a i ʻole, ʻaʻole ʻike pehea) e hoʻonohonoho i kēia bit. Pono wau e hoʻokomo iā ia me ka lima ma o kahi kaʻina hana paʻakikī a weliweli.

A hoʻokahi hou, i ka hoʻāʻo ʻana e hana me koʻu mau lima, ʻaʻole hiki iaʻu ke kū a hoʻomaʻamaʻa pilikia ma GitHub e noi ana i nā mea hoʻomohala e hoʻohui i kēia hiʻohiʻona.

Ua hala kekahi mau lā, ʻaʻohe mea i hoʻolohe i kaʻu noi. A ma muli o ka hoihoi, ua nānā au i ke kumu kumu... Ua ʻoki au, a ʻike i koʻu mau kuli pehea e hoʻohui ai i kēia hiʻohiʻona... "Ma koʻu mau kuli" no ka mea ʻaʻole wau i hoʻokomo i kekahi mea e like me ia a hoʻoponopono i ke kumu. code pololei ma ka polokalamu kele pūnaewele.

ʻIke au i ka C (ka ʻōlelo hoʻonohonoho) ma ke ʻano heʻe, akā ua kiʻi au i kahi hopena pili (ka hapa nui o kope-paste) ... a laila manaʻo wau - ma ka liʻiliʻi paha he nui kaʻu mau hewa ma laila (ʻo kaʻu mau hoʻāʻo i hala e hoʻoponopono i ka mea ʻē aʻe. Ua hoʻopau ʻia ke code C ma kahi o ka manawa 10) E hoʻopuka wau i kahi noi huki. Pono hoʻolālā.

A ma laila ʻo Travis CI i hoʻopili ʻia e nānā i nā noi huki. A haʻi mai ʻo ia iaʻu i kaʻu mau hewa a pau. ʻAe, inā loaʻa nā hewa i ʻike ʻia, ʻaʻohe pono e hoʻoponopono: hou, pololei ma ka polokalamu kele pūnaewele, a ma ka ʻehā o ka hoʻāʻo ʻana ua hana ke code (he hoʻokō iaʻu).

A e like me ia, me ka haʻalele ʻole i ka polokalamu kele pūnaewele, ua hoʻonohonoho wau i kahi noi huki maoli maoli i loko o kahi mea pono e hoʻohana ʻia i nā hoʻolaha Linux hou.

Pīhoihoi au i ka mea, me ka ʻike ʻole i ka ʻōlelo, me ka ʻole o ka hoʻonohonoho ʻana i kekahi mea (pono nā hilinaʻi i nā hale waihona puke no ka hui ʻana), a me ka holo ʻole ʻana i ka compiler, ua "code" wale wau i kahi hiʻohiʻona hana a pono i ka polokalamu kele pūnaewele .

Akā naʻe, ʻaʻole i pane mai kaʻu noi mai Malaki 19, 2019, a ua hoʻomaka wau e poina iā ia.

Akā i nehinei ua hoʻohui ʻia kēia noi i ka haku.

No laila he aha kaʻu moʻolelo? A ke kamaʻilio nei ʻo ia e pili ana i ka ʻoiaʻiʻo, i loko o ke ʻano o nā ʻenehana hou, ua ʻike ʻia ua hiki ke kākau ʻia ke code maoli ma ka polokalamu kele pūnaewele, me ka ʻole o ka hoʻohana ʻana i nā mea hana hoʻomohala a me nā hilinaʻi kūloko.

Eia kekahi, pono wau e ʻae, ʻo kēia kaʻu noi huki ʻelua no nā pono kaulana (ma ka liʻiliʻi ma nā pōʻai liʻiliʻi). I ka manawa hope loa, ʻo kaʻu noi e hoʻoponopono i ka hōʻike ʻana o kekahi mau kahua ma ka pūnaewele SyncThing ka hopena i koʻu hoʻoponopono ʻana i ka laina hoʻokahi i loko o kahi kaiapuni aʻu i ʻike ʻole ai.

Hiki i nā mea hoʻohana i hoʻopaʻa inoa ʻia ke komo i ka noiʻi. Eʻe, e 'oluʻolu.

Pono au e kākau hou a ʻaʻole paha?

  • ʻo ia

  • ʻaʻole pono

294 mea hoʻohana i koho. Ua hōʻole nā ​​mea hoʻohana 138.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka