Файлы конфигурации загрузчика лежат в /tftpboot/pxelinux.cfg
Копируем default под новым названием, например С0A80005 для клиента с IP адресом - 192.168.0.5 Названия получаем путем перевода цифр IP адреса в шестнадцатеричную систему, набирая первые цифры до точки и переводя их из Deg в Hex (можно воспользоваться стандартным калькулятором в системе), записываем, далее следующие цифры и так далее.
Теперь в файле С0A80005 можно настроить какое ядро загружать и параметры передаваемые ядру. Например, можно проверить новую сборку скопировав initrd и vmlinuz в /tftpboot под другим названием, типа initrdt и vmlinuzt, и соответственно изменив их в С0A80005.
На некоторых терминальных клиентах при загрузке предлагается выбрать режим для экрана, либо ждать 30 секунд. Чтобы это устранить надо прописать в С0A80005 (напомню что это для IP адреса 192.168.0.5) параметр vga=0x31A (подставить значение из предложенного видеокартой при загрузке).
Удобно всегда под рукой иметь набор полезных инструментов для диагностики ПК,
при этом ни чего не цепляя лишнего на машину в виде дополнительной загрузочной флэшки.
Все будет загружаться по сети.
Итак для реализации меню потребуются следующие файлы menu.c32, memdisk, pxelinux.0
все можно взять из архива последней версии syslinux: http://www.kernel.org/pub/linux/utils/boot/syslinux
Размещаем это в /tftpboot/ на сервере, pxelinux.0 перезаписываем более новой версией.
В /tftpboot/pxelinux.cfg/ создаем файл default примерно такого содержания:
default ts prompt 1 timeout 60 UI menu.c32 MENU TITLE --== PXE Boot Menu ==-- MENU COLOR border 30;40 #40000000 #00000000 std MENU COLOR title 1;36;40 #c00090f0 #00000000 std MENU COLOR unsel 37;40 #90ffffff #00000000 std MENU COLOR hotkey 1;37;40 #ffffffff #00000000 std MENU COLOR sel 7;37;40 #e0000000 #20ff8000 all MENU COLOR scrollbar 30;40 #40000000 #00000000 std LABEL bootp#1 MENU LABEL Boot partition #1 on first hard drive! KERNEL chain.c32 APPEND hd0 1 LABEL ts MENU LABEL ThinStation kernel vmlinuz append ramdisk_blocksize=4096 initrd=initrd union=aufs root=/dev/ram0 ramdisk_size=524288 splash=silent vga=791 console=ttyS3 LABEL hiren MENU LABEL hiren10 KERNEL memdisk APPEND floppy c=70 h=64 s=32 initrd=img/hiren.ima LABEL atih11 MENU LABEL arconis true image home 11 KERNEL atih/kernel.dat APPEND initrd=atih/ramdisk.dat vga=0x314 ramdisk_size=40000 quiet LABEL atih9 MENU LABEL acronis true image home 9 KERNEL memdisk APPEND initrd=img/acronti.IMA LABEL acron_rexp MENU LABEL ACRON_Recovery expert KERNEL memdisk APPEND initrd=img/ACRON_RE.IMA LABEL rip32 MENU LABEL rip (32-bit kernel) KERNEL img/kernel32 APPEND vga=normal initrd=img/rootfs.cgz root=/dev/ram0 rw LABEL rip64 MENU LABEL rip (64-bit kernel) KERNEL img/kernel64 APPEND vga=normal initrd=img/rootfs.cgz root=/dev/ram0 rw LABEL ripx32 MENU LABEL ripX (32-bit kernel) KERNEL img/kernel32 APPEND vga=normal xlogin initrd=img/rootfs.cgz root=/dev/ram0 rw LABEL ripx64 MENU LABEL ripX (64-bit kernel) KERNEL img/kernel64 APPEND vga=normal xlogin initrd=img/rootfs.cgz root=/dev/ram0 rw LABEL clonehdd MENU LABEL clonehdd KERNEL memdisk APPEND initrd=img/hdclone.img floppy LABEL mhdd MENU LABEL MHDD v4.6 KERNEL memdisk APPEND initrd=img/mhdd32.ima floppy LABEL memtest MENU LABEL memtest KERNEL memdisk APPEND initrd=img/memtest.ima floppy LABEL victoria MENU LABEL victoria KERNEL memdisk APPEND initrd=img/victoria.ima floppy LABEL boot98 MENU LABEL boot98 KERNEL memdisk APPEND initrd=img/w98_dos.ima LABEL vc MENU LABEL VC_NTFS KERNEL memdisk APPEND initrd=img/NTFSVOLK.ima LABEL ghost MENU LABEL ghost KERNEL memdisk APPEND initrd=img/ghost.IMA LABEL winpass MENU LABEL WINPASSWORD KERNEL memdisk APPEND initrd=img/WINPASS.IMA LABEL HDT MENU LABEL Hardware Detection Tool KERNEL memdisk APPEND initrd=img/hdt034.img LABEL pm8 MENU LABEL Partition magic 8.5 KERNEL memdisk APPEND initrd=img/pm85.imz floppy LABEL bartpe MENU LABEL bartpe 400m kernel startrom.0 LABEL bartrus MENU LABEL bartpe micro ruslive 122m kernel startro2.0 Label Clonezilla Live MENU LABEL Clonezilla Live kernel cz/vmlinuz append initrd=cz/initrd.img boot=live union=aufs noswap noprompt vga=788 fetch=tftp://192.168.1.250/cz/filesystem.squashfs Label Super Grub Disk MENU LABEL Super Grub Disk KERNEL memdisk APPEND floppy initrd=img/super_grub_disk_english_floppy_0.9799.img LABEL m #MENU HIDDEN KERNEL menu.c32 #APPEND syslinux.cfg
Редактируем этот файл по своим требованиям, кидаем в /tftpboot/ или /tftpboot/img необходимые образы. Теперь при загрузке по умолчанию загружается тонкий клиент, но если во время приглашения boot нажать m то появиться меню. или написать например vc - дос c поддержкой ntfs по выбору.
Вот еще полезная информация: http://syslinux.zytor.com/wiki/index.php/PXELINUX
© 2022 nik0el