使用PXE安装CentOS7

摘要:
1.环境本文使用VMware虚拟机进行实验。单击VMware--编辑--虚拟网络编辑器,创建一个新的VMnet15,选择仅主机模式,然后取消选中DHCP服务(因为此处使用您自己的DHCP服务)。192.168.93.0/24网络在此配置。PXE服务器CentOS7.2系统有两个网卡,网卡eno16777736,它使用NAT模式(用于yum软件安装)。DHCP获取IP网卡eno50332184并连接到VMn
1.环境

本文使用VMware 虚拟机进行实验。

点击VMware--编辑--虚拟网络编辑器,新建VMnet15,选择仅主机模式,取消勾选DHCP服务(因为这里使用自己的DHCP服务)。我这里配好后是192.168.93.0/24网络。

使用PXE安装CentOS7第1张

  • 一台PXE服务器

CentOS 7.2系统

2张网卡,

网卡eno16777736 ,使用NAT模式(用于yum安装软件),DHCP获取IP

网卡eno50332184 ,连接至VMnet15网络,配置静态IP:192.168.93.10

  • 一台PXE客户机(待安装系统)

2GB 内存(太小不行)

1张网卡,

网卡eno16777736 ,连接至VMnet15网络

2.需求
  • SYSLINUX,提供pxelinux.0
  • DHCP-SERVER,为客户机提供IP
  • TFTP-SERVER,为客户机提供简单文件传输(如传输pxelinux.0等)
  • VSFTP-SERVER或APACHE-SERVER,提供repo的系统文件服务
  • CentOS 7.2(或7.4都行)安装光盘,如CentOS-7-x86_64-Everything-1511.iso
3.配置

在PXE服务器上,

3.1预配置

临时关闭防火墙

systemctl stop firewalld

临时关闭SELinux

setenforce 0

安装各个服务器与依赖库

yum -y install tftp-server vsftpd syslinux dhcp xinetd

挂载CentOS 7.2安装光盘(需要先将光盘连接至PXE服务器虚拟机上)

mount -t iso9660 -o loop /dev/cdrom /mnt

3.2配置VSFTP

为了vsftp服务器使用光盘,把/mnt再绑定到/var/ftp/centos(因为vsftp不允许软连接目录)

mkdir -p /var/ftp/centos
mount --bind /mnt/ /var/ftp/centos

3.3配置TFTP

3.3.1配置pxe启动文件

新建tftp启动目录

mkdir -p /tftpboot/pxelinux.cfg

把光盘中isolinux里面的文件都复制到tftp启动目录中

cd /mnt/isolinux
cp -a * /tftpboot/

复制pxelinux.0

cp /usr/share/syslinux/pxelinux.0 /tftpboot/

 将tftp启动目录中的isolinux.cfg(刚从光盘中复制过来的)改名default,并移动至pxelinux.cft目录下

cd /tftpboot
mv
isolinux.cfg pxelinux.cfg/default

编辑default文件,增加我们设置的PXE启动项

vi pxelinux.cfg/default

在一堆label 上面添加如下内容

label linux-nidey
menu label ^Install CentOS 7 nidey
kernel vmlinuz
append initrd=initrd.img inst.repo=ftp://192.168.93.10/centos quiet

label另起一个名字,menu就是客户机启动时看到的安装选项名

注意,如果不使用kickstart自动部署,则append后面第二个参数应该用inst.repo,而不是inst.stage2(这种情况客户机启动时会卡在获取安装源步骤)

URL使用前面配置的vsftp服务器(也可以使用Apache-server的http服务,或者搭建nfs也行)

使用PXE安装CentOS7第2张

append参数使用inst.stage2则安装时会卡在这里

使用PXE安装CentOS7第3张

append参数使用inst.repo则安装时正常获取安装源(图是另截的,见谅...)

3.3.2配置tftp-server

tftp服务器依附于xinetd服务下,

vim /etc/xinetd.d/tftp

server_args 设置我们刚才创建的tftp启动目录,并启用tftp

service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}

  

3.4配置DHCP

vim /etc/dhcp/dhcpd.conf

设置允许引导启动,

192.168.93.0子网,掩码255.255.255.0,地址池192.168.93.240~192.168.93.250

引导启动文件名为pxelinux.0(syslinux提供的,在/tftpboot目录下)

next-server设置为PXE服务器IP,也就是本机:192.168.93.10

因为这里只在一个局域网下安装系统,网关和DNS其实都不用设置。

ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
subnet 192.168.93.0 netmask 255.255.255.0
{
# option routers 192.168.93.1;
# option domain-name "s.un";
# option domain-name-servers 192.168.93.1;
option subnet-mask 255.255.255.0;
option time-offset -18000;
default-lease-time 21600;
max-lease-time 43200;
range dynamic-bootp 192.168.93.240 192.168.93.250;
filename "pxelinux.0";
next-server 192.168.93.10;
}

  

3.5启动服务

systemctl start xinetd
systemctl start dhcpd
systemctl start vsftpd
4.安装

在PXE客户机上,

进入BISO,设置网络启动为第一项。

使用PXE安装CentOS7第4张

开机,DHCP获取,IP,加载启动,进入安装界面,选择安装就好了。

使用PXE安装CentOS7第5张

免责声明:文章转载自《使用PXE安装CentOS7》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C#面向对象思想计算两点之间距离c/c++ 结构体传参问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

内核移植和文件系统制作(2):linux内核最小系统和initramfs文件系统

linux内核最小系统,使用内核版本:https://www.kernel.org/pub/linux/kernel/v3.0/linux-3.8.1.tar.bz2 1,FL2440板子的基本硬件:晶振12MHZ CPU 型号为S3C2440,基于ARM920T,指令集ARMV4,时钟主频400MHz SDRAM H57V2562GTR-75...

tftpd64-SE使用

使用场景:   把windows下的文件写入到linux(嵌入式设备中); 下载地址:   https://bitbucket.org/phjounin/tftpd64/wiki/Download%20Tftpd64.md   或者在github上下载; 使用过程:   1、下载安装完成后,运行程序:      2、选择windows下文件所在的文件夹:...

使用Uboot启动内核并挂载NFS根文件系统

配置编译好内核之后,将生成的内核文件uImage拷贝到/tftpboot/下,通过tftp服务器将内核下载到开发板,使用命令:tftp 31000000 uImage.下载完成之后配置bootargs环境变量:setenv bootargs noinitrd console=ttySAC0,115200 init=/init root=/dev/nfs r...

CentOS中TFTP配置

转载:http://www.centoscn.com/image-text/config/2013/1105/2062.html TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现 1.安装软件 yum install tftp* 安装好tftp-server包, 需要把/etc/xinetd.d/tftp文件做一下几个修改。 2.修改启动...

自动化装机系统

什么是PXE   1. PXE,全名Pre-boot Execution Environment,预启动执行环境   2. 通过网络接口启动计算机,不依赖本地存储设备或本地已安装的操作系统   3. 由intel和systemsoft公司于1999年9月20日公布的技术   4. client/server的工作模式   5. PXE客户端会调用网际协议(...

Cisco设备IOS的恢复方法 两种方法

如果不小心把Router或者Switch的IOS删除了,特别是Flash中的IOS和ROM中的Mini IOS都没有了的话,连启动都不行的话,有什么方法恢复它呢?答案是方法不只一种,而是两种。其实是我只知道两种:)第一种方法:X-Modem    以前我曾经尝试过一种方法,就是当Flash被删除后,启动无法进入系统,可以用X-Modem来恢复它。当时我不小...