Պահոցի փաթեթ, թե VPN հաճախորդի փաթեթ. ինչն առաջինը։
Թողարկման փաթեթը գրանցում է միայն մեկ աղբյուր և մեկ ստորագրման բանալի։ Որոշեք՝ արժե՞ արդյոք մատակարարի պահոցը, ապա տեղադրեք հաճախորդը որպես առանձին քայլ։
Դուք տեղադրում եք մատակարարի փաթեթը, հրամանը վերադարձնում է զրո, և դեռ գործարկելու VPN ծրագիր չկա։ Դա տեղի է ունենում, երբ տեղադրված փաթեթը կարգավորել է պահոց, այլ ոչ թե տրամադրել հաճախորդը, և տարբերությունը երևում է նրանում, ինչ այն թողել է սկավառակի վրա։ Երկուսի կարիքն ունե՞ք, և ինչ հերթականությամբ, կախված է երեք պայմանից, ոչ թե մատակարարի անվանումից։ Ստորև տրված որոշումը աղբյուրի կարգավորումը, մետատվյալների թարմացումը և ծրագրի տեղադրումը պահում է առանձին գործողություններ՝ առանձին ապացույցներով։
Ինչ է իրականում փոխում յուրաքանչյուր փաթեթը
Պահոցի կարգավորման փաթեթը գրում է APT աղբյուրի գրառում, ներմուծում է այն ստորագրման բանալին, որին վստահում է այդ գրառումը, և դուրս է գալիս։ Դրա պարունակությունը /etc/apt-ի տակ գտնվող մի քանի ֆայլ և բանալիների շարք է, և ոչինչ գործարկելու համար։ Հաճախորդի փաթեթը տրամադրում է դեմոնը կամ աշխատասեղանի ծրագիրը, նրա գրադարանները և կախվածությունները, և հենց այդ օբյեկտն է հայտնվում ընտրացանկում կամ systemd միավորում։
-release-ով ավարտվող ֆայլերի անունները հուշում են առաջին տեսակը, բայց վերջավորությունը պայմանավորվածություն է, ոչ երաշխիք։ Փաթեթի դերի մասին վստահելի պնդումը նրա ֆայլերի ցանկն ու կախվածություններն են, և երկուսն էլ ընթեռնելի են ցանկացած բան տեղադրելուց առաջ։ Մատակարարը, որը վերաձևավորում է իր փաթեթավորումը, պահում է նույն ֆայլի անունը և փոխում բովանդակությունը, այնպես որ երկու տարվա վաղեմության թեմայից պատճենված պատասխանը կարող է նկարագրել փաթեթ, որն այլևս գոյություն չունի։ Կարդացեք մատակարարի ընթացիկ հրահանգները ձեր օգտագործած թողարկման համար, ապա ստուգեք, թե ինչ է հայտարարում փաթեթը։
Այդ բաժանումից բխում են երեք փուլ՝ գրանցել աղբյուրը, թարմացնել այն սնուցող մետատվյալները, ապա տեղադրել ծրագիրը անունով։ Debian-ի և Ubuntu-ի տեղադրման ուղեցույցը դրանք պահում է առանձին, և դրա համար հաճախորդը պահանջվում է ավելի ուշ քայլում, այլ ոչ թե աղբյուրը կարգավորած փաթեթի կողմից։
Երեք պայման, որոնք որոշում են հերթականությունը
Առաջին պայմանն այն է՝ մատակարարը հրապարակո՞ւմ է պահոց հենց ձեր տարածման թողարկման համար։ Մեկ հավաքածուի համար կառուցված աղբյուրի տողը կարող է լուծվել մեկ այլ հավաքածուի կախվածությունների դեմ և տեղադրել խառնուրդ, որ ոչ ոք չի փորձարկել։
Երկրորդն այն է՝ ձեր տարածումն արդեն պարունակո՞ւմ է հաճախորդը։ Երբ պարունակում է, տարածման փաթեթը հետևում է ձեր թողարկման գրադարանային անցումներին և անվտանգության թարմացումներին, մինչդեռ մատակարարի փաթեթը կարող է ավելի արագ շարժվել և բերել համօգտագործվող գրադարանների իր պատճենները։
Երրորդն այն է, թե որ գործառույթներն են ձեզ իսկապես պետք։ Մատակարարի կառուցվածքը կարող է տրամադրել ավելի նոր արձանագրության իրականացում կամ աշխատասեղանի ինտեգրում, որը ձեր տարածումը չի փաթեթավորել, և դա երկրորդ աղբյուր ընդունելու իրական պատճառ է։ Եթե տարածման կառուցվածքը ծածկում է ձեր օգտագործումը, երրորդ կողմի պահոց ավելացնելը գնում է թարմացման աշխատանք և ևս մեկ վստահության հարաբերություն շատ քչի դիմաց։
Որոշեք այդ երեք պատասխանները նախքան աղբյուրի տողի գոյությունը, որովհետև այն ավելի ուշ հեռացնելը նշանակում է մաքրել փաթեթն ու նրա բանալին։ Երբ դրանք որոշված են, մատակարարի ուղու ներսում հաջորդականությունը ընտրություն չէ՝ նախ աղբյուրը, երկրորդը՝ մետատվյալները, երրորդը՝ ծրագիրը, երբեք հակառակը։
Ստուգեք, թե ինչ է թողել թողարկման փաթեթը
Ուրիշ բան տեղադրելուց առաջ կարդացեք ֆայլերի ցանկը, ոչ թե նկարագրությունը։ Debian ընտանիքի համակարգերում փաթեթի մանիֆեստը պատասխանում է, թե ինչ է այն կարգավորել և ուր է հասել բանալին։
dpkg -L proton-vpn-release | grep -E 'apt|keyring'
apt-cache policy proton-vpn-gnome-desktop
grep -r protonvpn /etc/apt/sources.list.d/
Առաջին տողը ցույց է տալիս աղբյուրի ֆայլը և բանալիների շարքի ուղին, իսկ երկրորդը հայտնում է, թե կարգավորված աղբյուրները որ տարբերակը կարող են առաջարկել։ Եթե apt-cache policy ոչինչ չի տպում հաճախորդի անվան համար, մետատվյալների թարմացումը տեղի չի ունեցել կամ աղբյուրը նպատակաուղղված է այլ հավաքածուի։ Երրորդը հաստատում է, որ գրառումը գտնվում է այնտեղ, որտեղ APT-ն իրականում կարդում է։
Համապատասխանեցրեք բանալիների շարքի ուղին աղբյուրի տողի signed-by= դաշտին։ Սխալ պանակում գտնվող բանալին առաջացնում է չնույնականացված աղբյուրի սխալ, ինչը տարբեր խափանում է անհասանելի փաթեթից։
Կախվածության խափանումը դիտարկեք որպես առանձին փուլ
Ներբեռնված .deb-ը dpkg -i-ով տեղադրելը ոչինչ չի լուծում. այն ստուգում է կախվածությունները, հայտնում է ինչն է բացակայում և փաթեթը թողնում է կիսով չափ կարգավորված։ Դա սպասվող վարք է, ոչ թե վնասված ներբեռնում։
Այնուհետև apt --fix-broken install-ը APT-ից պահանջում է հետևողական վիճակ ձեր ունեցած աղբյուրներից։ APT-ն չգիտի, թե որ VPN-ն էիք ուզում, և նրա պլանը կարող է հեռացնել փաթեթներ՝ գտած սահմանափակումը բավարարելու համար։ Կարդացեք առաջարկվող գործարքը նախքան այո պատասխանելը, և կանգ առեք, եթե հեռացումները դիպչում են ձեզ անհրաժեշտ բանի։ Վերանորոգումը պլանը չկարդալով կրկնելը այն ուղին է, որով կախվածության փոքր բացը դառնում է աշխատասեղան, որն այլևս չի բացվում։
Պահեք փաթեթների կառավարչի առաջին իմաստալից հաղորդագրությունը և դասակարգեք այն նախքան գործելը։ Չստորագրված պահոցը, փաթեթ, որը կարգավորված աղբյուրները չեն պարունակում, տարբերակների բախումը և հաճախորդ, որը բացվում է ու հետո մահանում, չորս առանձին խափանումներ են։
Ստուգեք ծրագիրը, ոչ թե պահոցը
Հաստատեք, որ հաճախորդը հասել է տեղադրված վիճակին, ապա հաստատեք, որ ծրագիրը բացվում է։ dpkg-query -W -f='${Status} ${Version}' proton-vpn-gnome-desktop-ը պետք է հայտնի install ok installed՝ տարբերակով, և դրանից հետո գործարկման ձախողումը ծրագրի խնդիր է, ոչ թե փաթեթավորման։
Գրանցեք պահոցի սեփականատիրոջը և ծրագրի փաթեթը որպես առանձին օբյեկտներ, որպեսզի ավելի ուշ հեռացումը վերցնի ճիշտը և մյուսը թողնի անձեռնմխելի։ Երբ մատակարարը փոխում է իր ուղեցույցը, աղբյուրի գրառումն է այն, ինչ նորից կարդում եք. հաճախորդի անունն է այն, ինչ նորից տեղադրում եք։