Интересно - нужно проверить )
Проверю, отпишусь! Спасибо!
Модератор: Модераторы разделов
Интересно - нужно проверить )
В Grub - да, это работает, но на Grub у меня и так этот параметр был указан, поэтому и работало, до дописав это в Syslinux - снова выдает ошибку, так что для старого Syslinux это не вариант.
Код: Выделить всё
vendor-option-space pxelinux;
option pxelinux.magic f1:00:74:7e;
option pxelinux.configfile "::/installer/base.cfg";
next-server 192.168.32.1;
if (option architecture-type = 00:09 or option architecture-type = 00:07 ) {
filename "/syslinux-efi/efi64/syslinux.efi";
option pxelinux.pathprefix "/syslinux/modules/efi64/";
} elsif option architecture-type = 00:06 {
filename "/syslinux-efi/efi32/syslinux.efi";
option pxelinux.pathprefix "/syslinux/modules/efi32/";
} else {
filename "/pxelinux/pxelinux.0";
option pxelinux.pathprefix "/syslinux/modules/bios/";
}
Код: Выделить всё
#!ipxe
#
cpuid --ext 29 && set arch _64 || set arch
iseq ${platform} efi && iseq ${buildarch} x86_64 && set arch _64 ||
iseq ${platform} efi && iseq ${buildarch} i386 && set arch ||
set httpServer http://192.168.145.242:80 # Задание адреса HTTP сервера
set nfsServer 192.168.145.242
set nfs_root /var/lib/tftpboot/
set menu-timeout 10000 # таймаут выхода из меню
#############################
# настроил, но НЕ РАБОТАЕТ :(
set keymap ru
######## Графика ########
# Цвет по-умолчанию (индекс 0)
# Буквы - черный, фон-прозрачный
cpair -f 0 -b 4 0
# Нормальный текст (индекс 1)
# Буквы - черный, фон - прозрачный
cpair -f 0 -b 4 1
# Разделители (индекс 3)
# Буквы - красный, фон - прозрачный
cpair -f 1 -b 4 3
#########################
# Фоновое изображение и рамка
# ${platform} - переменная iPXE, определяет в каком режиме загружен клиент- pcbios или efi
# Задаю параметры окна, картинку фона (загрузив её по http)
console -l 32 -r 32 -t 32 -b 32 -k --x 1024 --y 768 -d 24 -p ${httpServer}/images/photo/${platform}.png
#
# После установки фона, удаляю картинку из памяти -
# иначе она ломает wimboot загрузку WinPE
imgfree ${platform}.png
#########################
######## Главное меню ########
# На данный момент "всё в одном", но можно разделить как по разным меню, так и по разным файлам
:start
# Составляю меню
# Подробнее: https://ipxe.org/cmd/menu
menu iPXE boot menu
item --gap -- -------- Exit --------
item
item -k e exit (E)xit and boot from disk
item
item --gap -- -------- iPXE and other Utilites --------
item
item -k c config Start interactive (c)onfiguration tool
item -k s shell Start (S)hell iPXE
item clonezilla Clonezilla
item gparted GNOME Partition Editor
item
item --gap -- -------- OS - Work!!! --------
item
item redos733 RedOS 7.3.3 (astra:astra)
item astra17 Astra Linux 1.7 (astra:astra)
item astra18 Astra Linux 1.8 (astra:Bazalt1!)
item debian11 Debian 11.12 Bullseye (astra:astra)
item debian12 Debian 12.9 BookWorm (astra:astra)
item
item --gap -- ----------------
choose -d exit -t ${menu-timeout} selected
goto ${selected}
########
# Пункты меню
# В среднем состоят из трёх пунктов:
# kernel - передаю ядро linux и аргументы для запуска
# initrd - пакет данных для ядра
# boot - команда передачи управления ядру linux
###############################
# Рабочие конфиги
###############################
:redos733
kernel ${httpServer}/images/REDOS/images/pxeboot/vmlinuz ramdisk_size=128000 ip=dhcp inst.repo=${httpServer}/images/REDOS/ devfs=nomount inst.ks=${httpServer}/images/cfg/ks_7.3.2_lg.cfg inst.vnc inst.vncpassword=Bazalt1!
initrd ${httpServer}/images/REDOS/images/pxeboot/initrd.img
boot || goto error
goto start
###############################
:astra17
kernel ${httpServer}/images/Astra/se1.7/netinst/linux ramdisk_size=128000 ip=dhcp devfs=nomount modprobe.blacklist=evbug root=(tftp) auto=true priority=critical debian-installer/locale=ru_RU console-keymaps-at/keymap=ru hostname=se17 domain=qa.veil.local astra-license/license=true url=${httpServer}/images/cfg/preseed-astra.${platform}.cfg interface=auto netcfg/dhcp_timeout=60 mirror/ftp/directory=${httpServer}/images/Astra/se1.7/pool/main astra_install=1 vga=788 debian-installer/allow_unauthenticated=true nomodeset initrd=initrd.gz
initrd ${httpServer}/images/Astra/se1.7/netinst/initrd.gz
boot || goto error
goto start
###############################
:astra18
kernel ${httpServer}/images/Astra-1.8/netinst/linux ramdisk_size=128000 ip=dhcp devfs=nomount modprobe.blacklist=evbug root=(tftp) auto=true priority=critical debian-installer/locale=ru_RU console-keymaps-at/keymap=ru hostname=se18 domain=qa.veil.local astra-license/license=true url=${httpServer}/images/cfg/preseed-astra-1.8.${platform}.cfg interface=auto netcfg/dhcp_timeout=60 mirror/ftp/directory=${httpServer}/images/Astra-1.8/pool/main astra_install=1 vga=788 debian-installer/allow_unauthenticated=true nomodeset initrd=initrd.gz
initrd ${httpServer}/images/Astra-1.8/netinst/initrd.gz
boot || goto error
goto start
###############################
:debian11
kernel ${httpServer}/images/D-11.12-M/linux ramdisk_size=128000 ip=dhcp devfs=nomount modprobe.blacklist=evbug root=(tftp) auto=true priority=critical debian-installer/locale=ru_RU console-keymaps-at/keymap=ru hostname=deb11pxe domain=qa.veil.local url=${httpServer}/images/cfg/preseed-d11.${platform}.cfg interface=auto netcfg/dhcp_timeout=60 mirror/ftp/directory=${httpServer}/images/D-11.5-N/ vga=788 debian-installer/allow_unauthenticated=true nomodeset initrd=initrd.gz
initrd ${httpServer}/images/D-11.12-M/initrd.gz
boot || goto error
goto start
###############################
:debian12
kernel ${httpServer}/images/D-12.9-M/linux ramdisk_size=128000 ip=dhcp devfs=nomount modprobe.blacklist=evbug root=(tftp) auto=true priority=critical debian-installer/locale=ru_RU console-keymaps-at/keymap=ru hostname=deb12pxe domain=qa.veil.local url=${httpServer}/images/cfg/preseed-d12.${platform}.cfg interface=auto netcfg/dhcp_timeout=60 mirror/ftp/directory=${httpServer}/images/D-12.9-N/ vga=788 debian-installer/allow_unauthenticated=true nomodeset initrd=initrd.gz
initrd ${httpServer}/images/D-12.9-M/initrd.gz
boot || goto error
goto start
###############################
:clonezilla
kernel ${httpServer}/images/clonezilla/live/vmlinuz initrd=initrd.img boot=live username=user union=overlay config components quiet noswap edd=on nomodeset nodmraid locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch=no net.ifnames=0 nosplash noprompt fetch=${httpServer}/images/clonezilla/live/filesystem.squashfs
initrd ${httpServer}/images/clonezilla/live/initrd.img
boot || goto error
goto start
###############################
:gparted
kernel ${httpServer}/images/gparted-live/live/vmlinuz initrd=initrd.img boot=live username=user union=overlay config components noswap noeject vga=788 fetch=${httpServer}/images/gparted-live/live/filesystem.squashfs
initrd ${httpServer}/images/gparted-live/live/initrd.img
boot || goto error
goto start
###############################
##############################
# Интерактивное меню редактирования конфигурация iPXE и сетевой карты
:config
config
goto start
##############################
# Командная строка iPXE
:shell
shell
goto start
##############################
:exit
echo Boot from disk...
sleep 2
exit
##############################
# При ошибках выход на командную строку
:error
echo Failed - have error
sleep 1
goto shell
##############################
Код: Выделить всё
### Сеть ###
# Полностью отключить настройку сети. Это полезно для компакт-диска
# установки на не сетевые устройства, где есть вопросы по сети,
# предупреждения и длительные тайм-ауты мешают.
#d-i netcfg/enable boolean true
d-i netcfg/choose_interface select auto
#d-i netcfg netcfg/dhcp_timeout string 60
# Время ожидания (в секундах) подключения к сети:
#d-i netcfg/link_wait_timeout string 20
# Неназначенное имя пк - его нужно будет ввести
#d-i netcfg netcfg/get_hostname string unassigned-hostname
# назначенный домен - его не нужно будет вводить
#d-i netcfg/get_domain string
#d-i netcfg/dhcp_failed note
#d-i netcfg/dhcp_options select Retry network autoconfiguration
### Настройка времени ###
# Временная зона
d-i time/zone string Europe/Moscow
d-i clock-setup/ntp boolean true
#d-i clock-setup/ntp-server string 0.debian.pool.ntp.org
d-i clock-setup/ntp-server string synaps.qa.veil.local
### Репозитории ###
#d-i mirror/country string manual
#d-i mirror/http/mirror string mirror.yandex.ru
#d-i mirror/http/hostname string mirror.yandex.ru
#d-i mirror/http/directory string /debian
#d-i mirror/suite string bullseye
# Установка прокси. В офисной сети работает apt-ng-cacher адресу
# Если раскомментировать и подставить строчку:
# то установка и настройка внутри системы назначается на него.
# Для .iso образа, нужно оставить закоменченным, ведь образ не сможет найти proxy
#d-i mirror/http/proxy string http://HIDE_APT_NG_CACHE_SERVER:9999
### Локализация ###
d-i debian-installer/language string ru
d-i debian-installer/locale string ru_RU
d-i debian-installer/locale select ru_RU.UTF-8
d-i debian-installer/country string RU
d-i localechooser/preferred-locale select ru_RU.UTF-8
d-i debian-installer/locale select ru_RU.UTF-8
d-i localechooser/shortlist select RU
d-i localechooser/languagelist select ru
### Клавиатура ###
d-i keyboard-configuration/xkb-keymap select ru
d-i keyboard-configuration/layoutcode string ru,us
d-i console-setup/variant select Россия
d-i keyboard-configuration/toggle select Alt+Shift
#Если для сети или другого оборудования требуется несвободная прошивка, вы можете
#настроить установщик так, чтобы он всегда пытался загрузить его без запроса. Или
#измените значение на false, чтобы отключить запросы.
d-i hw-detect/load_firmware boolean true
### Разбитие диска ###
# Кастомная схема разбития
d-i partman-auto/init_automatically_partition select custom
# Использовать первый диск компьютера
#d-i partman-auto/disk string /dev/sda
d-i partman/early_command string debconf-set partman-auto/disk "$(list-devices disk | head -n1)"
# Использовать обычный метод использования диска, без lvm и crypto
d-i partman-auto/method string regular
# Если один из дисков, которые будут автоматически разбиты на разделы
# содержит старую конфигурацию LVM, пользователь обычно получает
# предупреждение. Это можно предварительно удалить...
d-i partman-lvm/device_remove_lvm boolean true
# То же самое относится к уже существующему программному RAID-массиву:
d-i partman-md/device_remove_md boolean true
# И то же самое касается подтверждения записи разделов lvm.
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
# Вы можете выбрать один из трех предустановленных рецептов разбиения:
# -atomic: все файлы в одном разделе
# -home: отдельный раздел /home
# -multi: отдельные разделы /home, /var и /tmp
d-i partman-auto/choose_recipe select boot-root
# Это делает partman автоматическим разделением без подтверждения, если
# вы сказали ему, что делать, используя один из методов выше.
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
#d-i partman-basicfilesystems/no_swap boolean false
d-i partman-md/confirm boolean true
# Если нет, вы можете поместить весь рецепт в файл предварительной конфигурации за один раз.
# (логическая) строка. В этом примере создается небольшой раздел /boot, подходящий
# swap, а оставшееся место использует для корневого раздела.
d-i partman/default_filesystem string ext4
d-i partman-auto/expert_recipe string \
boot-root :: \
1 1 1 free \
$iflabel{ gpt } \
$reusemethod{ } method{ biosgrub } \
. \
128 96 256 fat32 \
$iflabel{ gpt } use_filesystem{ } \
method{ efi } format{ } \
. \
4096 100 4096 linux-swap \
$reusemethod{ } \
method{ swap } format{ } \
. \
25000 1000 40000 ext4 \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ / } \
. \
30000 3000 -1 ext4 \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /home } \
.
### Настройка root ###
# Пропустить создание учетной записи root (обычная учетная запись пользователя сможет
# используйте судо)
#d-i passwd/root-login boolean true
# В качестве альтернативы, чтобы пропустить создание обычной учетной записи пользователя.
#d-i passwd/make-user boolean false
# Корневой пароль, либо открытым текстом
#d-i пароль/пароль root пароль r00tme
#d-i passwd/root-пароль-снова пароль r00tme
#d-i пароль/пароль root пароль 12345
#d-i passwd/root-пароль-снова пароль 12345
d-i passwd/root-login boolean true
d-i passwd/root-password password bazalt
d-i passwd/root-password-again password bazalt
d-i passwd/make-user boolean true
d-i passwd/user-fullname string astra
d-i passwd/username string astra
d-i passwd/user-password password astra
d-i passwd/user-password-again password astra
#d-i grub-installer/password password astra
#d-i grub-installer/password-again password astra
# или зашифрован с помощью хэша crypt(3).
# printf "password" | mkpasswd -s -m sha-256
#d-i passwd/root-password-crypted password HIDE_PASSWORD
### Установка базовой системы ###
# Настройте APT так, чтобы по умолчанию не устанавливались рекомендуемые пакеты.
#Использование этого может привести к неполной системе и должен использоваться только очень
# опытные пользователи.
d-i base-installer/install-recommends boolean true
# Устанавливаемый пакет образа ядра (мета); "none" можно использовать, если не нужно устанавливать ядро.
d-i base-installer/kernel/image select linux-image-5.10.0-19-amd64
# Использовать несвободное ПО?
d-i apt-setup/non-free boolean true
# Использовать программное обеспечение из раздела contrib?
d-i apt-setup/contrib boolean true
# Выберите, какие службы обновления использовать; определить зеркала, которые будут использоваться.
# Значения, показанные ниже, являются обычными значениями по умолчанию.
#d-i apt-setup/services-select multiselect security, updates
#d-i apt-setup/security_host string security.debian.org
# По умолчанию установщик требует, чтобы репозитории были аутентифицированы
# используя известный ключ gpg. Этот параметр можно использовать для отключения этого
# аутентификация. Предупреждение: небезопасно, не рекомендуется.
#d-i debian-installer/allow_unauthenticated boolean false
d-i debian-installer/allow_unauthenticated boolean true
# Проверить целостность другого установочного образа?
d-i cdrom-checker/nextcd boolean false
# Просканировать дополнительный установочный носитель?
#apt-cdrom-setup apt-setup/cdrom/set-double boolean false
#apt-cdrom-setup apt-setup/cdrom/set-failed boolean false
#apt-cdrom-setup apt-setup/cdrom/set-first boolean false
#apt-cdrom-setup apt-setup/cdrom/set-next boolean false
#Раскомментируйте это, чтобы добавить мультиархивную конфигурацию для i386.
#d-i apt-setup/multiarch string i386
### Выбор пакета ###
#standard, desktop, xfce-desktop, ssh-server
#tasksel tasksel/first select ssh-server
tasksel tasksel/first select ssh-server lldpd lm-sensors mc net-tools standard
# Отдельные дополнительные пакеты для установки
# Здесь указываются только те пакеты, которые задают вопросы в процессе установки.
# Прочие пакеты, с перепроверкой подключения, перенесены в postinstall.sh
# Они не указаны все в одном месте из-за проблем с подключением к репозиториям - при
# длительной выгрузке пакетов репозиторий обрывает подключение (error 104)
d-i pkgsel/include string nscd nslcd ttf-mscorefonts-installer
# Если нужен будет wiresherk...
# При установке Wireshark запретить не root захват пакетов
#d-i wireshark-common/install-setuid boolean false
ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula boolean true
popularity-contest popularity-contest/participate boolean false
# Настройка nscd и nslcd по умолчанию - в postistall будет изменение на требуемые данные
#d-i nslcd/ldap-base string dc=unassigned-domain
#d-i nslcd/ldap-uris string ldap://127.0.0.1/
#d-i libnss-ldapd/nsswitch multiselect
# Обновлять ли пакеты после debootstrap.
# Allowed values: none, safe-upgrade, full-upgrade
#d-i pkgsel/upgrade select full-upgrade
d-i pkgsel/upgrade select none
# Некоторые версии установщика могут сообщать о том, какое программное обеспечение у вас установлено
# установлено и какое программное обеспечение вы используете. По умолчанию не отчитываться,
# но отправка отчетов помогает проекту определить, какое программное обеспечение наиболее
# популярен и включает его на компакт-диски.
popularity-contest popularity-contest/participate boolean false
### Установка загрузчика
#Grub — загрузчик по умолчанию (для x86). Если вы хотите установить lilo
#вместо этого раскомментируйте это:
#d-i grub-installer/skip boolean false
#Чтобы также пропустить установку lilo и не устанавливать загрузчик,
# раскомментируйте это тоже:
d-i lilo-installer/skip boolean true
#Это достаточно безопасно, так как grub автоматически устанавливается в MBR.
#если на машине не обнаружена другая операционная система.
d-i grub-installer/only_debian boolean true
#Это заставляет grub-installer устанавливаться в MBR, если он также находит какие-либо другие
#ОС, которая менее безопасна, поскольку может не иметь возможности загрузить эту другую ОС.
d-i grub-installer/with_other_os boolean true
#В частности, из-за потенциальных USB-накопителей местоположение MBR не может быть
#определяется безопасно в целом, поэтому это необходимо указать:
d-i grub-installer/bootdev string default
# Отключает именование по новому формату, возвращая eth0, eth1
#d-i debian-installer/add-kernel-opts string net.ifnames=0 biosdevname=0
### Завершение установки
# Во время установки с последовательной консоли обычные виртуальные консоли
# (VT1-VT6) обычно отключены в /etc/inittab. Раскомментировать следующий
# строка, чтобы предотвратить это.
d-i finish-install/keep-consoles boolean true
#Избегайте этого последнего сообщения о завершении установки.
#d-i finish-install/reboot_in_progress note
# Есть 2 способа установки - с помощью PXE и с помощью ISO образа записанного на флешку.
# Раскомментируй требуемый способ и собери пакет
# PXE - Переход в /opt установленной системы, загрузка скрипта пост-установки c ...
#d-i preseed/late_command string cd /target/opt/ ; \
#\
#wget http://HIDE_HTTP_SERVER/bullseye/post-install/postinstall.sh ; \
#wget http://HIDE_HTTP_SERVER/bullseye/post-install/postinstall.tar.gz ; \
#chroot /target/ bash /opt/postinstall.sh
Вы правы что ipxe софт довольно свежий, но это не замена а альтернатива. В данном случае ipxe сочетает в себе функции и прошивки для некоторых сетевых карт и загрузчика.iPXE - это более свежий вариант с кучей плюшек и поддержкой разных архитектур ибо я занимаюсь тестированием разных железок :-)))
Возможно за моё мнение меня захейтят, но я надеюсь на свободу слова. С редос я знаком очень хорошо, и всё что я могу сказать - они не "включали" в ядро нужные драйверы. Они просто забыли их сломать, так как сломали всё остальное.Мои комментарии по теме:
РедОС, АстраОС - грузятся без каких либо проблем при соблюдении их инструкций. Обе конторы молодцы и ВКЛЮЧИЛИ ядро для загрузку по PXE в свои дистрибуты!!!
Честно говоря тут ничего сказать не могу.С Debian - всё ОЧЕНЬ плохо, у базовом DVD дистрибуте и в NetINSTAL - НЕТ поддержки PXEона есть в отдельном проекте mini.iso в разделе "для особо опытных админов" вот собственно там и лежат 2 волшебных файла "linux и initrd.gz"
Код: Выделить всё
menuentry "Debian install" {
linux (http,mirror.YANDEX.ru)/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/linux --- quiet
initrd (http,mirror.YANDEX.ru)/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/initrd.gz
}
Ыыыыы, Вы совершенно правильно пишете, хотя и не видите картину в целом :-))kasak писал: ↑15.02.2025 23:02Возможно за моё мнение меня захейтят, но я надеюсь на свободу слова. С редос я знаком очень хорошо, и всё что я могу сказать - они не "включали" в ядро нужные драйверы. Они просто забыли их сломать, так как сломали всё остальное.
Про астраос я ничего сказать не могу. Всё что я могу сказать про "отечественные" дистрибутивы, это то что они предназначены для зарабатывания денег а не развитие по. У них нет нормального комьюнити и они зачастую даже пересобрать чужое нормально не могут.
Вклад в свободное ПО от них нулевой, зато в "реестре отечественного по". Да они грузятся по сети, но это не их заслуга.
i Уведомление от модератора Bizdelnick А давайте лучше все дружно перестанем офтопить.
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |