Emri i distros, glibc apo përpiluesi: çfarë kontrollon instaluesi
Një instalues që refuzon derivatin tuaj mund të lexojë një emër distroje, një version të mjedisit të ekzekutimit ose një përpilues. Vetëm një prej tyre vendos nëse binari mund të ekzekutohet.
Instaluesi shtyp “unsupported distribution”, ju ndryshoni një varg dhe ai vazhdon derisa dështon një minutë më vonë me një gabim ngarkuesi. Ky sekuencë është simptoma që ia vlen të njihet: dështimi i parë ishte një kontroll njohjeje dhe i dyti është një kufi përputhshmërie. Janë dy probleme të ndryshme që ndodh të shfaqen në të njëjtin terminal. Ndryshimi i kontrollit mund vetëm t'ju kalojë nga i pari te i dyti.
Simptoma: instaluesi ndalon në derivatin tuaj
Një skript që lexon një emër shpërndarjeje dhe refuzon të vazhdojë po ju thotë se autori i tij nuk e ka testuar derivatin tuaj. Ky është një deklaratë mbështetjeje dhe jo një fakt teknik, dhe shpesh është i gabuar në kuptimin që paketa do të funksiononte mirë.
Problemi fillon kur zgjidhja e përkohshme bëhet plani. Ndryshimi i një skedari identiteti e kalon kontrollin, dhe paketa pastaj ngarkohet, ose nuk ngarkohet, kundrejt mjedisit të ekzekutimit që është vërtet i instaluar. Nëse dështon atje, asnjë redaktim tjetër identiteti nuk do të ndihmojë.
Prandaj hapi i dobishëm është të zbuloni se cilën pyetje bëri instaluesi, dhe pastaj të zbuloni nëse përgjigja do të kishte rëndësi. Këto janë dy hetime të veçanta dhe vetëm e dyta parashikon nëse paketa do të funksionojë.
Tre versione që njerëzit i quajnë versioni i sistemit
Një publikim shpërndarjeje emërton një mjedis të paketuar. Një version biblioteke C emërton një zbatim të mjedisit të ekzekutimit dhe publikimin e tij. Një version përpiluesi emërton një zinxhir mjetesh. Në bisedë njerëzit i quajnë të tre “versioni i sistemit”, dhe në një instalues ata nuk janë të këmbyeshëm.
cat /etc/os-release ldd --version | head -1 gcc --version | head -1 uname -m
Një aplikacion i parandërtuar pret mjedisin e ekzekutimit që ishte i pranishëm kur u lidh. Ndryshimi i përpiluesve në host nuk e lidh përsëri, dhe një zinxhir mjetesh më i ri nuk ndryshon asgjë në simbolet e ngarkuesit që kërkon binari. Arkitektura ka rëndësi përsëri veçmas, sepse një paketë 32-bit në një sistem 64-bit dështon për arsye që asnjë varg versioni nuk i shpjegon.
Mbani katër daljet me raportin. Mbledhja e tyre zgjat dhjetë sekonda dhe ato u përgjigjen shumicës së pyetjeve që mirëmbajtësi do t'ju bënte ndryshe me email.
Lexoni gabimin, jo kontrollin
Gabimi i parë i nisjes është prova. Një mesazh për një objekt të përbashkët që mungon, ose për një version simboli që ngarkuesi nuk mund ta plotësojë, është problem varësie nga mjedisi i ekzekutimit. Një mesazh që përsërit emrin e shpërndarjes është përsëri kontrolli i njohjes, diku tjetër.
dokumentacioni i lidhësit dinamik përshkruan si funksionon kërkimi i bibliotekave dhe ku kërkon ngarkuesi. Ndryshimi i një etikete shpërndarjeje nuk shton një direktori në atë rrugë kërkimi, dhe për këtë arsye dështimi i dytë duket i palidhur me të parin.
Mos u mbështetni në ldd mbi një skedar të ekzekutueshëm të shkarkuar si hap i parë i zakonshëm. Manuali i tij vetë paralajmëron se në disa rrethana mund të ekzekutojë programin, dhe ekzekutimi i një instaluesi të pabesueshëm është pikërisht rasti për të cilin është ai paralajmërim.
Pse ndryshimi i vargut nuk ndihmon
Falsifikimi i identitetit të sistemit operativ ndryshon mënyrën se si çdo program në makinë e sheh veten. Menaxherët e paketave, mjetet e mbështetjes dhe aplikacionet e tjera lexojnë të njëjtin skedar, dhe një vlerë që kënaq një instalues mund të ngatërrojë diçka tjetër muaj më vonë.
Zëvendësimi i bibliotekave të hostit me skedarë nga një shpërndarje tjetër është më keq. Mund të thyejë softuer të palidhur, është i padukshëm për menaxherin e paketave dhe kërkon një plan mirëmbajtjeje që askush nuk e shkruan. Ato ndryshime nuk justifikohen nga një instalues i vetëm kufizues.
Nëse kontrolli është vërtet një defekt njohjeje, mirëmbajtësi mund ta konfirmojë dhe të përshkruajë korrigjimin e mbështetur. Nëse nuk është defekt, rruga e mbështetur është një ndërtim për platformën tuaj, dhe ai përgjigje nuk ndryshon sepse vargu u redaktua.
Shkruani një raport mbi të cilin mirëmbajtësi mund të veprojë
Shënoni shpërndarjen dhe publikimin, arkitekturën, publikimin e VPN-së, kushtin e saktë që u refuzua dhe gabimin e parë të mjedisit të ekzekutimit nëse keni shkuar kaq larg. Vini re nëse keni ndryshuar diçka, sepse një raport nga një sistem i ndryshuar është një raport tjetër.
Lëreni instaluesin origjinal të pandryshuar dhe përshkruani kontrollin në vend që ta anashkaloni. Ky dallim i lejon mirëmbajtësit të ndajë një rregull njohjeje shumë të ngushtë nga një kufi i vërtetë përputhshmërie binare, dhe ata janë dy defekte shumë të ndryshme me dy korrigjime shumë të ndryshme.
Nëse përgjigjja vjen se platforma juaj nuk mbështetet, ky është një rezultat i përdorshëm. Ju thotë të kërkoni një ndërtim të mbështetur në vend që të kaloni një mbrëmje tjetër mbi skedarë identiteti që nuk ishin kurrë problemi.