Արդյո՞ք հին openfortivpn .deb-ը հարմար է ձեր Raspberry Pi-ի համար։
Արխիվացված armhf .deb-ը ամրագրում է թողարկում, որին ձեր Pi-ն այլևս չի կարող համապատասխանել։ Նախքան տեղադրելը ստուգեք ՕՀ-ի թողարկումը, փաթեթի ճարտարապետությունը և թարմացման աղբյուրը։
Ֆորումի պատասխանը ձեզ տալիս է ամբողջական ֆայլի անուն, և անունը թվում է լուծումը՝ մեկ .deb, մեկ հրաման, վերջ։ Այդ տողն իրականում կոդավորում է փաթեթի տարբերակ, պրոցեսորի ճարտարապետություն և այն դիստրիբուտիվ փաթեթը, որի դեմ այն կառուցվել է այն օրը, երբ ինչ-որ մեկը գրել է գրառումը։ Այդ երեքից ոչ մեկը ինքնաբերաբար չի նկարագրում ձեր սեղանի վրա դրված տախտակը։ Հին ներբեռնումը մեկ մեքենայի վիճակի պատկեր է, ոչ թե ձեր սարքի տեղադրման ծրագիր։
Ինչ է ֆայլի անունը լուռ ամրագրում
Կարդացեք openfortivpn_1.17.0-1_armhf.deb-ի նման անունը աջից ձախ։ Վերջածանցը այն ճարտարապետությունն է, որի համար կոմպիլացվել է բինար ֆայլը, միջին դաշտը upstream-ի և փաթեթավորման վերանայումն է, իսկ ենթադրյալ չորրորդ դաշտը այն փաթեթի գրադարանների հավաքածուն է, որում այն կառուցվել է։
64-բիթանոց Raspberry Pi OS տեղադրման դեպքում համակարգի ճարտարապետությունը arm64 է, ուստի dpkg -i-ը մերժում է armhf փաթեթը ճարտարապետության անհամապատասխանության պատճառով։ Անգամ այնտեղ, որտեղ multiarch-ը հնարավոր է դարձնում տեղադրումը, բինարը սպասում է գրադարանների տարբերակներ այն թողարկումից, որի դեմ այն կառուցվել է, և ավելի նոր բազային համակարգը կարող է այլևս չտրամադրել դրանք։ Արդյունքը տեղադրված փաթեթ է, որի կատարվող ֆայլը չի գործարկվում, և սա այն ձախողումն է, որը մարդիկ սովորաբար սխալմամբ վերագրում են հենց կլիենտին։
Այն, որ տախտակը ARM սարք է, ARM փաթեթին հարմար չի դարձնում։ Ճարտարապետությունը մեկ առանցք է, թողարկումը և ABI-ն՝ մյուս երկուսը, և նրանք ձախողվում են ինքնուրույն։
Հարցրեք դիստրիբուտիվին նախքան ներբեռնման հղում խնդրելը
Յուրաքանչյուր պահպանվող ալիք կարող է ձեզ ասել, թե ինչ կտեղադրեր հենց հիմա։ Կատարեք հարցումը թիրախ մեքենայի վրա՝ իրականում օգտագործվող պահոցներով, նախքան որևէ ֆայլի փոխանցում դիտարկելը։
cat /etc/os-release
dpkg --print-architecture
apt-cache policy openfortivpnՏարբերակ և պահոցի անուն պարունակող թեկնածու տողը նշանակում է, որ դիստրիբուտիվն արդեն այս համակարգի համար կառուցում ունի։ Թեկնածուի բացակայությունը կամ այն փաթեթից թեկնածու, որը դուք չէիք նախատեսում օգտագործել, տեղեկություն է ձեր աղբյուրների մասին, ոչ թե այն մասին, որ ծրագրաշարը ինչ-որ տեղ գոյություն ունի։
Եթե մետատվյալների թարմացումը ձախողվի, այդ ձախողումը առանձին պահեք փաթեթի հարցից։ Անունների լուծումը, պահոցի տրանսպորտը, բացակայող Release ստորագրությունը և կյանքի ավարտին հասած փաթեթը բոլորը կոտրում են apt update-ը նախքան կլիենտի ներգրավվելը։ Աղբյուրների ուղղումը տարբեր խնդիր է VPN կլիենտ ընտրելուց, և երկուսը խառնելն այն ճանապարհն է, որով մարդիկ ընթացիկ համակարգը ուղղում են հնացած թողարկման։
Ինչ է ստուգում apt-ը, և ինչ չի ստանում ներբեռնված ֆայլը
Սովորական տեղադրումը հետևում է ստորագրությունների շղթային՝ արխիվը ստորագրում է իր ինդեքսը, ինդեքսը կրում է հեշեր յուրաքանչյուր փաթեթի համար, և փաթեթը պետք է համապատասխանի։ արխիվի նույնականացման հղում-ը առանձնացնում է այդ շղթան յուրաքանչյուր առանձին ֆայլին կցված ստորագրության ստուգման գաղափարից։
Հին HTTP հղումից պահված ֆայլը դրանից ոչինչ չունի։ Այն գալիս է առանց պահոցի ինքնության, չի թարմացվում, երբ դիստրիբուտիվը շտկում է կլիենտը, և ոչինչ չի գրանցում, թե ով է պատասխանատու այն փոխարինելու համար։ Սա դեռ կարող է օրինական ընտրություն լինել ամրագրված արտեֆակտ ունեցող ադմինիստրատորի համար, բայց ընտրությունը պետք է գա սեփականատիրոջ, ինչ-որ տեղ գրանցված ստուգիչ գումարի և հաջորդ անվտանգության թարմացման ծրագրի հետ։
Ստորագրության սխալների ճնշումը կամ TLS-ի ստուգման անջատումը՝ հին հրահանգը աշխատեցնելու համար, հեռացնում է գործընթացի միակ մասը, որն ինչ-որ բան ստուգում էր։ Փոխարենը վերականգնեք ձախողվող ստուգումը։
Տեղադրեք կլիենտը, ապա կապը վրիպազերծեք առանձին
Երբ գոյություն ունի պահպանվող թեկնածու, տեղադրեք այն սովորական վերանայված գործարքով և թույլ տվեք փաթեթի կառավարչին գրանցել, թե ինչ արեց։
Եթե տեղակայմանը իսկապես անհրաժեշտ է upstream-ից կառուցում, հետևեք նախագծի ընթացիկ կառուցման հրահանգներին և վերաբերվեք դրան որպես ծրագրաշարի, որը դուք այժմ պահպանում եք՝ զարգացման փաթեթները, pkg-config-ը, TLS գրադարանի վերնագրերը և PPP դեմոնը իրական կախվածություններ են, ինչպես նաև հեռացման ընթացակարգը, որը ձեզ ավելի ուշ պետք կգա։
Տեղադրումը միայն տեղային ծրագրաշարի փուլն է։ Դարպասը պետք է ընդունի կլիենտի արձանագրությունն ու նույնականացման հոսքը, կլիենտը պետք է վստահի դարպասի ներկայացրած վկայականին, իսկ թունելին անհրաժեշտ է աշխատող PPP շերտ՝ երթուղիներով և resolver-ի սեփականատիրոջով։ Ավարտված փաթեթային գործարքը ոչինչ չի ապացուցում այն մասին, թե արդյոք դարպասը ընդունում է հաշիվը կամ արդյոք մասնավոր տիրույթը հասանելի է։ Ստուգեք յուրաքանչյուր շերտ այնտեղ, որտեղ այն կոտրվում է, փոխարենը նորից գործարկելու տեղադրիչը։
Ծրագիրը, որը պետք է փոխարինի հին ֆայլի անունը
Նախ գրի առեք հարթակի ինքնությունը՝ ՕՀ-ի թողարկում, ճարտարապետություն և օգտագործվող աղբյուրների ցանկ։ Ապա նշեք այն լիազորված վայրը, որտեղից գալիս է փաթեթը՝ լինի դա դիստրիբուտիվի պահոց, ամրագրված բանալիով մատակարարի պահոց, թե ինքներդ կոմպիլացված և փաթեթավորված կառուցում։
Վերջում նշեք պահպանողին և թարմացման ուղին։ Pi-ն, որն աշխատեցնում է կլիենտ, որի սեփականատեր ոչ ոք չէ, կշարունակի աշխատել մինչև առաջին գրադարանային թարմացումը, և այնուհետև նույն խնդրով մեկը նորից կգտնի նույն ֆորումի թեման։
Ուղղված համոզմունքը բավական պարզ է մեկ տողով ասելու համար՝ հին փաթեթը ապացույց է, որ կլիենտը ժամանակին կառուցվել և աշխատել է, ոչ թե ապացույց, որ այն այսօր երեկոյան կտեղադրվի ձեր տախտակի վրա։ Ստուգեք երեք առանցքները, ապա ընտրեք ալիք, որը կարող եք շարունակել թարմացնել։