Оглавление |
---|
Предупреждение |
---|
Использование стороннего программного обеспечения в аттестованных информационных системах, функционирующих под управлением ОС Astra Linux Special Edition |
Предупреждение |
---|
Не забывайте удалять сторонние репозитории после завершения их использования. |
См. также Создание локальных и сетевых репозиториев
Информация |
---|
Данная статья применима к:
|
Информация |
---|
Таблицы соответствия версий Astra Linux CE/Astra Linux SE и Debian можно посмотреть по ссылке: Дополнительные пакеты и СПО Таблицы соответствия версий Astra Linux CE/Astra Linux SE и аппаратных платформ можно посмотреть по ссылке Таблица вариантов исполнения ОС СН «Astra Astra Linux Special Edition»Edition. |
Примечание | ||
---|---|---|
| ||
Все команды, котрые вносят изменения в систему, выполняются:
То есть выполняются либо через команду sudo для каждой выполняемой команды, либо для группы команд в сессии администратора после выполнения команды:
|
Установка пакетов при подключенном репозитории производится в терминале командой:
Command |
---|
sudo apt install <имя пакета>... |
также установка пакетов и настройка репозиториев может производиться с помощью графического менеджера пакетов Synaptic.
Описание структуры папок на download.astralinux.ru и его зеркалах
Ветка | Путь | Описание | ||
---|---|---|---|---|
stable |
| |||
testing | https://download.astralinux.ru/astra/testing |
| ||
experimental | https://download.astralinux.ru/astra/experimental |
| ||
frozen | https://download.astralinux.ru/astra/frozen |
| ||
current |
|
Приоритеты репозиториев
Установщик по умолчанию, если иное не задано в файлах настройки приоритетов, старается устанавливать более новые версии пакетов.
При этом изменения номеров минорных версий установщиком не учитываются, т.е.:
- При возможности установки пакетов пакет_1.1.1-100 и пакет_1.1.2-1 (отличие в последней цифре номера мажорной версии) будет установлен пакет_1.1.2, как имеющий старшую мажорную весрсию;
- При возможности установки пакетов пакет_1.1.1-1 и пакет_1.1.1-100 (мажорные версии совпадают, отличия в минорных версиях) будет установлен первый найденный в репозиториях вариант пакета.
Приоритеты выбора репозиториев задаются в каталоге /etc/apt/preferences.d/ или в файле /etc/apt/preferences (устаревший способ).
Подробности см. по ссылке
Если приоритеты выбора репозитория не заданы явно, то
- неподписанные репозитории имеют меньший приоритет, чем подписанные;
- репозитории обрабатываются в порядке их перечисления в конфигурационных файлах.
Проверить приоритеты репозиториев для конкретного пакета можно командой:
Command |
---|
apt-cache policy имя_пакета |
Подключение репозиториев ОС Astra Linux Special Edition РУСБ.10015-01
Подключение репозиториев на DVD дисках
вставить загрузочный диск в привод и выполнить команду:
Command | ||||
---|---|---|---|---|
| ||||
|
для подключения диска со средствами разработки нужно еще вставить диск со средствами разработки и выполнить команду:
Command | ||||
---|---|---|---|---|
| ||||
|
Подключение образов ОС скопированных на локальный жесткий диск
создать копию DVD диска на локальном жестком диске можно выполнив команду:
Command | ||||
---|---|---|---|---|
| ||||
|
или просто скопировав содержимое диска в выбранную папку.
Смонтировать iso файл в выбранную папку можно выполнив команду:
Command | ||||
---|---|---|---|---|
| ||||
sudo mount -o loop /opt/cd.iso /opt/repo |
для подключения репозиториев которые находятся в локальной папке:
в /etc/apt/sources.list надо вписать строку(остальные строки убрать или закомментировать символом #):
Блок кода | ||
---|---|---|
| ||
deb file:///<папка с основным диском> smolensk contrib main non-free # для разработчиков нужно добавить еще одну строку: deb file:///<папка с диском для разработчиков> smolensk contrib main non-free |
Command | ||||
---|---|---|---|---|
| ||||
sudo apt update |
Подключение репозиториев Astra Linux Common Edition
Подключение репозиториев текущей версии orel-stable- 2.12
Убедитесь, что у вас установлены пакеты apt-transport-https и ca-certificates, обеспечивающие возможность загрузки пакетов из репозиториев по защищенному протоколу HTTPS.
Если нет - то установите их:
Информация |
---|
sudo apt install apt-transport-https ca-certificates |
В /etc/apt/sources.list прописать путь к основному репозиторию (stable):
Блок кода | ||
---|---|---|
| ||
deb https://download.astralinux.ru/astra/stable/orel/repository orel contrib main non-free |
Или, по необходимости, к репозиторию testing или experimantal:
Примечание |
---|
Не рекомендуется подключать одновременно репозитории testing и experimental, так как их совместимость друг с другом не гарантируется. |
Блок кода | ||
---|---|---|
| ||
deb https://download.astralinux.ru/astra/testing/orel/repository orel contrib main non-free или deb https://download.astralinux.ru/astra/experimental/orel/repository orel contrib main non-free |
Далее выполнить:
Command |
---|
sudo apt update |
Обновление системы:
Command |
---|
sudo apt dist-upgrade |
Подключение сторонних репозиториев
Подключение репозиториев Debian 9 "Stretch"
С установкой пакета debian-archive-keyring
Для Astra Linux Common Edition 2.12.8 установить пакет dirmngr для управления ключами и пакет debian-archive-keyring, содержащий ключи к репозиториям Debian:
Command |
---|
sudo apt install debian-archive-keyring dirmngr |
В /etc/apt/sources.list добавить ссылку на репозиторий Debian:
Блок кода | ||
---|---|---|
| ||
deb https://mirror.yandex.ru/debian/ stretch main contrib non-free |
После добавления ссылки выполнить команду
Command |
---|
sudo apt update |
Если пакет debian-archive-keyring установлен, то команда должна отработаться без ошибок.
Если пакет debian-archive-keyring не установлен, то команда сообщит, что не может проверить подписи репозитория, и сообщит, какие именно ключи нужны для проверки.
Пример сообщения ниже, отпечатки ключей выделены жирным шрифтом:
Информация |
---|
.... Чтение списков пакетов… Готово |
На момент написания этой статьи к репозиторию Stretch относится третий, последний отпечаток.
Для Astra Linux Special Edition пакет debian-archive-keyring может быть установлен из репозитория Astra Linux Common Edition после подключения этого репозитория или командами:
Command |
---|
wget https://dl.astralinux.ru/astra/testing/orel/repository/pool/main/d/debian-archive-keyring/debian-archive-keyring_2017.5_all.deb sudo apt install ./debian-archive-keyring_2017.5_all.deb |
В примере команды указана версия пакета, доступная на момент написания примера, при изменении версии команда должна быть откорректирована.
Без установки пакета debian-archive-keyring
Для того, чтобы установить ключ проверки подлинности:
- Установите пакет dirmngr (если он ранее не установлен) и
- Используйте команду apt-key с указанием нужного отпечатка:
Command |
---|
sudo apt install dirmngr |
Если сервер keys.gnupg.net не отвечает или выдаёт ошибку вида "gpg: сбой при получении с сервера ключей: Нет данных" ,
можно попробовать:
- Временно изменить настройки DNS, оставив только сервер DNS 8.8.8.8, после чего попробовать получить ключи вышеуказанной командой.
После успешного получения ключей настройки можно восстановить. Попробовать получить ключи от других серверов, входящих в пул keys.gnupg.net.
Актуальный список этих серверов доступен через WEB-интерфейс сайта keys.gnupg.net, пункт "About" в нижней части экрана.
На момент написания статьи список такой:Информация - pool.sks-keyservers.net
- na.pool.sks-keyservers.net
- eu.pool.sks-keyservers.net
- oc.pool.sks-keyservers.net
- p80.pool.sks-keyservers.net
- ipv4.pool.sks-keyservers.net
- ipv6.pool.sks-keyservers.net
- subset.pool.sks-keyservers.net
Кроме того, можно попробовать получить ключ через WEB-интерфейс по адресу репозитория (keys.gnupg.net), указав в поле поиска код ключа в виде 0xE1F958385BFE2B6E (т.е. с лидирующими символами 0x),
открыть ключ в браузере, сохранить в текстовом файле на локальной машине и импортировать командойCommand sudo apt-key add ИМЯ_ФАЙЛА.
После установки ключа репозитория обновите список пакетов:
Command |
---|
sudo apt update |
Ключ репозитория Stretch действителен до 2025-го года, если установлен пакет debian-archive-keyring ключи будут обновляться автоматически по мере обновления пакета.
Проверить список установленных ключей можно командой
Информация |
---|
apt-key list |
Предупреждение | ||
---|---|---|
Подключить репозиторий можно и без установки ключей, однако данный способ не рекомендуется к применению, так как при этом проверка подлинности данных, получаемых из репозитория, становится невозможной. Для отключения проверки ключей в определении репозитория нужно указать дополнительный ключ trusted=yes:
|
Для отключения проверки ключей в определении репозитория нужно указать дополнительный ключ trusted=yes:
Подключение репозитория выпуска orel-frozen - 1.11
в /etc/apt/sources.list надо вписать строку(остальные строки убрать или закомментировать символом #):
Блок кода | ||
---|---|---|
| ||
deb https://mirror.yandex.ru/astra/frozen/orel-1.11/repository orel main contrib non-free deb https://mirror.yandex.ru/astra/frozen/orel-1.11/repository-update orel main contrib non-free |
далее в терминале выполнить:
Command | ||||
---|---|---|---|---|
| ||||
sudo apt update |
Для обновления дистрибутива:
Command |
---|
sudo apt update && sudo apt dist-upgrade |
Подключение репозитория с пакетами из проекта debian (wheezy)
Процедура получения ключа для репозитория Wheezy в целом аналогична процедуре для Stretch (см. выше), отличаются только строка с адресом репозитория и ключ.
В /etc/apt/sources.list надо вписать строку(остальные строки убрать или закомментировать символом #):
Блок кода | ||
---|---|---|
| ||
deb https://mirror.yandex.ru/debian/ wheezy contrib main non-free |
далее в терминале выполнить:
панель | ||||
---|---|---|---|---|
| ||||
sudo apt update |
И, если пакеты с ключами ранее не установлены, по полученной подсказке получить ключи для репозитория.
Ключ (на момент написания этой статьи) следует получать по отпечатку 6FB2A1C265FFB764:
Информация |
---|
sudo apt install dirmngr |
Подключение репозиториев скопированных на локальный жесткий диск
Перед копированием файлов на локальный жесткий диск рекомендуется убедиться, что в файловой системе достаточно свободного места. Сделать это можно командой:
Command |
---|
df -h |
Репозитории в локальной папке
Для добавления репозиториев, находящихся в локальной папке (нет доступа в интернет или нужна локальная копия) в /etc/apt/sources.list надо вписать строку:
Блок кода | ||
---|---|---|
| ||
deb file:///<папка> orel contrib main non-free |
панель | ||||
---|---|---|---|---|
| ||||
sudo apt update && sudo apt install <name> |
Якорь | ||||
---|---|---|---|---|
|
Astra Linux Special Edition)
Смонтировать образ:
панель | ||||
---|---|---|---|---|
| ||||
sudo mkdir /opt/repo sudo mount -o loop <name.iso> /opt/repo |
в /etc/apt/sources.list надо вписать строку:
Блок кода | ||
---|---|---|
| ||
deb file:///opt/repo orel contrib main non-free |
После внесения изменений в /etc/apt/sources.list обновить списки источников:
панель | ||||
---|---|---|---|---|
| ||||
sudo apt update |
Для автоматического монтирования образа добавить в файл /etc/fstab строку вида:
Информация |
---|
/home/user/ISO/devel-smolensk.iso /opt/repo iso9660 defaults 0 0 |
Для того, чтобы такой репозиторий был доступен на других компьютерах удобно использовать предоставление файловых ресурсов через службу FTP.:
При этом источник в /etc/apt/sources.list для ОС Astra Linux Special Edition РУСБ.10015-01 будет выглядеть как:
Информация |
---|
deb ftp://путь_к ресурсу smolensk contrib main non-free |
Подключение репозиториев Debian из закрытой сети
В ситуации, когда репозиторий Debian доступен через прокси (зеркало), а сервер ключей при этом недоступен, ключи репозитория можно отдельно скачать с сервера keys.gnupg.net (или с сервера keyserver.ubuntu.com).
Сервер ключей обеспечивает поиск ключа по отпечатку ключа, и предоставляет возможность сохранить ключ в обычный текстовый файл.
Сохранённые файлы ключей следует скопировать на компьютер, на котором должна выполняться установка пакетов, и установить ключи из скопированного файла:
Информация |
---|
sudo apt-key add ИМЯ_ФАЙЛА_С_КЛЮЧОМ |
Сценарий создания собственного простого репозитория
Данный сценарий позволяет создать собственный репозиторий из произвольного набора ранее скачанных пакетов формата deb (двоичных пакетов Debian).
Сценарий позволяет указать в качестве аргумента вызова версию релиза (orel, smolensk и т.д.) для создания репозитория, если никакая версия не указана - то используется текущий релиз системы.
Репозиторий создаётся в текущем каталоге.
После завершения создания репозитория в текущем каталоге создаётся файл со строкой-ссылкой на созданный репозиторий для списка источников пакетов.
Порядок применения:
Установить необходимые для создания репозитория пакеты, если они не были установлены ранее:
Command sudo apt install dpkg-dev apt-utils Создать каталог, в котором будет размещён репозиторий, и перейти в этот каталог, например:
Информация sudo mkdir /opt/repo
cd /opt/repoСохранить сценарий в файле с именем, например, create-flat-repo:
Информация #!/bin/bash
CODENAME="${1:-`sed -n "s/^DISTRIB_CODENAME=//p" /etc/lsb-release`}"
if [ -z "$CODENAME" ] ; then
echo "Имя дистрибутива не определено, укажите вручную как аргумент команды"
exit 1
else
echo "Имя дистрибутива определено как \"$CODENAME\""
fiV=1.0
ARCH=$(dpkg-architecture -q DEB_BUILD_ARCH)
mkdir -p dists/$CODENAME/main/binary-$ARCH
dpkg-scanpackages -a $ARCH . > dists/$CODENAME/main/binary-$ARCH/Packages
echo -e "Origin: Debian\nSuite: unstable\nCodename: $CODENAME\nVersion: $V\nArchitectures: $ARCH\nComponents: main" > dists/$CODENAME/Release
apt-ftparchive release . >> dists/$CODENAME/Releasedpath=$(readlink -f .)
echo deb [trusted=yes arch=$ARCH] file:$dpath $CODENAME main > $CODENAME.list
#echo deb [trusted=yes arch=$ARCH] file:$dpath $CODENAME main > /etc/apt/sources.list.d/$CODENAME.listРазрешить выполнение созданного файла:
Command sudo chmod +x create-flat-repo - Скопировать (загрузить) в текущий каталог пакеты .deb, которые предполагается включить в создаваемый репозиторий;
Выполнить сценарий:
Информация sudo ./create-flat-repo По необходимости переместить или скопировать созданный файл .list в каталог списков источников пакетов /etc/apt/sources.list.d/ и обновить списки пакетов:
Command sudo cp *.list /etc/apt/sources.list.d/
sudo apt update
После выполнения указанных операций установку пакетов из созданного репозитория можно будет выполнять стандартной командой:
Command |
---|
sudo apt install имя_пакета |
Решение проблемы одинаковых версий пакетов при подключении нескольких репозиториев
При смене репозиториев установка пакетов может затрудняться тем, что в используемых репозиториях оказываются пакеты с одинаковыми версиями.
Для устранения этой проблемы (и, возможно, в качестве профилактической меры при частой смене репозиториев) следует:
Очистистить сохраненные списки пакетов, содержащие информации о ранее использовавшихся репозиториях:
Command sudo rm -rf /var/lib/apt/lists/* Обновить списки пакетов в соответствии с актуальным списком репозиториев:
Command sudo apt update
После вполнения указанных операций установка пакетов выполянется в обычном порядке.
...