PXE — различия между версиями
Slava86 (обсуждение | вклад) |
|||
Строка 1: | Строка 1: | ||
− | Эта инструкция описывает загрузку и установку Росы 2019.1 по сети (PXE) | + | '''Эта инструкция описывает загрузку и установку Росы 2019.1 по сети (PXE)''' |
− | + | ||
+ | Что такое PXE? | ||
+ | Это среда для загрузки компьютера с помощью сетевой карты без использования локальных носителей данных. | ||
+ | |||
+ | |||
+ | устанавливаем пакет httpd | ||
+ | dnf install httpd | ||
+ | включаем сервис systemctl start httpd && systemctl enable httpd | ||
+ | |||
+ | делаем запись в firewall | ||
+ | firewall-cmd --add-service=http && firewall-cmd --add-service=http --permanent | ||
+ | |||
+ | монтируем образ *.iso | ||
+ | mount -o loop *.iso /mnt | ||
+ | |||
+ | идем в каталог сервера | ||
+ | cd /var/www/html | ||
+ | |||
+ | создаем каталог с любым именем | ||
+ | mkdir rosa && cd rosa | ||
+ | |||
+ | копируем примонтированный образ | ||
+ | rsync -zavP /mnt/* . | ||
+ | |||
+ | размонтирум каталог с изображением | ||
+ | umount /mnt | ||
+ | |||
+ | создаем права для чтения | ||
+ | chmod 755 -R rosa | ||
+ | |||
+ | перезагрузим сервер | ||
+ | systemctl restart httpd | ||
+ | |||
+ | проверяем в браузере | ||
+ | http://ip-address/rosa | ||
+ | |||
+ | '''Настройка tftp-server и минимальные файлы для pxe.''' | ||
+ | |||
+ | dnf install tftp-server xinetd syslinux | ||
+ | |||
+ | копируем из каталога /usr/share/syslinux файлы | ||
+ | cp menu.c32 pxelinux.0 ldlinux.c32 libutil.c32 /var/lib/tftpboot/ | ||
+ | |||
+ | редактируем конфиг tftp-server | ||
+ | |||
+ | nano /etc/xinetd.d/tftp | ||
+ | если нет создаем и добавляем | ||
+ | |||
+ | '''service tftp | ||
+ | { | ||
+ | socket_type = dgram | ||
+ | protocol = udp | ||
+ | wait = yes | ||
+ | user = root | ||
+ | server = /usr/sbin/in.tftpd | ||
+ | server_args = -s /var/lib/tftpboot | ||
+ | disable = no | ||
+ | per_source = 11 | ||
+ | cps = 100 2 | ||
+ | flags = IPv4 | ||
+ | }''' | ||
+ | |||
+ | |||
+ | если есть config меняем значение disable = yes ,на disable = no...сохраняем | ||
+ | |||
+ | скачаем или скопируем в каталог /var/lib/tftpboot vmlinuz и initrd.img | ||
+ | wget http:///ip-address/rosa/isolinux/initrd.img | ||
+ | wget http:///ip-address/rosa/isolinux/vmlinuz | ||
+ | |||
+ | создадим каталог pxelinux.cfg | ||
+ | mkdir pxelinux.cfg | ||
+ | и сделаем файл default в нем, и запишем | ||
+ | |||
+ | '''default menu.c32 | ||
+ | prompt 0 | ||
+ | timeout 300 | ||
+ | ONTIME local | ||
+ | menu title #================ PXE BOOT ===============# | ||
+ | label 1 | ||
+ | menu label ^1) install rosa | ||
+ | kernel /vmlinuz0 | ||
+ | append initrd=/initrd0.img inst.repo=http://ip-address/rosa-lxqt/ root=live:http://ip-address/rosa-lxqt/LiveOS/squashfs.img | ||
+ | |||
+ | label 2 | ||
+ | menu label ^2) install rosa text | ||
+ | kernel /vmlinuz0 | ||
+ | append initrd=/initrd0.img inst.repo=http://ip-address/rosa-lxqt/ root=live:http://ip-address/rosa-lxqt/LiveOS/squashfs.img inst.text''' | ||
+ | |||
+ | сохраняем | ||
+ | |||
+ | запускаем сервис tftp-server | ||
+ | systemctl start xinetd && systemctl enable xinetd | ||
+ | |||
+ | добавляем в firewall | ||
+ | firewall-cmd --add-service=tftp && firewall-cmd --add-service=tftp --permanent | ||
+ | |||
+ | '''Настройка DHCP server.''' | ||
+ | |||
+ | устанавливаем dnf install dhcp | ||
+ | |||
+ | редактируем dhcpd.conf под ваши настройки сети | ||
+ | |||
+ | '''subnet 10.5.5.0 netmask 255.255.255.224 { | ||
+ | range 10.5.5.26 10.5.5.30; | ||
+ | option domain-name-servers ns1.internal.example.org; | ||
+ | option domain-name "internal.example.org"; | ||
+ | option routers 10.5.5.1; | ||
+ | option broadcast-address 10.5.5.31; | ||
+ | default-lease-time 600; | ||
+ | max-lease-time 7200; | ||
+ | }''' | ||
+ | |||
+ | внизу дописываем | ||
+ | '''allow booting; | ||
+ | allow bootp; | ||
+ | next-server ip-address; | ||
+ | filename "pxelinux.0";''' | ||
+ | |||
+ | сохраняем | ||
+ | |||
+ | запускаем сервер и заносим правила firewall | ||
+ | |||
+ | systemctl start dhcpd | ||
+ | systemctl enable dhcpd | ||
+ | firewall-cmd --add-service=dhcp | ||
+ | firewall-cmd --add-service=dhcp --permanent |
Версия 22:36, 2 июня 2020
Эта инструкция описывает загрузку и установку Росы 2019.1 по сети (PXE)
Что такое PXE? Это среда для загрузки компьютера с помощью сетевой карты без использования локальных носителей данных.
устанавливаем пакет httpd
dnf install httpd
включаем сервис systemctl start httpd && systemctl enable httpd
делаем запись в firewall firewall-cmd --add-service=http && firewall-cmd --add-service=http --permanent
монтируем образ *.iso mount -o loop *.iso /mnt
идем в каталог сервера cd /var/www/html
создаем каталог с любым именем mkdir rosa && cd rosa
копируем примонтированный образ rsync -zavP /mnt/* .
размонтирум каталог с изображением umount /mnt
создаем права для чтения chmod 755 -R rosa
перезагрузим сервер systemctl restart httpd
проверяем в браузере http://ip-address/rosa
Настройка tftp-server и минимальные файлы для pxe.
dnf install tftp-server xinetd syslinux
копируем из каталога /usr/share/syslinux файлы cp menu.c32 pxelinux.0 ldlinux.c32 libutil.c32 /var/lib/tftpboot/
редактируем конфиг tftp-server
nano /etc/xinetd.d/tftp если нет создаем и добавляем
service tftp {
socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4
}
если есть config меняем значение disable = yes ,на disable = no...сохраняем
скачаем или скопируем в каталог /var/lib/tftpboot vmlinuz и initrd.img wget http:///ip-address/rosa/isolinux/initrd.img wget http:///ip-address/rosa/isolinux/vmlinuz
создадим каталог pxelinux.cfg mkdir pxelinux.cfg и сделаем файл default в нем, и запишем
default menu.c32 prompt 0 timeout 300 ONTIME local menu title #================ PXE BOOT ===============#
label 1 menu label ^1) install rosa kernel /vmlinuz0 append initrd=/initrd0.img inst.repo=http://ip-address/rosa-lxqt/ root=live:http://ip-address/rosa-lxqt/LiveOS/squashfs.img
label 2 menu label ^2) install rosa text kernel /vmlinuz0 append initrd=/initrd0.img inst.repo=http://ip-address/rosa-lxqt/ root=live:http://ip-address/rosa-lxqt/LiveOS/squashfs.img inst.text
сохраняем
запускаем сервис tftp-server systemctl start xinetd && systemctl enable xinetd
добавляем в firewall firewall-cmd --add-service=tftp && firewall-cmd --add-service=tftp --permanent
Настройка DHCP server.
устанавливаем dnf install dhcp
редактируем dhcpd.conf под ваши настройки сети
subnet 10.5.5.0 netmask 255.255.255.224 {
range 10.5.5.26 10.5.5.30; option domain-name-servers ns1.internal.example.org; option domain-name "internal.example.org"; option routers 10.5.5.1; option broadcast-address 10.5.5.31; default-lease-time 600; max-lease-time 7200;
}
внизу дописываем allow booting; allow bootp; next-server ip-address; filename "pxelinux.0";
сохраняем
запускаем сервер и заносим правила firewall
systemctl start dhcpd systemctl enable dhcpd firewall-cmd --add-service=dhcp firewall-cmd --add-service=dhcp --permanent