PXE — различия между версиями

Материал из Rosalab Wiki
Перейти к: навигация, поиск
Строка 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