Отговор във форум ви дава пълно име на файл и името изглежда като решението: един .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 слой плюс маршрути и собственик на резолвера. Завършена транзакция на пакет не доказва нищо за това дали шлюзът приема акаунта или дали частният диапазон е достъпен. Тествайте всеки слой там, където се чупи, вместо да пускате инсталатора отново.

Планът, който трябва да замени старото име на файла

Запишете първо идентичността на платформата: издание на ОС, архитектура и списъка с източници, които се използват. След това назовете оторизираното място, от което идва пакетът — дали е дистрибуционно хранилище, хранилище на доставчик с фиксиран ключ или сборка, която сами компилирате и пакетирате.

Накрая назовете поддържащия и пътя за обновяване. Pi, който изпълнява клиент, който никой не притежава, ще продължи да работи до първата актуализация на библиотека и тогава същата форумна тема отново ще бъде намерена от някого със същия проблем.

Коригираното убеждение е достатъчно просто, за да се формулира в един ред: старият пакет е доказателство, че клиентът някога се е компилирал и е работил, а не доказателство, че ще се инсталира на вашата платка тази вечер. Проверете трите оси, после изберете канал, който можете да продължите да обновявате.

Подобни статии