Неге apt-cache VPN пакетіңіз үшін орнатылған (жоқ) көрсетеді
Орнатылған (жоқ) VPN пакетінің орнатылмағанын білдіреді, оның жоқ екенін емес. Дереккөздерді өңдеу алдында кандидат, бекіту және архитектура жолдарын оқыңыз.
Installed: (none) деп хабарлайтын VPN пакеті жоғалып кетпеген; ол жай ғана орнатылмаған. Оны орнатуға бола ма, соны шешетін жол — Candidate, оны APT индекстерден, suite атауынан, архитектурадан және қолданыстағы бекіту ережелерінен алады. Жоғалған VPN пакеті туралы хабарламалардың көбі пакеттеу емес, кандидат мәселесі болып шығады. Дереккөздің бір жазбасына қол тигізбес бұрын екі жолды да оқыңыз.
Мен алдымен кандидатты тексеремін, өйткені бұл бір командаға тұрады және әдеттегі болжамдардың жартысын жоққа шығарады.
apt-cache policy шығысы сізге не айтады
apt-cache policy жергілікті пакет кэшін оқиды, желіні емес. Ол орнатылған нұсқаны, кандидат нұсқасын және пакетті ұсынатын әрбір индекстің кестесін оған тіркелген басымдықпен бірге шығарады.
apt-cache policy openvpn
apt-cache madison openvpn
apt list -a network-manager-openvpnКандидат — APT дәл қазір таңдайтын нұсқа. madison әр дереккөздің өз басымдығымен не ұсынатынын тізіп береді, осылайша индексте бар, бірақ бекіту жарысында ұтылатын пакетті байқайсыз. apt-cache нұсқаулығы екеуін де кэшті оқу деп сипаттайды, сондықтан олардың ешқайсысы айнаның қазір қолжетімді екенін дәлелдемейді.
Егер кандидат жолы бос болса немесе (none) көрсетсе, конфигурацияланған дереккөздерде бұл жүйе үшін, оның конфигурациясындағыдай, ештеңе жарамды емес.
Кандидаттың жоғалуының төрт себебі
Іс жүзінде себеп әрдайым дерлік төрт нәрсенің бірі болады және әрқайсысының өз шешімі бар.
Дереккөздеріңіздегі suite атауы пакет құрастырылған дистрибутивке сай болуы керек. trixie айнасына бағытталған Debian bookworm жүйесі немесе жаңарту кезінде sources.list.d файлында аты өзгертілген Ubuntu шығарылымы тек басқа suite-те бар пакеттер үшін ештеңе шешпейді. Әр жазбадағы suite өрісімен lsb_release -cs мәнін салыстырыңыз.
APT тек dpkg білетін архитектуралар үшін құрастырылған пакеттерді көреді. 32-биттік контейнер, arm64 бейнесі немесе тек amd64 үшін жіберілетін пакетті сұрайтын Raspberry Pi орнатуы қате хабарламасының орнына бос кандидат алады. dpkg --print-architecture және dpkg --print-foreign-architectures қай жиынтықта екеніңізді айтады.
Компоненттер де маңызды. contrib немесе non-free ішіндегі пакет тек main қосылған кезде көрінбейді, ал Ubuntu-ның universe-і дәл солай әрекет етеді. Индекс бар және пакет сонда; тек қосылған компоненттер тізіміңіз оны қамтымайды.
Бекіту — ең тыныш себеп. /etc/apt/preferences.d ішіндегі файл пакетті орнату шегінен төмен шектей алады, содан кейін мүлдем жақсы кандидат шығыстан жоғалады, ал индекс оны әлі де тізіп тұрады. policy әр дереккөздің қасында басымдықтарды шығаратындықтан, әр дереккөзі төмен бекіту нөмірін таситын пакет — белгі.
Ескірген индекстер жоқ пакеттерге ұқсайды
Кэш — бұл сурет. Егер соңғы apt update бір индексте сәтсіз аяқталса, сұраулар ескі көшірмеден жауап беруді жалғастырады, ал күткен пакетіңіз сол көшірмеде болмауы мүмкін.
apt update қателерді әр индекс бойынша шығарады, сондықтан соңғы жолға бірден көшудің орнына оларды оқыңыз.
Қолтаңба қатесі, мерзімі өткен release файлы немесе қолжетімсіз айна себебінен сәтсіз жаңарту алдыңғы индексті орнында қалдырады. Бұл орынды шешім, өйткені айна қысқа уақыт өшсе, жұмыс істейтін кэшті сақтайды. Жанама әсері — қойма офлайн болса да іздеу сәтті болуы мүмкін. Бұл сондай-ақ индекстің соңғы рет қашан алынғанын білмейінше пакеттің жоқтығы ештеңені дәлелдемейтінін білдіреді. Пакет атауын кінәламас бұрын /var/lib/apt/lists астындағы файл күндерін тексеріңіз.
Шынымен қажет пакетті атаңыз
OpenVPN — демон, ал адамдар әдетте қалайтын бөліктер жеке пакеттер.
Қозғалтқыш, NetworkManager плагині және жұмыс үстелі редакторы үш атаулы үш пакет, ал плагиннің дистрибутивтер арасында атауы өзгешеленетін GTK нұсқасы бар. apt-cache search --names-only openvpn сипаттамалардың орнына атаулар мен ұсынылған атауларды сәйкестендіреді, ал заттың атын шамамен білгенде дәл осы керек.
Егер атау шынымен белгісіз болса, сипаттамалардан бір рет іздеп, содан кейін нақты атауларға оралыңыз. Басқа дистрибутивтен алынған -gui жұрнағын қосып, пакет енді жоқ деп қорытынды жасамаңыз.
Дереккөздерді соңында өзгертіп, содан кейін операцияны тексеріңіз
Қойма қосу жаңартуларыңызды кім жеткізетінін өзгертеді, сондықтан ол тергеудің басына емес, соңына жатады.
Оған дейін шығарылымды, архитектураны, компонентті және бекіту күйін растаңыз. Төртеуінің қайсысын тексергеніңізді жазып қойыңыз, келесі адам қайта шолмасын. Егер төртеуі де дұрыс болып, кандидат әлі жоқ болса, адал қорытынды — бұл шығарылым сол пакетті жеткізбейді. Қалған нұсқалар — backport, жеткізуші пакеті немесе басқа қолдау көрсетілетін шығарылым, және олардың әрқайсысы болжам емес, саналы таңдау.
Кандидат пайда болғанда, бекітпес бұрын модельдеңіз: пакет атауымен apt-get install --simulate нені тартатынын және нені жоятынын көрсетеді. Пакеттің қолжетімділігі, орнату және жұмыс істейтін туннель үш бөлек кезең болып қалады, ал туннель трафикті тасымалдамас бұрын әлі де өз профилін, тіркелгі деректерін, маршруттарын және DNS-ін қажет етеді.