Подробный гайд: Список пакетов компонента main в Astra Linux
Представлен подробный технический гайд по работе с компонентом main в репозиториях Astra Linux. Информация актуальна для современных версий (1.7, 1.8, 2.12/2.13) и учитывает особенности Debian-основы системы, а также требования ФСТЭК/ФСБ для сертифицированных редакций.
1. Что такое компонент main в Astra Linux
main — это основной (официальный) компонент репозитория, содержащий:
- Свободное программное обеспечение с открытым исходным кодом.
- Пакеты, прошедшие внутреннее тестирование и сертификацию разработчиком Astra Linux.
- Ядро, базовые утилиты, библиотеки, компоненты безопасности и официальные графические среды.
- Пакеты, для которых обеспечивается техническая поддержка и выпуск обновлений безопасности.
Отличия от других компонентов:
| Компонент | Лицензия | Поддержка | Примеры |
|---|---|---|---|
main |
Открытые (GPL, MIT, Apache и др.) | Официальная, сертифицированная | systemd, astra-desktop, parsec, coreutils |
contrib |
Открытые, но зависят от non-free |
Ограниченная | драйверы, проприетарные зависимости |
non-free |
Проприетарные/ограниченные | Не сертифицированы | бинарные драйверы NVIDIA, некоторые кодеки |
В редакциях Special Edition (SE) состав main строго фиксирован для каждой ветки обновлений (smolensk, orel и т.д.). Самостоятельное добавление неподписанных пакетов в сертифицированных контурах нарушает требования безопасности.
2. Как получить список пакетов из main
APT не предоставляет прямой фильтрации по компоненту через apt list, поэтому используются следующие рабочие методы.
Способ 1: Парсинг метаданных репозитория (рекомендуемый)
sudo apt update
grep -h "^Package:" /var/lib/apt/lists/*_main_*Packages 2>/dev/null | \
sed 's/^Package: //' | sort -u > astra_main_packages.txt
wc -l astra_main_packages.txt # количество пакетов
В Astra Linux SE путь к файлам может содержать кодовое имя ветки, например: *_smolensk_main_*Packages или *_orel_main_*Packages.
Способ 2: Через aptitude (если установлен)
sudo apt install aptitude
aptitude search '~S main' --display-format '%p' | sort -u
Способ 3: Проверка принадлежности конкретного пакета
apt-cache policy <имя_пакета>
В выводе ищите строку вида:
500 http://mirror.astralinux.ru/astra/ <версия> main
3. Ключевые группы пакетов в main
Состав может незначительно отличаться между версиями, но базовая структура стабильна:
| Группа | Примеры пакетов | Назначение |
|---|---|---|
| Ядро и модули | linux-image-5.15-*, astra-kernel-modules, firmware-* |
Базовое ядро, драйверы, микрокод |
| Системные утилиты | coreutils, bash, systemd, util-linux, passwd |
Повседневное администрирование |
| Сеть и службы | openssh-server, network-manager, isc-dhcp-server, bind9 |
Сетевая инфраструктура |
| Графика и рабочий стол | fly-wm, astra-desktop, fly-admin-*, lightdm |
Официальные DE и утилиты управления |
| Безопасность | parsec, astra-secrets, keyutils, auditd, selinux-utils |
Мандатный контроль, аудит, шифрование |
| Разработка и офис | gcc, python3-*, git, libreoffice-*, texlive-* |
Инструменты разработки и документооборот |
| Управление пакетами | apt, dpkg, synaptic, astra-control-center |
Репозитории, обновления, GUI-админки |
Полный перечень всегда доступен в официальных метаданных репозитория:
https://mirror.astralinux.ru/astra/<версия>/dists/<кодовое_имя>/main/binary-amd64/Packages.gz
4. Управление пакетами из main
| Задача | Команда |
|---|---|
| Обновить индекс | sudo apt update |
| Установить пакет | sudo apt install <package> |
Обновить только main |
sudo apt full-upgrade -o APT::Get::Only-Upgrade-Targets="main" |
| Зафиксировать версию (для CE/SE) | sudo apt-mark hold <package> |
| Проверить зависимости | apt-cache depends <package> |
| Удалить без конфигов | sudo apt remove <package> |
| Полная очистка | sudo apt purge <package> |
В Astra Linux SE рекомендуется использовать apt full-upgrade вместо dist-upgrade, чтобы избежать установки пакетов из неподтверждённых компонентов.
5. Особенности редакций и веток обновлений
| Редакция | Ветка репозитория | Особенности main |
|---|---|---|
| Common Edition (CE) | stable, testing |
Широкий набор десктопных и dev-пакетов, ближе к Debian |
| Special Edition (SE) | smolensk (стабильная), orel (обновления) |
Строгая сертификация, фиксированные версии, обязательные компоненты Parsec/BLKC |
| Server Edition | server |
Минимальный набор, оптимизирован под headless-развёртывание |
Состав
mainменяется при выходе новых патч-уровней (например,2.12.43→2.12.44). Точные списки фиксируются в Release Notes наdocs.astralinux.ru.
6. Безопасность и проверка подлинности
Все пакеты в main подписаны GPG-ключом Astra Linux.
Проверка ключей:
# Современный способ (apt-key deprecated)
ls -l /etc/apt/trusted.gpg.d/ | grep astralinux
Валидация скачанного пакета:
dpkg-sig --verify /var/cache/apt/archives/<package>.deb
Запрет неподписанных пакетов:
echo 'APT::Get::AllowUnauthenticated "false";' | sudo tee /etc/apt/apt.conf.d/99no-unauth
В сертифицированных контурах отключение проверки подписей или установка пакетов из non-free/внешних источников нарушает аттестацию.
7. Практические скрипты
Экспорт установленных пакетов из main
#!/bin/bash
# Сохраняет только те пакеты, которые установлены из компонента main
dpkg -l | awk '/^ii/ {print $2}' | while read pkg; do
if apt-cache policy "$pkg" | grep -q "main"; then
echo "$pkg"
fi
done | sort -u > installed_main.txt
Поиск пакета по ключевому слову с указанием компонента
apt-cache search <ключевое_слово> | while read line; do
pkg=$(echo "$line" | awk '{print $1}')
if apt-cache policy "$pkg" | grep -q "main"; then
echo "[main] $line"
else
echo "[другое] $line"
fi
done
Важные примечания
- Динамичность списка: точный перечень пакетов в
mainзависит от версии Astra Linux, архитектуры (amd64,arm64,mips64el) и уровня обновлений. - Сертификация: в SE-редакциях изменение состава
mainбез согласования с ответственным за ИБ может привести к потере аттестата. - Локальные зеркала: при работе в закрытых контурах используйте
apt-ftparchiveилиrepreproдля создания оффлайн-зеркала с сохранением структурыmain. - Конфликты: пакеты из
mainмогут конфликтовать с аналогами из сторонних репозиториев. Всегда проверяйте приоритеты черезapt-cache policy.