实现环境为在 win7 上虚拟机 cenots7 系统;
pxe:
一般服务器安装系统, 都是通过光盘或 u 盘安装, 使用 pxe 则可通过网络引导安装系统, 而且还能自动完成所有安装步骤, 下面是具体配置步骤;
1 配置文件共享服务器, 可以是 nfshttpftp 协议访问, 用于存放要共享的 linux 系统安装文件;
2 配置 tftp 服务器, 用于提供要安装系统的主机 pxe 引导所必须的启动文件;
3 配置 dhcp 服务器, 用于给要安装系统的主机提供 ip 地址及其他信息;
4 使用 kickstart 文件, 用于自动应答操作系统安装;(本文没有实现此功能)
5 要有网卡的 pxe 功能引导要安装系统的主机;
一般把以上所有服务配置在一台主机上;
说明:
在 vmware station 上创建 2 台 centos7, 且网卡模式设置为 vnet3 即仅主机模式, 一台为 pxe 主机提供安装系统引导使用, 另一台为没有安装操作系统的空机器即待测试通过 pxe 网络安装系统;
先在 pxe 主机上安装各种所需服务和配置:
配置本地 yum 仓库, 以安装各种程序包:
- vim /etc/yum.repos.d/media.repo
- [base]
- name=media
- baseurl=file:///mnt
- enabled=1
- gpgcheck=0
- cost=100
其它. repo 文件都禁用, 即把后缀名添加为. bak 即可;
一 tftp 服务器安装:
tftp 服务可以是被 xinetd 管理的瞬时守护进程, 所以, 要保证安装了 xinetd, 再安装 tftp;
把 centos7 安装镜像文件, 挂载:
mount -r /dev/cdrom /mnt
安装 xinetd:
- yum install xinetd
- systemctl start xinetd
安装 tftp-server:
yum -y install tftp-server
其中:/var/lib/tftpboot 目录是存放文件的目录;
- chkconfig tftp on
- service xinetd restart
注意: tftp 监听在 udp 的 69 端口
使用客户端连接 tftp 服务器:
tfpt 192.168.255.11
准备 pxe 依赖文件:
- cp /mnt/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/
- cp /usr/share/syslinux/{chain.c32,menu.c32,memdisk,mboot.c32} /var/lib/tftpboot/
pxelinux.0 文件需要安装 syelinux 程序包后才能提供:
- yum -y install syslinux
- cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
创建特定目录必须为 pexlinux.cfg:
mkdir /var/lib/tftpboot/pxelinux.cfg
并在其目录下创建文件名为 default:
vim /var/lib/tftpboot/pxelinux.cfg/default
内容如下:
- default menu.c32
- prompt 5
- timeout 30
- MENU TITLE Centos7 PXE Menu
- LABEL linux
- MENU LABEL Install Centos7 x86_64
- KERNEL vmlinuz
- APPEND initrd=initrd.img inst.repo=http://192.168.255.11/centos7
- #自动安装 kickstart 文件, 没有测试
- #LABEL linux_autoinst
- #MENU LABEL Install Centos7 x86_64 auto
- #KERNEL vmlinuz
- #APPEND initrd=initrd.img inst.repo=http://192.168.255.11/centos7 ks=http://192.168.255.11/kickstarts/centos7.cfg
安装 dhcp 服务:
- yum -y install dhcp
- vim /etc/dhcp/dhcp.conf
内容如下:
- option domain-name "example.org";
- option domain-name-servers 114.114.114.114;
- default-lease-time 6000;
- max-lease-time 72000;
- log-facility local7;
- subnet 192.168.255.0 netmask 255.255.255.0 {
- range 192.168.255.100 192.168.255.200;
- option routers 192.168.255.1;
- filename "pxelinux.0";
- next-server 192.168.255.11;
- }
启动服务:
- systemctl start dhcpd
- systemctl enable dhcpd
- ss -unl
dhcp 服务监听在 udp/67 端口;
http 服务安装部分省略, 可先把网卡设置为桥接模式安装后, 再配置:
需要安装程序包的安装树;
- mkdir /var/www/html/centos7
- mount --bind /mnt$var/www/html/centos7
- systemctl start httpd
此时文件共享服务能向外提供了;
安装树提供路径是 http://192.168.255.11/centos7
pxe 主机提供了 http 服务 tftp 服务等;
下面测试 pxe, 进行安装系统:
由于测试 kickstart 文件实现无人值守自动安装系统没有成功, 故没写这部分;
来源: http://www.bubuko.com/infodetail-2530578.html