Настройка сервера сетевой установки на базе CentOS
🕛 30.01.2010, 23:10
Устанавливаем tftp-сервер:yum install tftp-server
и активируем его в /etc/xinetd.d/tftp:
disable = no
Перезапускаем xinetd, чтобы изменения подействовали:
service xinetd restart
Устанавливаем пакет syslinux:
yum install syslinux
Копируем необходимые для загрузки файлы syslinux в директорию tftpboot:
cp /usr/lib/syslinux/pxelinux.0 /tftpboot cp /usr/lib/syslinux/menu.c32 /tftpboot cp /usr/lib/syslinux/memdisk /tftpboot cp /usr/lib/syslinux/mboot.c32 /tftpboot cp /usr/lib/syslinux/chain.c32 /tftpboot
Создаем директорию с PXE меню:
mkdir /tftpboot/pxelinux.cfg
Создаем для каждого релиза CentOS, которые потребуется устанавливать удаленно,
поддиректории для загрузочных образов:
mkdir -p /tftpboot/images/centos/i386/3.0 mkdir -p /tftpboot/images/centos/i386/3.1 mkdir -p /tftpboot/images/centos/x86_64/3.0 mkdir -p /tftpboot/images/centos/x86_64/3.1 mkdir -p /tftpboot/images/centos/i386/4.0 mkdir -p /tftpboot/images/centos/i386/4.1 mkdir -p /tftpboot/images/centos/x86_64/4.0 mkdir -p /tftpboot/images/centos/x86_64/4.1 mkdir -p /tftpboot/images/centos/i386/5.0 mkdir -p /tftpboot/images/centos/i386/5.1 mkdir -p /tftpboot/images/centos/x86_64/5.0 mkdir -p /tftpboot/images/centos/x86_64/5.1
Для каждого релиза и архитектуры копируем образ ядра vmlinuz и ram-диск
initrd.img из директории /images/pxeboot/ на первом установочном диске каждого
релиза (из $Release/$ARCH копируем в /tftpboot/images/centos/$ARCH/$RELEASE).
Настраиваем DHCP, добавляем в /etc/dhcpd.conf (вместо xxx.xxx.xxx.xxx
прописываем адрес нашего PXE-сервера):
allow booting; allow bootp; option option-128 code 128 = string; option option-129 code 129 = text; next-server xxx.xxx.xxx.xxx; filename "/pxelinux.0";
Перезапускаем DHCP сервер:
service dhcpd restart
Создаем PXE меню, добавляем в /tftpboot/pxelinux.cfg/default примерно следующее:
default menu.c32 prompt 0 timeout 300 ONTIMEOUT local
MENU TITLE PXE Menu
LABEL Pmajic MENU LABEL Pmajic kernel images/pmagic/bzImage append noapic initrd=images/pmagic/initrd.gz root=/dev/ram0 init=/linuxrc ramdisk_size=100000
label Dos Bootdisk MENU LABEL ^Dos bootdisk kernel memdisk append initrd=images/622c.img
LABEL CentOS 5 x86 NO KS eth0 MENU LABEL CentOS 5 x86 NO KS eth0 KERNEL images/centos/5/x86/vmlinuz APPEND ks initrd=images/centos/5/x86_64/initrd.img \ ramdisk_size=100000 ksdevice=eth1 ip=dhcp url -url http://xxx.xxx.xxx.xxx/mirrors/CentOS-5-i386/
LABEL CentOS 5 x86_64 NO KS eth0 MENU LABEL CentOS 5 x86_64 NO KS eth0 KERNEL images/centos/5/x86_64/vmlinuz APPEND ks initrd=images/centos/5/x86_64/initrd.img \ ramdisk_size=100000 ksdevice=eth1 ip=dhcp url -url http://xxx.xxx.xxx.xxx/mirrors/CentOS-5-x86_64/