目录
一、概念
PXE和无人值守
允许客户机通过网络从远程服务器下载引导镜像,内核文件,并且加载系统的安装文件,安装整个Linux操作系统
PXE的核心:批量安装
无人值守:自动化操作
优点:
- 规模化。同时安装多个Linux或其他软件
- 自动化。无需人工介入,自动完成系统安装
- 远程实现。不需要光盘也不需要u盘,所有的一切都来自服务端提供。必须要依赖网络。
涉及的服务程序:
tftp:文件传输,小文件传输 传输的是内核文件和初始化镜像文件(引导镜像) 使用udp协议 端口69
xinetd:网络守护进程服务程序,管理轻量级的网络服务
dhcp:动态的给客户机分配IP地址(所以必须依赖网络)
vsftpd:大文件传输协议,传输的系统安装文件
sysliunx:PXE引导程序,引导客户机的安装步骤
kickstart。无人值守程序,自动化配置安装需要的软件以及磁盘分区等
三个核心的文件:
initrd.img:引导镜像文件/初始化镜像文件,依赖光盘镜像
vmlinuz:Linux系统内核文件,依赖光盘镜像
pxelinux.0:PXE的引导文件,syslinux程序提供
安装文件:
vsftpd传输,安装文件也依赖光盘镜像
PXE和无人值守流程图:
二、配置过程:
关闭防火墙安全机制
虚拟机的内存最少要4G,不然起不来。光盘镜像挂载,点已连接
先装tftp-server 和 xinetd
进入软件目录
改配置文件
vim etc/xinetd.d/tftp
重启两个服务和设置自启动
安装dhcp
配置dhcp
进入 cd /usr/share/doc/dhcp-4.2.5/,找到dhcpd模版文件
将模版文件复制到dhcp目录下,并且改名
修改配置文件的时候记得备份
回到etc/dhcp/进入配置文件:vim dhcpd.conf
重启和自启动dhcp
挂载光盘镜像:
mount /dev/cdrom /mnt
进入mnt里面查看镜像文件
cd /mnt/images/pxeboot/
将镜像文件发到 tftpboot
tftp:文件传输,小文件传输 传输的是内核文件和初始化镜像文件(引导镜像)
引导程序安装:
syslinux
进入syslinux目录
将 pxelinux.0文件复制到cp pxelinux.0 /var/lib/tftpboot/
查看三个文件是都都有
检查三个文件是否都有
initrd.img 镜像文件
vmlinuz 镜像文件
pxelinux.0 PXE的引导文件,syslinux程序提供
安装vsftpd
进入vsftpd目录,创建centos7 将mnt下的镜像文件复制到centos7文件
将mnt下的镜像文件复制到centos7文件
cp -rf /mnt/* /var/ftp/centos7/
-rf 强制复制
启动服务和开启自动启动
配置启动菜单文件:
在tftp里创建pxelinux.cfg目录存放default引导配置文件
在pxelinux.cfg 目录创建 vim dedault:
客户端准备:
新建虚拟机,全部默认
自动到选语言
回虚拟机
安装yum -y install system-config-kickstart
进入虚拟机的图形化界面,设置
挂载点:/boot,文件系统类型:xfs,固定大小:500M
文件系统类型:swap,固定大小:4096M
挂载点:/home,文件系统类型:xfs,固定大小:4096M
挂载点:/,文件系统类型:xfs,使用磁盘上全部未使用空间
将文件配置好保存在root里
将保存的文件 复制到/var/ftp/
cp /root/ks.cfg /var/ftp/
配置ks.cfg
-------------------------------------------------------------------------------------------------------------------
%packages
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@print-client
@x11
binutils
chrony
ftp
gcc
kernel-devel
kexec-tools
make
open-vm-tools
patch
python
%end
-------------------------------------------------------------------------------------------------------------------
复制到ks.cfg
自动化无人值守
无人值守配置添加:
先回到cd /var/lib/tftpboot/pxelinux.cfg/
vim default
回虚拟机验证结果
重新启动
之后安装虚拟机就可以自动化了