Сървърът PXE (Preboot Execution Environment) позволява на потребителя да зарежда Linux дистрибуция от мрежата и да го инсталира на стотици персонални компютри едновременно, без изображения на ISO iso. Ако компютрите на клиента ви нямат CD / DVD или USB устройства или ако искате да настроите няколко компютъра едновременно в голямо предприятие, тогава PXE сървърът може да се използва за спестяване на пари и време.

В тази статия ще ви покажем как можете да конфигурирате PXE сървър в Ubuntu 14.04.

Конфигуриране на мрежи

За да започнете, първо трябва да настроите своя PXE сървър, за да използвате статичен IP адрес. За да настроите статичен IP адрес във вашата система, трябва да редактирате файла "/ etc / network / interfaces".

1. Отворете файла "/ etc / network / interfaces".

 sudo nano / etc / мрежа / интерфейси 

Добавете / редактирайте, както е описано по-долу:

 # Връзката на мрежовия интерфейс на loopback auto loceace lo inet loopback # Основният мрежов интерфейс auto eth0 iface eth0 inet статичен адрес 192.168.1.20 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 8.8.8.8 

Запишете файла и излезте. Това ще зададе своя IP адрес на "192.168.1.20". Рестартирайте мрежовата услуга.

 sudo /etc/init.d/networking рестартиране 

Инсталирайте DHCP, TFTP и NFS:

DHCP, TFTP и NFS са основни компоненти за конфигуриране на PXE сървър. Първо трябва да актуализирате системата си и да инсталирате всички необходими пакети.

За тази цел изпълнете следните команди:

 sudo apt-get актуализация sudo apt-get инсталирате isc-dhcp-сървър inetutils-inetd tftpd-hpa syslinux nfs-kernel-сървър 

Конфигуриране на DHCP сървър:

DHCP означава Dynamic Host Configuration Protocol и се използва главно за динамично разпределяне на мрежови конфигурационни параметри като IP адреси за интерфейси и услуги. DHCP сървър в PXE среда позволява на клиентите да заявят и получат IP адрес автоматично, за да получат достъп до мрежовите сървъри.

1. Редактирайте файла "/ etc / default / dhcp3-server".

 sudo nano / etc / default / dhcp3-сървър 

Добавете / редактирайте, както е описано по-долу:

 ИНТЕРФЕЙСИ = "eth0" 

Запазете (Ctrl + o) и излезте (Ctrl + x) файла.

2. Редактирайте файла "/etc/dhcp3/dhcpd.conf":

 sudo nano /etc/dhcp/dhcpd.conf 

Добавете / редактирайте, както е описано по-долу:

 стандартно време за отдаване под наем 600; максимално време на отдаване под наем 7200; подмрежа 192.168.1.0 мрежова маска 255.255.255.0 {диапазон 192.168.1.21 192.168.1.240; подмрежова маска за опция 255.255.255.0; възможност рутери 192.168.1.20; опционен излъчващ адрес 192.168.1.255; име на файл "pxelinux.0"; следващ сървър 192.168.1.20; } 

Запишете файла и излезте.

3. Стартирайте DHCP услугата.

 sudo /etc/init.d/isc-dhcp-server старт 

Конфигуриране на TFTP сървър:

TFTP е протокол за прехвърляне на файлове, който е подобен на FTP. Той се използва, когато не се изисква разпознаване от потребителя и видимост на указател. TFTP сървърът винаги слуша за PXE клиенти в мрежата. Когато открие някой мрежов PXE клиент, който иска PXE услуги, той предоставя мрежов пакет, който съдържа менюто за зареждане.

1. За да конфигурирате TFTP, редактирайте файла "/etc/inetd.conf".

 sudo nano /etc/inetd.conf 

Добавете / редактирайте, както е описано по-долу:

 tftp dgram udp изчакайте корен /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s / var / lib / tftpboot 

Запишете и излезте от файла.

2. Редактирайте файла "/ etc / default / tftpd-hpa".

 sudo nano / etc / default / tftpd-hpa 

Добавете / редактирайте, както е описано по-долу:

 TFTP_USERNAME = "tftp" TFTP_DIRECTORY = "/ var / lib / tftpboot" TFTP_ADDRESS = "[0.0.0.0:]:69" TFTP_OPTIONS = "- сигурен" RUN_DAEMON = ИЪ / tftpboot " 

Запишете и излезте от файла.

3. Активирайте услугата за зареждане за inetd да стартирате автоматично след всяка рестартиране на системата и стартирайте услугата tftpd .

 sudo update-inetd - включване BOOT sudo услуга tftpd-hpa старт 

4. Проверете състоянието.

 sudo netstat -lu 

Тя ще покаже следния резултат:

 Протокол за изпращане на съобщения от местния адрес Адрес на външен адрес udp 0 0 *: tftp *: * 

Конфигурирайте началните файлове на PXE

Сега имате нужда от файла за стартиране PXE "pxelinux.0", който да се намира в основната директория на TFTP. Направете структура на директорията за TFTP и копирайте всички файлове на bootloader, предоставени от syslinux, от "/ usr / lib / syslinux /" в "/ var / lib / tftpboot /", като издадете следните команди:

 sudo mkdir / var / lib / tftpboot sudo mkdir /var/lib/tftpboot/pxelinux.cfg sudo mkdir -p /var/lib/tftpboot/Ubuntu/14.04/amd64/ sudo cp /usr/lib/syslinux/vesamenu.c32 / var / lib / tftpboot / sudo cp /usr/lib/syslinux/pxelinux.0 / var / lib / tftpboot / 

Настройте конфигурационния файл на PXELINUX

Конфигурационният файл на PXE дефинира менюто за зареждане, което се показва на PXE клиента, когато се зареди и се свърже с TFTP сървъра. По подразбиране, когато PXE клиент стартира, той ще използва собствения си MAC адрес, за да укаже кой конфигурационен файл да се чете, така че трябва да създадем този файл по подразбиране, който съдържа списъка с ядра, които са достъпни за зареждане.

Редактирайте конфигурационния файл на PXE Server с валидни опции за инсталиране.

За да редактирате "/var/lib/tftpboot/pxelinux.cfg/default"

 sudo nano /var/lib/tftpboot/pxelinux.cfg/default 

Добавете / редактирайте, както е описано по-долу:

 DEFAULT vesamenu.c32 TIMEOUT 100 PROMPT 0 МЕНЮ ВКЛЮЧВА pxelinux.cfg / PXE.conf NOESCAPE 1 ЕТИКЕТ Опитайте Ubuntu 14.04 Desktop MENU LABEL Опитайте Ubuntu 14.04 Настолно ядро ​​Ubuntu / vmlinuz добавете boot = casper netboot = nfs nfsroot = 192.168.1.20: / var / lib / tftpboot / Ubuntu / 14.04 / amd64 initrd = Ubuntu / initrd.lz спонтанен шлайф ЕЛЕКТРОНЕН ЕТИКЕТ Инсталирай Ubuntu 14.04 ЕЛЕКТРОНЕН МЕНЮ ЕТИКЕТ Инсталирай Ubuntu 14.04 Персонално настолно ядро ​​Ubuntu / vmlinuz добавете boot = casper автоматичен ubiquity netboot = nfs nfsroot = 192.168.1.20: /var/lib/tftpboot/Ubuntu/14.04/amd64 initrd = Ubuntu / initrd.lz спокойно изпръскване ENDTEXT 

Запишете и излезте от файла.

Редактирайте файла "/var/lib/tftpboot/pxelinux.cfg/pxe.conf".

 sudo nano /var/lib/tftpboot/pxelinux.cfg/pxe.conf 

Добавете / редактирайте, както е описано по-долу:

 MENU TITLE PXE сървър NOESCAPE 1 ALLOWOPTIONS 1 PROMPT 0 МЕНЮ WIDTH 80 МЕНЮ МРЕЖА 14 МЕНЮ TABMSGROW 24 MENU MARGIN 10 МЕНЮ COLOUR border 30; 44 #ffffffff # 00000000 std 

Запишете и излезте от файла.

Добавете Ubuntu 14.04 Desktop Boot Images към PXE Server

За това са необходими файловете на Ubuntu kernel и initrd. За да получите тези файлове, се нуждаете от Ubuntu 14.04 Desktop ISO Image. Можете да изтеглите изображението на Ubuntu 14.04 ISO в папката / mnt, като изпишете следната команда:

 sudo cd / mnt игри sudo wget http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso 

Забележка : URL адресът за изтегляне може да се промени, когато ISO изображението се актуализира. Вижте този уебсайт за последната връзка за изтегляне, ако горепосоченият URL адрес не работи.

Монтирайте ISO файла и копирайте всички файлове в папката TFTP, като изпишете следните команди:

 sudo mount -o цикъл /mnt/ubuntu-14.04.3-desktop-amd64.iso / media / sudo cp -r / media / * /var/lib/tftpboot/Ubuntu/14.04/amd64/ sudo cp -r / media / .disk /var/lib/tftpboot/Ubuntu/14.04/amd64/ sudo cp /media/casper/initrd.lz / media / casper / vmlinuz / var / lib / tftpboot / Ubuntu / 

Конфигуриране на NFS сървър за експортиране на съдържанието на ISO

Сега трябва да настроите огледалата за инсталиране на източника чрез протокола NFS. Можете също така да използвате http и ftp за Mirrors на източника на инсталиране. Тук използвах NFS за експортиране на съдържанието на ISO.

За да конфигурирате NFS сървъра, трябва да редактирате файла "/ etc / exports".

 sudo nano / и т.н. / износ 

Добавете / редактирайте, както е описано по-долу:

 /var/lib/tftpboot/Ubuntu/14.04/amd64 * (ro, async, no_root_squash, no_subtree_check) 

Запишете и излезте от файла. За да влезе в сила промените, експортирайте и стартирайте услугата за NFS.

 sudo exportfs -a sudo /etc/init.d/nfs-kernel-server начало 

Сега вашият PXE сървър е готов.

Конфигуриране на PXE клиент за мрежово зареждане

Клиент на PXE може да бъде всяка компютърна система с опция за активиране на зареждане с PXE мрежа. Сега клиентите ви могат да зареждат и инсталират Ubuntu 14.04 Desktop, като активират опциите "Boot From Network" от системния си BIOS.

Вече сте готови да тръгнете - стартирайте PXE клиентската машина с опцията за активиране на зареждането в мрежата и вече трябва да видите подменю, което се показва за вашия Ubuntu 14.04 Desktop, който създадохме.

заключение

Конфигурирането на инсталирането на мрежово зареждане чрез PXE сървър е ефективно и метод, спестяващ време. Можете да инсталирате стотици клиенти едновременно във вашата локална мрежа. Необходимо е само PXE сървър и клиенти с PXE поддръжка. Изпробвайте я и ни уведомете, ако това работи за вас.

Референция: PXE сървър wiki PXE сървър Ubuntu

Кредит на изображението: fupsol_unl_20