Odpoveď na fóre vám dá celý názov súboru a názov vyzerá ako riešenie: jeden .deb, jeden príkaz, hotovo. To, čo tento reťazec v skutočnosti kóduje, je verzia balíka, architektúra procesora a distribučná sada, proti ktorej bol v ten deň, keď niekto napísal príspevok, zostavený. Žiadna z tých troch automaticky neopisuje dosku na vašom stole. Staré stiahnutie je snímka situácie jedného stroja, nie plán inštalácie pre ten váš.

Čo názov súboru potichu fixuje

Čítajte názov ako openfortivpn_1.17.0-1_armhf.deb sprava doľava. Prípona je architektúra, pre ktorú bol binárny súbor skompilovaný, stredné pole je revízia upstreamu a balenia a implicitné štvrté pole je sada knižníc distribúcie, v ktorej bol zostavený.

Na 64-bitovej inštalácii Raspberry Pi OS je systémová architektúra arm64, takže dpkg -i odmietne balík armhf pre nesúlad architektúry. Aj tam, kde multiarch umožní inštaláciu, binárny súbor očakáva verzie knižníc z vydania, proti ktorému bol zostavený, a novší základný systém ich už nemusí poskytovať. Výsledkom je nainštalovaný balík, ktorého spustiteľný súbor sa nespustí, a to je zlyhanie, ktoré ľudia zvyčajne nesprávne pripisujú samotnému klientovi.

To, že je doska zariadenie ARM, nerobí balík ARM vhodným. Architektúra je jedna os; vydanie a ABI sú ďalšie dve a zlyhávajú nezávisle.

Spýtajte sa distribúcie, skôr než požiadate o odkaz na stiahnutie

Každý udržiavaný kanál vám môže povedať, čo by práve teraz nainštaloval. Spustite dopyt na cieľovom stroji s repozitármi, ktoré skutočne používa, skôr než zvážite akýkoľvek prenos súboru.

cat /etc/os-release
dpkg --print-architecture
apt-cache policy openfortivpn

Riadok kandidáta s verziou a názvom repozitára znamená, že distribúcia už má zostavenie pre tento systém. Žiadny kandidát, alebo kandidát zo sady, ktorú ste nechceli použiť, je informácia o vašich zdrojoch, nie o tom, či softvér niekde existuje.

Ak obnovenie metadát zlyhá, držte toto zlyhanie oddelene od otázky balíka. Preklad názvov, transport repozitárov, chýbajúci podpis Release a sada na konci životnosti všetky lámu apt update skôr, než je klient vôbec v hre. Oprava zdrojov je iná úloha než výber klienta VPN a miešanie oboch je spôsob, akým ľudia nasmerujú aktuálny systém na zastarané vydanie.

Čo apt overuje a čo stiahnutý súbor nedostane

Normálna inštalácia sleduje reťaz podpisov: archív podpisuje svoj index, index nesie hashe každého balíka a balík musí zodpovedať. referencia na autentifikáciu archívu oddeľuje tento reťaz od myšlienky overovať podpis pripojený ku každému jednotlivému súboru.

Súbor uložený zo starého HTTP odkazu nemá nič z toho. Prichádza bez identity repozitára, neaktualizuje sa, keď distribúcia záplatuje klienta, a nič nezaznamenáva, kto je zodpovedný za jeho nahradenie. Stále to môže byť legitímna voľba pre správcu s fixovaným artefaktom, ale voľba musí prísť s vlastníkom, niekde zaznamenaným kontrolným súčtom a plánom na ďalšiu bezpečnostnú aktualizáciu.

Potlačenie chýb podpisu alebo vypnutie overovania TLS, aby starý pokyn ďalej fungoval, odstraňuje jedinú časť procesu, ktorá niečo kontrolovala. Obnovte namiesto toho zlyhávajúcu kontrolu.

Nainštalujte klienta, potom ladte pripojenie oddelene

Keď existuje udržiavaný kandidát, nainštalujte ho bežnou revidovanou transakciou a nechajte správcu balíkov zaznamenať, čo urobil.

Ak nasadenie naozaj potrebuje zostavenie z upstreamu, postupujte podľa aktuálnych pokynov projektu na zostavenie a berte ho ako softvér, ktorý teraz udržiavate: vývojové balíky, pkg-config, hlavičky knižnice TLS a démon PPP sú skutočné závislosti, rovnako ako postup odinštalovania, ktorý budete neskôr potrebovať.

Inštalácia je len lokálna softvérová fáza. Brána musí prijať protokol a tok autentizácie klienta, klient musí dôverovať certifikátu, ktorý brána predkladá, a tunel potrebuje funkčnú vrstvu PPP plus trasy a vlastníka resolvera. Dokončená transakcia balíka nič nedokazuje o tom, či brána prijme účet alebo či je privátny rozsah dostupný. Testujte každú vrstvu tam, kde sa láme, namiesto opätovného spúšťania inštalátora.

Plán, ktorý by mal nahradiť starý názov súboru

Najprv zapíšte identitu platformy: vydanie OS, architektúru a zoznam používaných zdrojov. Potom pomenujte autorizované miesto, odkiaľ balík pochádza — či už je to distribučný repozitár, repozitár dodávateľa s fixovaným kľúčom alebo zostavenie, ktoré sami kompilujete a balíte.

Nakoniec pomenujte správcu a cestu aktualizácie. Pi, ktorý spúšťa klienta, ktorého nikto nevlastní, bude fungovať až do prvej aktualizácie knižnice, a potom to isté vlákno fóra znovu nájde niekto s rovnakým problémom.

Opravené presvedčenie je dosť jednoduché na to, aby sa dalo povedať jednou vetou: starý balík je dôkaz, že klient sa kedysi zostavil a bežal, nie dôkaz, že sa dnes večer nainštaluje na vašu dosku. Skontrolujte tri osi a potom vyberte kanál, ktorý môžete ďalej aktualizovať.

Súvisiace články