Установка пакетов на сервер без доступа к интернет

Обзор

Прежде чем запускать установку платформы необходимо подготовить ОС на новом сервере - установить пакеты, которые требуются для установки/работы платформы.

Вариантов установки может быть множество, например: из локального репозитория; путем сбора с аналогичной системы у которой есть доступ в интернет; путем временного доступа сервера в интернет на момент установки и т.д.

После установки необходимых пакетов в ходе основного процесса установки на экране Пакеты и сеть следует ответить n на вопрос «Разрешить установщику скачивать пакеты из интернета?» (ключ --useapt=n).
В этом режиме инсталлятор ничего не устанавливает сам: он проверяет наличие нужных пакетов и на экране предпроверок называет недостающие.

Имена пакетов ниже приведены для Debian, Ubuntu, Linux Mint и Astra Linux. В остальных семействах они отличаются:

  • docker - docker.io в Astra Linux, docker-engine в ALT Linux, docker-ce в CentOS и RedOS;

  • PostgreSQL - postgresqlNN-server в ALT Linux, CentOS и RedOS, где NN - номер версии;

  • NFS - nfs-utils в ALT Linux, CentOS и RedOS вместо nfs-kernel-server и nfs-common.

Список пакетов.

Обязательные пакеты:

  • docker-ce, docker-ce-cli, containerd.io - пакеты для установки docker. Без интернета инсталлятор их не поставит, а без docker установка прекращается.

  • rsync - используется при копировании файлов на сервер.

  • curl, wget - используются в процессе установки

  • tar, grep, sed, awk, find - входят в базовую поставку ОС, но при их отсутствии инсталлятор останавливается на предпроверках.

  • sudo - если установка выполняется не от пользователя root.

Опциональные пакеты (в некоторых случаях необходимы для установки/настройки платформы):

  • nfs-kernel-server - сервер сам отдает общие каталоги по NFS

  • nfs-common, cifs-utils - подключение сетевого хранилища

  • postgresql-17 - использование локальной СУБД PostgreSQL (не в контейнере). По умолчанию ставится версия 17, в Astra Linux 1.8 - версия 15, другую версию задает ключ --pgversion

  • whiptail или dialog - псевдографический режим инсталлятора, без них он работает в текстовом режиме

  • python3 - нужен только скрипту gen_container_cmd.sh

Остальные пакеты считаются полностью опциональными и могут понадобиться в процессе работы системы для отладки или мониторинга.

apt install -y rsync \
               net-tools \
               tree \
               curl \
               wget \
               zip \
               sshpass \
               sysstat \
               htop \
               iotop \
               dstat \
               smartmontools \
               tshark \
               nfs-kernel-server \
               nfs-common \
               cifs-utils \
               apt-transport-https \
               ca-certificates \
               lsb-release \
               perl-base \
               gnupg-agent \
               docker-ce \
               docker-ce-cli \
               containerd.io \
               postgresql-17