Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление


Информация
titleДанная статья применима к:
  • Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-01 10 (очередное обновление 1.7)
  • Astra Linux Special Edition РУСБ.10015-10 37 (очередное обновление 7.7)

  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)

  • Astra Linux Special Edition РУСБ.10015-16 исп. 1

  • Astra Linux Common Edition 2.12



Предупреждение
titleВнимание!
  1. Установка Astra Linux в автоматическом режиме означает автоматическое принятие лицензионного соглашения (см. Лицензионные соглашения и политика лицензирования ГК Astra Linux);
  2. При установке в автоматическом режиме Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7) выбор уровня защищенности должен осуществляться в соответствии с условиями действующего лицензионного договора. Подробнее про уровни защищенности см.  Astra Linux Special Edition (очередное обновление x.7): Ключевые изменения в комплексе средств защиты информации.



Информация
PXE (англ.Preboot eXecution Environment) — среда для загрузки компьютеров с помощью сетевой карты без использования жестких дисков, компакт-дисков и других устройств, применяемых при загрузке операционной системы.
Подробная информация об автоматической установке с помощью списка ответов: https://www.debian.org/releases/stretch/s390x/apbs01.html.ru


Введение

Предполагается, что для выполнения загрузки по сети используется следующая конфигурация оборудования:

  • все компьютеры находятся в одной локальной сети (в одном широковещательном домене);
  • в этой сети имеются:
    • настроенный DHCP-сервер, выдающий клиентским компьютерам не только сетевые IP-адреса, но и другие сетевые параметры (в частности, IP-адрес TFTP-сервера, с которого будет загружаться установочный образ). Далее для примера приводится установка и настройка DHCP-сервера, однако если в сети уже имеется собственный DHCP-сервер, то следует выполнить его настройку в соответствии с приведенными в статье инструкциями ;
    • настроенный TFTP сервер, с которого можно загрузить установочные данные и файлы для первичной загрузки:
    • настроенные разделяемые сетевые ресурсы, из которых можно загружать пакеты. Для загрузки могут использоваться протоколы FTP или HTTP.

      Предупреждение
      Это не совсем обычные репозитории пакетов: в обычных репозиториях пакетов нет загрузочных модулей ядра.
      Чтобы необходимые модули были доступны при сетевой установке проще всего использовать в качестве разделяемых сетевых ресурсов примонтированные установочные диски (образы дисков).

      Для примера используются HTTP-репозитории.

Информация

В составе инфраструктуры используются РАЗНЫЕ источники данных, работающие по РАЗНЫМ протоколам, расположенные в РАЗНЫХ местах файловой системы, и, возможно, даже на разных серверах:

  • в первом случае это источник установочных файлов и и файлов для первичной загрузки, работающий по протоколу TFTP. Далее в примерах эти данные размещаются в каталоге /srv/tftp/;
  • во втором случае (репозитории пакетов), работающий по протоколу HTTP (или FTP). Размещается, например, в каталоге /srv/repo или в каталоге /var/www/html/repo или доступен пр сети. Подробнее про создание и настройку таких репозиториев см. Создание локальных и сетевых репозиториев.


Информация
Для упрощения изложения далее предполагается, что сетевые службы DHCP, TFTP, HTTP располагаются на одном и том же компьютере. При необходимости эти службы могут быть установлены на разных компьютерах

Как это работает:

  • клиент подключается к сети и запрашивает IP-адрес, передавая в запросе информацию о собственной конфигурации;
  • DHCP-сервер назначает клиенту IP-адрес и вместе с назначенным адресом передаёт клиенту дополнительные сетевые параметры, в том числа IP-адрес TFTP-сервера с необходимыми файлами сценариев установки;
  • клиент подключается к TFTP-серверу и загружает файлы со сценариями установки;
  • клиент выполняет установку в соответствии с полученными сценариями.


Предупреждение

Установка выполняется с заранее заданными фиксированными именами (имя хоста, имя пользователя, пароль пользователя). Рекомендуется после установки сменить имена и пароли.


Установка и настройка сервера PXE

Установка пакетов

Установить необходимые пакеты:

Command
sudo apt install tftpd-hpa pxelinux syslinux

Где:

  • tftpd-hpa - TFTP-server;
  • pxelinux - загрузчик для сетевой загрузки PXE;
  • syslinux - загрузчик для сетевой загрузки DOS FAT / NTFS;

Настройка службы TFTP

Служба tftpd после установки запускается автоматически и сразу предоставляет доступ к каталогу /srv/tftp/, в котором далее и будут размещены файлы для сетевой загрузки.

Установка и настройка службы DHCP

Информация
Создание собственой службы DHCP требуется только в том случае, если в сети нет уже такой действующей службы. Если в сети уже имеется служба DHCP (DHCP-сервер), то следует внести в его настройку указанные ниже параметры в соответствии его с инструкциями по эксплуатации.

Для создания собственного DHCP-сервера:

  1. Установить пакет:

    Command
    sudo apt install isc-dhcp-server


  2. Настроить пакет:

    1. В файле /etc/default/isc-dhcp-server:

      Блок кода
      INTERFACESv4="eth0"


    2. Настроить конфигурацию в файле /etc/dhcp/dhcpd.conf. В данной конфигурации dhcp сервер будет определять тип клиента (UEFI или Legacy BIOS) и передавать ему нужный загрузчик:

      Блок кода
      authoritative;
      option domain-name "my.dom";
      default-lease-time 600;
      max-lease-time 7200;
      log-facility local7;
      option domain-name-servers 8.8.8.8;
      allow booting;
      allow bootp;
      option fqdn.no-client-update    on;  
      option fqdn.rcode2            255;
      option pxegrub code 150 = text ;
      
      next-server 192.168.56.1; 
      option architecture code 93 = unsigned integer 16 ;
      if option architecture = 00:07 {
        filename "bootx64.efi"; 
      } elsif option architecture = 00:09 {
        filename "bootx64.efi";
      } else {
        filename "pxelinux.0"; 
      }
      
      subnet 192.168.56.0 netmask 255.255.255.0 {
          range 192.168.56.20 192.168.56.250;
          option broadcast-address 192.168.56.255;
          option routers 192.168.56.1;
          option subnet-mask 255.255.255.0;
      }  


    3. После внесения изменений в настройки перезапустить службу:

      Command
      sudo systemctl restart isc-dhcp-server


Независимо от использующейся службы DHCP для загрузки по сети нужны следующие файлы:

  • pxelinux.0;
  • библиотеки syslinux;
  • ядро ОС;
  • специальный initrd.

Эти файлы находятся на установочном диске в каталоге netinst и для того, чтобы они могли быть переданы клиентам, они должны быть скопированы в каталог /srv/tftp/.

Для копирования файлов:

  1. Для Astra Linux Special Edition (в примере ниже предполагается, что основной установочный диск находится в приводе компакт дисков) это копирование сделать командами:

    Command

    sudo mkdir -p       /srv/repo/se/
    sudo mount /dev/sr0 /srv/repo/se/
    sudo mkdir -p                                /srv/tftp/se/
    sudo cp /srv/repo/se/netinst/linux     /srv/tftp/se/
    sudo cp /srv/repo/se/netinst/initrd.gz /srv/tftp/se/

    Для Astra Linux Common Edition, если образ установочного диска находится в файле ce212.iso:

    Command

    sudo mkdir -p       /srv/repo/ce/
    sudo mount ce212.iso /srv/repo/ce
    sudo mkdir -p                            /srv/tftp/ce/
    sudo cp /srv/repo/ce/netinst/linux     /srv/tftp/ce/
    sudo cp /srv/repo/ce/netinst/initrd.gz /srv/tftp/ce/


  2. Скопировать в каталог /srv/tftp файл pxelinux.0 и необходимые библиотеки syslinux из установленной ОС:

    Command

    sudo cp /usr/lib/PXELINUX/pxelinux.0 /srv/tftp/
    sudo cp /usr/lib/syslinux/modules/bios/{chain.c32,ldlinux.c32,libcom32.c32,libutil.c32,menu.c32} /srv/tftp/


  3. Создать каталог /srv/tftp/pxelinux.cfg/:

    Command

    sudo mkdir -p /srv/tftp/pxelinux.cfg


  4. Создать в этом каталоге файл /srv/tftp/pxelinux.cfg/default. Пример содержимого файла:

    Блок кода
    ui menu.c32
    PROMPT 0
     
    MENU TITLE PXE Boot menu
    TIMEOUT 50
    DEFAULT local
      
    LABEL local
        MENU LABEL Boot from local drive
        kernel chain.c32
        append hd0
    # Astra Linux Special Edition
    LABEL netinstall
        MENU LABEL Start Astra Linux SE net install
        kernel se/linux
        append initrd=se/initrd.gz modprobe.blacklist=evbug auto=true priority=critical debian-installer/locale=en_US console-keymaps-at/keymap=ru hostname=se16 domain=my.dom astra-license/license=true url=tftp://192.168.56.1/se/preseed.cfg interface=auto netcfg/dhcp_timeout=60 astra_install=1 vga=788 debian-installer/allow_unauthenticated=true nomodeset
    # Astra Linux Common Edition
    LABEL netinstall
        MENU LABEL Start Astra Linux CE net install
        kernel ce/linux
        append initrd=ce/initrd.gz modprobe.blacklist=evbug auto=true priority=critical debian-installer/locale=en_US console-keymaps-at/keymap=ru hostname=ce212 domain=my.dom astra-license/license=true url=tftp://192.168.56.1/ce/preseed.cfg interface=auto netcfg/dhcp_timeout=60 vga=788 debian-installer/allow_unauthenticated=true nomodeset


    Информация
    При использовании приведенного выше файла по умолчанию загрузка клиента выполняется с локального жесткого диска. Это сделано для предотвращения повторной автоматической установки после завершения первой установки, или случайной установки на компьютер с уже установленной ОС, подключенный к этой же сети.

    Важные параметры:

    1. hostname - имя хоста, которое будет использовано при автоматической установке ОС;

    2. domain - имя домена ;

    3. url - адрес, по которому должны быть доступны конфигурационные файлы. В данном примере используется протокол TFTP, однако можно использовать FTP или HTTP (файлы при этом должны быть размещены в соответствующих локациях).

    4. append ... astra_install=1 - параметр ядра astra_install=1 необходим для корректной установки Astra Linux Special Edition с включенным МКЦ.

  5. Для загрузки в режиме UEFI служит специальный EFI образ загрузчика grub. Для его установки:

    1. Загрузить архив с образом с помощью web-браузера по ссылке: скачать. По умолчанию архив будет сохранен в подкаталоге Загрузки домашнего каталога;

    2. Распаковать архив Загрузки/netinst.tar.gz в каталог /srv/tftp:

      Command

      sudo tar xvf Загрузки/netinst.tar.gz -C /srv/tftp


    3. Отредактировать конфигурационный файл /srv/tftp/debian-installer/amd64/grub/grub.cfg:

      Блок кода
      if loadfont $prefix/font.pf2 ; then
        set gfxmode=800x600
        set gfxpayload=keep
        insmod efi_gop
        insmod efi_uga
        insmod video_bochs
        insmod video_cirrus
        insmod gfxterm
        insmod png
        terminal_output gfxterm
      fi
      
      if background_image /isolinux/splash.png; then
        set color_normal=light-gray/black
        set color_highlight=white/black
      else
        set menu_color_normal=cyan/blue
        set menu_color_highlight=white/blue
      fi
      
      menuentry "Boot default EFI bootloader" {
       set background_color=black
       regexp -s root '\((.+)\)' "$cmdpath"
       chainloader /EFI/Boot/Bootx64.efi
      }
      
      # Установка Astra Linux Special Edition
      menuentry 'Install Astra Linux SE' {
          set background_color=black
          linux    /se/linux modprobe.blacklist=evbug debian-installer/allow_unauthenticated=true auto=true priority=critical debian-installer/locale=en_US console-keymaps-at/keymap=ru hostname=test2 domain=my.dom astra-license/license=true url=tftp://192.168.56.1/se/preseed.cfg interface=auto netcfg/dhcp_timeout=60 nomodeset
          initrd   /se/initrd.gz
      }
      # Установка Astra Linux Common Edition
      menuentry 'Install Astra Linux CE' {
          set background_color=black
          linux    /ce/linux modprobe.blacklist=evbug debian-installer/allow_unauthenticated=true auto=true priority=critical debian-installer/locale=en_US console-keymaps-at/keymap=ru hostname=test2 domain=my.dom astra-license/license=true url=tftp://192.168.56.1/ce/preseed.cfg interface=auto netcfg/dhcp_timeout=60 nomodeset
          initrd   /ce/initrd.gz
      }
      
      

      При редактировании следует указать правильное имя домена и пути поиска файлов. При этом, несмотря на указание в имени пути протокола FTP, в самом деле используется протокол TFTP, что следует учесть, указывая имя файла. По умолчанию в файле задана загрузка образа EFI из EFI/Boot/Bootx64.efi (на некоторых системах может быть иначе). Это сделано для того, чтобы избежать повторной автоматической установки после завершения первой установки, или случайной установки на компьютер с уже установленной ОС, подключенный к этой же сети;

  6. Перезапустить службы:

    Command

    sudo systemctl restart isc-dhcp-server # если используется
    sudo systemctl restart tftpd-hpa