Подробный гайд: Ошибка failed to init manager: отсутствует пакет astra-upgrade-config - Часть 1
Ошибка вида:
failed to init manager: не удалось создать настройки: в репозиториях, указанных в конфигурационном файле отсутствует пакет astra-upgrade-config. пожалуйста, проверьте репозитории в конфигурационном файле.
обычно означает, что менеджер обновления или миграции Astra Linux не может инициализировать настройки, потому что не видит пакет astra-upgrade-config в подключённых репозиториях. Чаще всего проблема связана не с самим менеджером, а с источниками пакетов: репозиторий не подключён, кэш apt не обновлён, указана неверная версия или архитектура, репозиторий недоступен либо локальное зеркало неполное.
1. Сделайте резервную копию конфигурации
Перед изменениями сохраните текущие настройки apt и, если есть, настройки менеджера:
sudo mkdir -p /root/backup-astra-upgrade
sudo cp -a /etc/apt /root/backup-astra-upgrade/apt-$(date +%F-%H%M%S)
sudo tar -czf /root/backup-astra-upgrade/astra-upgrade-config-dirs-$(date +%F-%H%M%S).tar.gz \
/etc/astra-upgrade* \
/etc/astra-upgrade-manager* \
/opt/astra-upgrade* \
2>/dev/null || true
Это позволит быстро вернуться назад, если изменения придётся откатывать.
2. Определите версию, редакцию и архитектуру системы
Выполните:
cat /etc/os-release
uname -m
dpkg --print-architecture
Пример важных значений:
PRETTY_NAME="Astra Linux ..."
VERSION_ID="1.8" или "1.7"
и архитектура, например:
x86_64
amd64
или:
arm64
Репозитории должны совпадать с:
- версией системы: 1.7, 1.8 и т.д.;
- архитектурой:
x86_64/amd64,arm64,armelи т.п.; - редакцией или поставкой;
- путём репозитория:
base,update,upgrade,extendedи т.п., в зависимости от поставки.
Если репозиторий указан от другой версии или архитектуры, пакет astra-upgrade-config может быть недоступен.
3. Обновите кэш пакетов и проверьте наличие пакета
Выполните:
sudo apt update
Затем проверьте, видит ли система пакет:
apt-cache policy astra-upgrade-config
Также полезно выполнить:
apt-cache madison astra-upgrade-config
apt list -a astra-upgrade-config
Возможные варианты
Вариант A: пакет не найден
Если вывод примерно такой:
N: Unable to locate package astra-upgrade-config
или:
Package: astra-upgrade-config
Installed: (none)
Candidate: (none)
значит, пакет не найден в подключённых репозиториях. Нужно проверять источники.
Вариант B: пакет доступен
Если есть строка вида:
Candidate: 1.x.x-x
можно попробовать установить пакет:
sudo apt install astra-upgrade-config
или переустановить, если он уже установлен:
sudo apt install --reinstall astra-upgrade-config
После этого повторите запуск менеджера.
4. Проверьте, какие репозитории подключены
Посмотрите системные источники apt:
cat /etc/apt/sources.list
и файлы в каталоге:
ls -l /etc/apt/sources.list.d/
cat /etc/apt/sources.list.d/*.list 2>/dev/null
Можно вывести все активные строки deb:
sudo grep -RsE '^[[:space:]]*deb' /etc/apt/sources.list /etc/apt/sources.list.d/
Обратите внимание на следующие моменты:
- Есть ли репозиторий именно для вашей версии.
- Нет ли путаницы между версиями, например 1.7 и 1.8.
- Правильная ли указана архитектура.
- Подключены ли нужные компоненты:
main,contrib,non-free. - Нет ли только установочного
cdrom-репозитория без обновлений. - Доступен ли репозиторий по сети.
- Нет ли устаревших или сторонних репозиториев, которые ломают
apt update.
5. Типичная причина: подключён только базовый установочный репозиторий
Очень частая ситуация: система настроена на установочный диск или базовый образ:
deb cdrom:[...] ...
или:
deb file:/mnt/astra-base ...
но в нём нет пакета astra-upgrade-config, потому что он находится в обновляющем, расширенном или отдельном upgrade-репозитории. В этом случае нужно подключить дополнительный репозиторий: update, upgrade, extended или аналогичный, в зависимости от вашей поставки.
6. Если есть доступ к официальным интернет-репозиториям
Создайте отдельный файл репозитория, например:
sudoedit /etc/apt/sources.list.d/astra-upgrade-repo.list
Шаблон нужно адаптировать под вашу версию и архитектуру.
Общий вид обычно похож на:
deb https://dl.astralinux.ru/astra/stable/VERSION_ARCH/repository-base/ SUITE main contrib non-free
deb https://dl.astralinux.ru/astra/stable/VERSION_ARCH/repository-update/ SUITE main contrib non-free
Где нужно заменить:
VERSION_ARCH— например1.8_x86-64;SUITE— значение изRelease, часто совпадает сVERSION_ARCH.
Если в вашей поставке есть отдельный каталог repository-upgrade или repository-extended, его также нужно добавить, если именно там лежит astra-upgrade-config.
Примерный шаблон для проверки:
# Пример. Обязательно замените версию и архитектуру под вашу систему.
# Не копируйте вслепую, если у вас другая редакция или архитектура.
deb https://dl.astralinux.ru/astra/stable/1.8_x86-64/repository-base/ 1.8_x86-64 main contrib non-free
deb https://dl.astralinux.ru/astra/stable/1.8_x86-64/repository-update/ 1.8_x86-64 main contrib non-free
# Если в вашей схеме поставки есть, добавьте также:
# deb https://dl.astralinux.ru/astra/stable/1.8_x86-64/repository-upgrade/ 1.8_x86-64 main contrib non-free
# deb https://dl.astralinux.ru/astra/stable/1.8_x86-64/repository-extended/ 1.8_x86-64 main contrib non-free
Если установлен ключевой пакет, лучше указывать ключ явно, например:
deb [signed-by=/usr/share/keyrings/astra-archive-keyring.gpg] https://dl.astralinux.ru/astra/stable/1.8_x86-64/repository-update/ 1.8_x86-64 main contrib non-free
Но путь к ключу зависит от установленного пакета ключей. Проверить можно так:
ls -l /usr/share/keyrings/ /etc/apt/trusted.gpg.d/
dpkg -l | grep -i keyring
После правки источников выполните:
sudo apt update
apt-cache policy astra-upgrade-config
Если пакет появился:
sudo apt install astra-upgrade-config
7. Если интернет-репозиторий недоступен: проверка адреса
Проверьте, что путь действительно существует.
Например:
curl -I https://dl.astralinux.ru/astra/stable/
или для конкретного каталога:
curl -I https://dl.astralinux.ru/astra/stable/1.8_x86-64/repository-update/
Можно проверить наличие пакета в индексах репозитория:
curl -fsSL https://dl.astralinux.ru/astra/stable/1.8_x86-64/repository-update/dists/1.8_x86-64/main/binary-amd64/Packages.gz \
| zgrep -m1 '^Package: astra-upgrade-config$'
Если команда ничего не выводит, возможно:
- пакет находится в другом репозитории;
- указана другая версия;
- указан другой компонент;
- указана другая архитектура;
- зеркало неполное;
- путь указан неверно.
8. Если вы используете локальные ISO-образы или диски
Если обновление выполняется в закрытом контуре без интернета, пакет astra-upgrade-config должен присутствовать на одном из подключённых образов или дисков.
8.1. Смонтируйте образы
Например:
sudo mkdir -p /mnt/astra-base
sudo mkdir -p /mnt/astra-update
sudo mount -o loop,ro /путь/к/astra-base.iso /mnt/astra-base
sudo mount -o loop,ro /путь/к/astra-update.iso /mnt/astra-update
Если у вас несколько образов, смонтируйте все, которые относятся к обновлению или расширенной поставке.
8.2. Проверьте структуру репозитория
Посмотрите, какие дистрибутивные каталоги есть:
ls -l /mnt/astra-base/dists/
ls -l /mnt/astra-update/dists/
Посмотрите Suite и Components:
cat /mnt/astra-base/dists/*/Release | grep -E 'Suite|Components'
cat /mnt/astra-update/dists/*/Release | grep -E 'Suite|Components'
Например, если видите:
Suite: 1.8_x86-64
Components: main contrib non-free
то строка репозитория будет примерно:
deb file:/mnt/astra-update 1.8_x86-64 main contrib non-free
8.3. Добавьте локальный репозиторий
Создайте файл:
sudoedit /etc/apt/sources.list.d/astra-local.list
Пример:
deb [trusted=yes] file:/mnt/astra-base 1.8_x86-64 main contrib non-free
deb [trusted=yes] file:/mnt/astra-update 1.8_x86-64 main contrib non-free
Параметр trusted=yes допустим только для официальных локальных образов в изолированном контуре. Лучше использовать ключевой пакет, если он доступен.
Если структура репозитория без dists, можно использовать вариант:
deb [trusted=yes] file:/mnt/astra-update ./
Но сначала проверьте содержимое:
ls -l /mnt/astra-update/
8.4. Обновите кэш
sudo apt update
apt-cache policy astra-upgrade-config
Если пакет найден:
sudo apt install astra-upgrade-config
8.5. Если используется CD/DVD
Можно использовать штатный механизм:
sudo apt-cdrom add
Затем:
sudo apt update
9. Если используется корпоративное локальное зеркало
Если у вас внутренний зеркальный репозиторий, убедитесь, что он синхронизирован полностью.
Проверьте наличие пакета в зеркале:
curl -fsSL http://ваш-зеркальный-сервер/astra/stable/1.8_x86-64/repository-update/dists/1.8_x86-64/main/binary-amd64/Packages.gz \
| zgrep -m1 '^Package: astra-upgrade-config$'
Если пакет не найден, зеркало неполное. Нужно синхронизировать его с источником или попросить администраторов добавить нужный репозиторий.
Также проверьте, что в конфигурации apt указан именно тот адрес, где пакет действительно есть:
sudo grep -RsE '^[[:space:]]*deb' /etc/apt/sources.list /etc/apt/sources.list.d/
10. Проверьте, не указан ли репозиторий в отдельном конфигурационном файле менеджера
Ошибка говорит:
в репозиториях, указанных в конфигурационном файле
Это может означать, что менеджер использует не только системные источники /etc/apt/sources.list, но и свой собственный конфигурационный файл.
Найдите возможные конфиги:
sudo find /etc /opt /usr/local /var -type f \
\( -iname '*upgrade*.conf*' -o -iname '*upgrade*.cfg*' -o -iname '*manager*.conf*' \) 2>/dev/null
Также можно поискать упоминание пакета:
sudo grep -RIn "astra-upgrade-config" /etc /opt /usr/local /var 2>/dev/null
И поиск секций про репозитории:
sudo grep -RInE 'repo|repository|source|mirror|url' /etc/astra-upgrade* /etc/astra-upgrade-manager* /opt/astra-upgrade* 2>/dev/null
Если файл найден, проверьте в нём:
- адрес репозитория;
- версию;
- архитектуру;
suite;- компоненты
main,contrib,non-free; - наличие нужного репозитория:
update,upgrade,extended; - отсутствие опечаток;
- права на чтение файла.
После правки конфига менеджера перезапустите соответствующий сервис, если он есть, или повторно запустите менеджер.
Например, если сервис существует:
systemctl list-units --type=service | grep -i upgrade
или:
systemctl list-units --type=service | grep -i manager
Если сервис найден:
sudo systemctl restart имя-сервиса
Если менеджер запускается вручную — закройте его и запустите заново.
11. Если пакет установлен, но ошибка остаётся
Проверьте состояние пакета:
dpkg -l astra-upgrade-config
dpkg -s astra-upgrade-config
Если пакет установлен, попробуйте:
sudo apt update
sudo apt install --reinstall astra-upgrade-config
sudo dpkg --configure -a
sudo apt -f install
Посмотрите, какие файлы установил пакет:
dpkg -L astra-upgrade-config
Обратите внимание на каталоги:
/etc/astra-upgrade*
/usr/bin/*
/usr/share/*
Возможно, после установки нужно выполнить утилиту настройки, если она предусмотрена поставкой.
12. Если apt update выдаёт ошибки
Пакет не появится, пока apt update не отработает корректно.
Запустите:
sudo apt update
и внимательно посмотрите на ошибки.
12.1. Ошибки 404 / Not Found
Пример:
Err:1 https://dl.astralinux.ru/... 404 Not Found
Причина:
- неверная версия;
- неверная архитектура;
- неверный путь;
- репозиторий перемещён;
- используется старый адрес.
Проверьте адрес через браузер или curl:
curl -I https://dl.astralinux.ru/astra/stable/
Исправьте строку репозитория.
12.2. Ошибки GPG / подписи
Пример:
The following signatures couldn't be verified because the public key is not available
NO_PUBKEY ...
Проверьте ключи:
dpkg -l | grep -i keyring
ls -l /etc/apt/trusted.gpg.d/ /usr/share/keyrings/
Если доступен пакет ключей из официального образа, установите его:
sudo apt install astra-archive-keyring
Если его нет в текущих источниках, его нужно взять с официального установочного носителя или из документации к вашей версии. Не рекомендуется отключать проверку подписи надолго. Временный trusted=yes допустим только для проверенных локальных образов в изолированной сети.
12.3. Ошибки сертификатов
Пример:
certificate verification failed
unable to access https site
Проверьте системную дату и время:
date
timedatectl
Если дата неверна, это часто приводит к ошибкам проверки SSL-сертификатов:
sudo timedatectl set-ntp true
Также убедитесь, что в системе установлены актуальные корневые сертификаты, например пакет ca-certificates.
13. Проверьте компоненты репозитория
Если в строке источника указано только:
main
а пакет находится в contrib или non-free, он не будет найден.
Проверьте доступные компоненты в Release:
cat /mnt/astra-update/dists/*/Release | grep Components
или для интернет-репозитория посмотрите содержимое каталога dists.
Если нужно, исправьте строку, например:
deb https://dl.astralinux.ru/astra/stable/1.8_x86-64/repository-update/ 1.8_x86-64 main contrib non-free
Затем выполните:
sudo apt update
и снова проверьте:
apt-cache policy astra-upgrade-config
Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.