Автор Тема: Сетевая установка ALT Linux Workstation 10  (Прочитано 209 раз)

Оффлайн Arsilicious

  • Начинающий
  • *
  • Сообщений: 3
    • Email
Всем добрый день!

Столкнулся с проблемой, что не могу самостоятельно настроить TFTP (или FTP?) сервера для сетевой установки ALT Linux Workstation 10 посредством PXE.

Пытался настроить по материалам в интернете:
https://www.altlinux.org/NetInstall
https://wiki.syslinux.org/wiki/index.php?title=PXELINUX
Документация предлагает статью:
https://docs.altlinux.org/ru-RU/alt-server/10.2/html/alt-server/netinst.html
Но там для настройки используется веб-страничка браузера и я не понимаю, какие настройки за ней кроются. Для меня важно понять какие файлы конфигурации править.
 
Самостоятельно я смог только настроить статику на сетевом интерфейсе и работу DHCP сервера, для получения клиентами IP адресов. Файл конфигурации DHCP выглядит примерно так:
option arch code 93 = unsigned integer 16;
if option arch = 00:06 {
    # EFI IA32 => Grub2
    filename "/var/lib/tftpboot/shimx64.efi";
    } else if option arch = 00:07 {
    # EFI BC => Grub2
    filename "/var/lib/tftpboot/shimx64.efi";
    } else if option arch = 00:09 {
    # EFI x86-64 => Grub2
    filename "/var/lib/tftpboot/shimx64.efi";
    } else {
    # Intel x86PC (BIOS) => PXELinux
    filename "/var/lib/tftpboot/pxelinux.0";
}

subnet 192.168.1.0 netmask 255.255.255.0 {
        next-server 192.168.1.1; <---- Адрес TFTP сервера, он же и DHCP
        option routers 10.47.0.1; <--- здесь указал значение роутера в моей подсети, выявил при помощи команды ip r
        option domain-name-servers 10.33.X.X; <---- DNS сервер учреждения
        default-lease-time 3600;
        max-lease-time 3600;
        range 192.168.1.10 192.168.1.20;
}


В связи с этим появились вопросы:
1. Зачем в данном руководстве (Netinstall) нужно настраивать TFTP, FTP и NFS? Разве не достаточно только TFTP сервер? Или это просто как пример настройки приводится и всё одновременно не надо настраивать?
2. После копирования содержимого с примонтированного образа устанавливаемой системы образ больше не нужно монтировать?
3. Если для установки операционной системы посредством PXE достаточно TFTP и DHCP, то на какую документацию следуют ориентироваться для настройки TFTP на операционной системе ALT Linux Сервер Релиз 10?

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 043
  • ITS
Re: Сетевая установка ALT Linux Workstation 10
« Ответ #1 : 27.04.2024 10:53:20 »
Под sysv как то настраивал, если хочешь разгребай информацию, может что полезное найдешь.
### Сетевая загрузка дисков ###

# Установим tftpd сервис
apt-get install tftpd tftp-server-standalone

# Добавим сервис tftpd в автозагрузку и запустим его
chkconfig tftpd on &&  service tftpd start

# запуск напрямую из консоли по необходимости
tftpd -l4s --verbosity 10 /var/lib/tftpboot

# Монтируем образ который будем запускать по сети, в каталог, для переноса необходимых файлов
mount -o loop ./alt-p9-xfce-sysv-20191212-x86_64.iso /mnt/iso/

ls -lh /mnt/iso/
-----------------------------------------------
итого 875M
dr-xr-xr-x 1 root root 2,0K дек 12 07:13 docs
dr-xr-xr-x 1 root root 2,0K дек 12 07:13 EFI
-r--r--r-- 1 root root  169 дек 12 07:13 index.html
-r--r--r-- 1 root root 5,0K дек 10 23:17 license.all.html
-r--r--r-- 1 root root 9,8K дек 10 23:17 license.ru.html
-r--r--r-- 1 root root 875M дек 12 07:11 live
dr-xr-xr-x 1 root root 2,0K дек 12 07:06 Metadata
dr-xr-xr-x 1 root root  12K дек 12 07:13 syslinux
------------------------------------------------

# Установим из пакета syslinux, образцы загрузчиков по сети (для linux машин это pxelinux.0)
apt-get install syslinux

# Проверить список установленных загрузчиков
rpm -ql syslinux

# Наполнить каталог /var/lib/tftpboot необходимыми файлами
cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot
cp /usr/lib/syslinux/vesamenu.c32 /var/lib/tftpboot
mkdir /var/lib/tftpboot/pxelinux.cfg && touch /var/lib/tftpboot/pxelinux.cfg/default
cp -r /mnt/iso/syslinux /var/lib/tftpboot

# Настроить загрузочный файл (мой пример) default
mcedit /var/lib/tftpboot/pxelinux.cfg/default

# (с русской кодировкой в меню, вопрос пока не решен)
cat /var/lib/tftpboot/pxelinux.cfg/default
-------------------------------------------------
timeout 600
totaltimeout 3000
UI vesamenu.c32
MENU RESOLUTION 800 600
MENU title My ORG
MENU background syslinux/linux2.jpg
ALLOWOPTIONS 0
#font UniCyr_8x16.psf

label Load net Live CD x32
  kernel syslinux/alt0/vmlinuz
  append initrd=syslinux/alt0/full.cz fastboot live lang=ru_RU automatic=method:ftp,network:dhcp,server:192.168.8.118,directory:/p9xfce stagename=live ramdisk_size=850000
  TEXT HELP
  Desktop version to RAM > 1GB
  ENDTEXT

label Load net Live CD x64
  kernel p9xfce64/alt0/vmlinuz
  append initrd=p9xfce64/alt0/full.cz fastboot live lang=ru_RU automatic=method:ftp,network:dhcp,server:192.168.8.118,directory:/p9xfce64 stagename=live ramdisk_size=950000
  TEXT HELP
  Desktop version to RAM > 1GB
  ENDTEXT

label AltLinux server p9 sysv INSTALL
    kernel syslinux/alt1/vmlinuz
    append initrd=syslinux/alt1/full.cz changedisk fastboot showopts automatic=method:ftp,network:dhcp,server:192.168.8.118,directory:/p9server64 stagename=altinst ramdisk_size=380000

label AltLinux Rescue
    kernel syslinux/alt1/vmlinuz
    append initrd=syslinux/alt1/full.cz net=8139too ramdisk_size=65536 live fastboot stagename=rescue showopts automatic=method:ftp,network:dhcp,server:192.168.8.118,directory:/p9server64 ramdisk_size=350000

label Victoriya 3.5
    kernel syslinux/memdisk
    append iso raw initrd=iso/vcr35r.iso

label Clonezilla live (To RAM) x32
  MENU LABEL Clonezilla live
  kernel clonezilla/vmlinuz
  append initrd=clonezilla/initrd.img boot=live username=user union=overlay config components quiet noswap edd=on nomodeset nodmraid lang=ru_RU locales=ru_RU.UTF-8 keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch=no net.ifnames=0 nosplash noprompt fetch=ftp://192.168.8.118/clonezilla/live/filesystem.squashfs
  TEXT HELP
  All the programs will be copied to RAM
  ENDTEXT

label GParted Live (To RAM)
  MENU LABEL GParted Live
  kernel gpart/vmlinuz
  append initrd=gpart/initrd.img boot=live union=overlay username=user config components quiet noswap  toram=filesystem.squashfs ip= net.ifnames=0  nosplash fetch=ftp://192.168.8.118/gpart/live/filesystem.squashfs
  TEXT HELP
  All the programs will be copied to RAM
  ENDTEXT

label Load HDD
  localboot 0x80

label Test memory
  linux syslinux/memtest.bin
-------------------------------------------------

# Корень загрузки, т.е. каталог syslinux, находится по пути /var/lib/tftpboot
# ... kernel syslinux/alt0/vmlinuz
ls -l /var/lib/tftpboot ## уже настроенный каталог (здесь лежат толко kernel и initrd файлы, полный распакованый iso на ftp)
-----------------------------------
drwxrwxr-x 2 tftp tftp   4096 фев 12 12:55 clonezilla
-rwxrwxr-x 1 tftp tftp   4128 фев 10 10:18 cp866-8x16.psf
drwxr-xr-x 3 root root   4096 фев 13 12:51 gpart
drwxr-xr-x 2 root root   4096 фев 13 15:18 iso
drwxr-xr-x 3 root root   4096 фев 26 15:11 p9xfce64
-rwxrwxr-x 1 tftp tftp  26463 июн 13  2019 pxelinux.0
drwxrwxr-x 2 tftp tftp   4096 фев 26 16:03 pxelinux.cfg
drwxrwxr-x 4 tftp tftp   4096 фев 13 15:52 syslinux
-rwxrwxr-x 1 tftp tftp   4931 дек 14  2013 UniCyr_8x16.psf
-rwxrwxr-x 1 tftp tftp 153744 фев 12 14:53 vesamenu.c32
-----------------------------------

# Поднять ftp сервер (у меня там же где и tftp) и в корне (у меня /var/ftp) положить образа дистрибутивов
# Пример для строки server:192.168.8.118,directory:/p9xfce64 каталог p9xfce64
mkdir /var/ftp/p9xfce64
cp -r /mnt/iso/* /var/ftp/p9xfce64

ls -lh /var/ftp/p9xfce64
-----------------------------------
итого 895M
dr-xr-xr-x 3 root root 4,0K мар 12 08:36 docs
dr-xr-xr-x 6 root root 4,0K мар 12 08:36 EFI
-r--r--r-- 1 root root  169 мар 12 08:36 index.html
-r--r--r-- 1 root root 5,0K дек 10 23:17 license.all.html
-r--r--r-- 1 root root 9,8K дек 10 23:17 license.ru.html
-r--r--r-- 1 root root 895M мар 12 08:33 live
dr-xr-xr-x 2 root root 4,0K мар 12 08:28 Metadata
dr-xr-xr-x 3 root root 4,0K мар 12 08:36 syslinux
-----------------------------------

# Поднять DHCP сервер и объяснить ему, где находиться tftp сервер
# и как называется загрузчик с которого грузиться

прописать в dhcp сервере
под Linux (dhcp ISC) параметр:
next-server 192.168.8.118;              # Адрес IP сервера TFTP
filename "pxelinux.0";               # имя файла загрузчика PXELINUX

под Windows (у меня W2012) параметр:
Параметры сервера > Область xxx.xxx.xxx.xxx > Параметры области(Настроить):
066 Имя узла сервера загрузки - у меня это 192.168.8.118
067 Имя файла загрузки - pxelinux.0