PXE —— Instalación automática desatendida del sistema operativo Linux (pisando el registro de boxes)

Inserte la descripción de la imagen aquí

Servicio DHCP

El servidor DHCP se utiliza principalmente para asignar parámetros de red, como direcciones IP, a clientes en la red interna de la empresa .

entorno sin supervisión, cuando se inicia un cliente selecciona a partir de la red, será por la transmisión de paquetes de datos de difusión en la forma de encontrar el servidor DHCP , el servidor DHCP para obtener la dirección IP después de que los parámetros de inicio de lectura se pueden compartir archivos a través de TFTP.

(1) Instalar la operación del servicio DHCP yum install -y dhcp
(2) Modificar el archivo de configuración para asignar parámetros de red al cliente

[root@python ~]# vim /etc/dhcp/dhcp.conf
#dhcpd.conf
#
# Sample configuration file for ISC dhcpd
log-facility local7;

# A slightly different configuration for an internal subnet.
subnet 192.168.213.0 netmask 255.255.255.0 {
  range 192.168.213.3 192.168.213.254;
  option domain-name-servers 192.168.213.163;
  option subnet-mask 255.255.255.0;
  option routers 192.168.213.2;
  default-lease-time 600;
  max-lease-time 7200;
  next-server 192.168.213.163;
  filename "pxelinux.0";
}
[root@python ~]# systemctl start dhcpd
[root@python ~]# systemctl enable dhcpd
[root@python ~]# netstat -tunpl|grep 67
udp        0      0 0.0.0.0:67              0.0.0.0:*                           5440/dhcpd
udp        0      0 0.0.0.0:67              0.0.0.0:*                           1506/dnsmasq

Servicio TFTP

El servicio TFTP proporciona un uso compartido simple de archivos para el cliente. No tiene las funciones completas como FTP, pero debido al diseño simple, TFTP es muy adecuado para transferir archivos de inicio PXE pequeños y simples .

#安装TFTP
[root@python ~]# yum install -y tftp-server
#修改配置文件
[root@python ~]# cat /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
}

Instalar la herramienta de administración dinámica de tftp
tfpt es un servicio administrado dinámicamente por xinetd. Para iniciar el servicio, simplemente inicie xinetd

[root@python ~]# yum install xinetd
#将客户端所需要的启动引导文件复制到TFTP服务器
[root@python ~]# yum install -y syslinux	#通过该软件包获取引导文件
[root@python ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@python ~]# mount -o loop -t iso9660 /iso/CentOS-7-x86_64-DVD-1908.iso /var/ftp/centos7u7
[root@python ~]# cp /var/ftp/centos7u7/isolinux/vmlinuz /var/lib/tftpboot/centos7u7/
[root@python ~]# cp /var/ftp/centos7u7/isolinux/vesamenu.c32 /var/lib/tftpboot
[root@python ~]# cp /var/ftp/centos7u7/isolinux/initrd.img /var/lib/tftpboot/centos7u7/
[root@python ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@python ~]# cp /var/ftp/centos7u7/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
[root@python ~]# cd /var/lib/tftpboot/pxelinux.cfg/
[root@python pxelinux.cfg]# chmod 644 default
[root@python ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
default vesamenu.c32
timeout 60
display boot.msg
menu background splash.jpg
menu title CentOS X of Zhao

label centos7 64 <Auto Installation>
  menu label Install CentOS Linux ^7 x86_64 <Auto>
  kernel centos7u7/vmlinuz
  append initrd=centos7u7/initrd.img inst.stage2=ftp://192.168.213.163/centos7u7 inst.repo=ftp://192.168.213.163/centos7u7 inst.ks=ftp://192.168.213.163/centos-7-ks.cfg

label local
  menu default
  menu label Boot from ^local drive
  localboot 0xffff

menu end
#准备图片
[root@python ~]# cp splash.jpg /var/lib/tftpboot/splash.jpg
[root@python ~]# systemctl start xinetd
[root@python ~]# systemctl enable xinetd
[root@python ~]# ss -nutlp|grep 69
udp    UNCONN     0      0         *:69                    *:*                   users:(("xinetd",pid=14264,fd=5))

Servicio FTP

Protocolo de transferencia de archivos FTP (protocolo de transferencia de archivos), vsftp es un software que utiliza el protocolo FTP para compartir datos. La característica principal de vsftp es proporcionar un servicio seguro de intercambio de datos .

Use vsftp como la plataforma de servicio de intercambio de archivos del sistema Centos. Cuando el cliente se inicia desde la red y entra formalmente a la interfaz de instalación, también necesita leer los archivos del sistema en el CD de Centos para completar la instalación final. Estos archivos se comparten con vsftp para Usuarios de internet.

[root@python ~]# yum install -y vsftpd
[root@python ~]# systemctl start vsftpd
[root@python ~]# systemctl enable vsftpd

Ejemplo de instalación automatizada

Inicializar el entorno del sistema.

[root@python ~]# systemctl stop firewalld
[root@python ~]# systemctl disable firewalld
[root@python ~]# sed -i.bak 's/=enforcing/=disabled/' /etc/sysconfig/selinux
[root@python ~]# sed -i.bak 's/=enforcing/=disabled/' /etc/selinux/config
[root@python ~]# setenforce 0
[root@python ~]# cd /var/ftp/

Crear estructura de directorio de instalación

[root@python ftp]# mkdir centos6u8
[root@python ftp]# mkdir centos7u7
[root@python ftp]# cd /var/lib/tftpboot/
[root@python tftpboot]# mkdir centos6u8
[root@python tftpboot]# mkdir centos7u7

Configurar para iniciar DHCP

Configurar TFTP de inicio

Crea un archivo de respuesta automática

[root@python ~]# yum install system-config-kickstart
[root@python ~]# system-config-kickstart
#检查有无语法错误
[root@python ~]# ksvalidator ks.cfg
[root@python ~]# mv ks.cfg /var/ftp/centos-7-ks.cfg

Instalar automáticamente la prueba de máquina virtual

Pisar el hoyo

(1) Opciones de cargador de arranque
Inserte la descripción de la imagen aquí

# System bootloader configuration
bootloader --location=mbr	#在主引导记录(MBR)中安装引导装载程序
# Partition clearing information
clearpart --all

Si no instala el cargador de arranque (consulte a continuación), obtendrá una pantalla negra y se quedará atascadobooting from local disk

# System bootloader configuration
bootloader --location=none

Agregar parámetros del kernel net.ifnames=0 biosdevname=0modificará el nombre de la tarjeta de red a eth0

# System bootloader configuration
bootloader --append="net.ifnames=0 biosdevname=0" --location=mbr

(2) Método de instalación El
Inserte la descripción de la imagen aquídirectorio FTP también se puede centos-7-ks.cfgmodificar en el archivo de configuración

(3) Recuerde montar la imagen
mount -o loop -t iso9660 /iso/CentOS-7-x86_64-DVD-1908.iso /var/ftp/centos7u7

Si no está montado, se informará un error que no puede encontrar la ruta de mantenimiento del instalador en .treeinfo

Warning: can't find installer maininage path in .treeinfo
Warning: Downloading 'ftp://192.168.213.163/centos7u7/Live0S/squashfs.img' failed!
Warning anaconda: failed to fetch stage2 from ftp://192.168.213.163/centos7u7

(4) Después de exportar el archivo ks.cfg, modifique el nombre y agregue el siguiente contenido al final

%packages
@^minimal
@core
%end

(5) La imagen instalada tiene los requisitos de tamaño (640 píxeles * 480 píxeles), y las imágenes que no cumplen con los requisitos pueden mostrar fallas
(6) La duplicación incorrecta puede hacer que falle la instalación del sistema operativo

La prueba CentOS-6.10-x86_64-minimal.isono se puede instalar automáticamente
Inserte la descripción de la imagen aquí
(7) El error no pudo obtener kickstat de ftp
puede ser selinux o ftp no está configurado en modo anónimo
(8) VMware Workstation no es compatible con Device / Credential Guard
Ejecuta Windows Powershell como administrador Tecla de Windows + X), ejecute el comando bcdedit /set hypervisorlaunchtype off, reinicie la computadora

Este problema debería estar relacionado con la versión del sistema de Windows, que apareció después de la actualización automática de Windows 10

Supongo que te gusta

Origin www.cnblogs.com/zhaoya2019/p/12761520.html
Recomendado
Clasificación