Репозитории и уведомление о подписке: первая неожиданность после установки
На свежей установке обновление падает с ошибкой проверки подлинности, и ничего не сломано: репозиторий по умолчанию платный. В этой записи, репозитории, настоящая разница между ними и опасная однострочная команда, гуляющая по форумам.
AtlasPVE ·
Эта статья отвечает на
- proxmox ошибка репозитория enterprise
- proxmox репозиторий no-subscription
- proxmox ошибка 401 при обновлении
- proxmox уведомление о подписке
- proxmox как сменить репозиторий
Установка завершается, первое, что все пробуют, это обновление, и в ответ приходит ошибка проверки подлинности. Ничего не сломано: репозиторий по умолчанию платный, и он ждёт ключ подписки.
Три репозитория, три назначения
Корпоративный репозиторий. Платный, несёт пакеты, которые проверялись дольше всех. Установки с подпиской используют его.
Репозиторий без подписки. Бесплатный, несёт те же пакеты. Разница не в содержимом, а в ожидании: пакеты попадают сюда раньше, то есть после того, как их погоняло меньше людей.
Тестовый репозиторий. Пакеты до выпуска. Он существует для проб, а не для машины, на которой держится ваша работа.
Самое частое недоразумение здесь такое: бесплатный репозиторий, это не обходной путь, а собственное официальное предложение Proxmox. Разница не в лицензии, а во времени вызревания.
Какой выбрать
Для машины, на которой действительно держится работа, есть два честных варианта: либо вы пользуетесь корпоративным репозиторием, либо берёте бесплатный и привычку ждать берёте на себя. Второе означает: не ставить пакет в ту же минуту, как он появился, подождать несколько дней, прочитать примечания к выпуску. На платной стороне добрая часть того, что вам продаёт поставщик, это как раз этот срок ожидания.
Настоящая опасность, смешивать репозитории
Оставить включёнными одновременно стабильный и тестовый репозиторий, значит тянуть пакеты из семейства, которого вы не хотели, и выбраться из этого трудно. Вопрос при включении репозитория не «работает ли», а «не решаю ли я сейчас, из какого семейства эта машина будет питаться дальше».
Уведомление о подписке
Уведомление, которое появляется при входе в панель, это напоминание, а не ограничение. Ни одна возможность не отключается, ничто не замедляется. Оно может раздражать, но функционального действия не имеет.
⚠️ Однострочная команда, гуляющая по форумам
В интернете ходит готовая команда, чтобы заглушить это уведомление, и не выполняйте её. Причина измерена:
Эта команда пытается изменить условие в библиотеке интерфейса. Но в том виде регулярных выражений, который она использует, вертикальная черта означает «или», а не обычный символ. Когда двойная черта из JavaScript переносится как есть, между двумя «или» возникает пустая альтернатива, а пустая альтернатива совпадает в каждой точке файла. При проверке на копии настоящего файла результат вышел такой: изменились 26458 строк из 26458, а число false в файле выросло с 558 до 26458. То есть администратор, запустивший эту команду, разрушает библиотеку интерфейса целиком.
Вдобавок нужное условие даже не на одной строке: Proxmox растягивает его на шесть. Значит, эта построчная команда всё равно никогда не нашла бы нужного места.
Общий урок идёт дальше: команда, скопированная с форума, выполняется на вашей машине с вашими правами, и результат никто не смотрит. Если вы не можете прочитать, что она делает, не запускайте её на машине, на которой держится ваша работа.
Что делает Atlas
Atlas позволяет менять репозитории из панели, то есть вы решаете, из какого семейства питается машина, не редактируя файлы.
Заглушение и возврат уведомления о подписке тоже в панели, и работа опирается на три вещи. Используемый образец терпим к пробелам, но точен по самому условию: если Proxmox изменит форматирование, он всё равно совпадёт, а если Proxmox действительно изменит условие, он не совпадёт, и тогда ничего не делается. После записи файл перечитывается и проверяется; если ожидаемого результата нет, восстанавливается резервная копия. А текст, поставленный на место изменения, несёт метку, так что вопрос «изменена ли эта машина» решается точно, а не на глазок.
Все три шага были введены после того, как опасность вышеупомянутой команды была измерена.
Источники
Собственная документация Proxmox. На английском, и последнее слово в этом вопросе за ней.