博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux下通过PXE服务器安装Linux系统
阅读量:6867 次
发布时间:2019-06-26

本文共 2525 字,大约阅读时间需要 8 分钟。

原理:

PXE是在没有软驱、硬盘、CD-ROM的情况下引导计算机的一种方式,也就是BIOS将使用PXE协议从网络引导。

DHCP服务器:用来动态分配IP地址(同时分配子网掩码、网关、TFTP服务器地址、启动文件名、DNS服务器、时间服务器等等)。 

TFTP服务器:用来提供启动文件的下载

 

安装环境:虚拟机CentOS7.0中搭建PXE服务器

使用模式:仅主机模式

 

1.安装与配置tftp服务器

#yum install tftp-server   -y#vim  /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     ###设置主目录   -c为指定为可以创建文件
disable = yes      ###将disable的值改为no
per_source = 11
cps = 100 2
flags = IPv4
}

默认的根目录:/var/lib/tftpboot

启动tftp服务:systemctl restart tftp.service

 验证一下TFTP是否起来了:

# netstat -nlp | grep 69

出现下面的信息代表已经启动了

 udp        0      0 0.0.0.0:69                  0.0.0.0:*  

 

2.tftp的根目录需要放置网络

1、引导文件pxelinux.0

#yum install syslinux -y#rpm -qa |grep syslinux       找到程序的安装包#rpm -ql syslinux-4.05-12.el7.x86_64     通过安装包查询pexlinux.0文件目录为/usr/share/syslinux #cp /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot/      将pexlinux.0文件复制到tftp根目录

2、配置文件(必须要在同级目录下创建pxelinux.cfg/default)

#mkdir /var/lib/tftpboot/pxelinux.cfg#vim /var/lib/tftpboot/pxelinux.cfg/default     该文件可以使用光盘中的isolinux.cfg文件来当模板,这个启动菜单很重要 #cat isolinux.cfg >/var/lib/tftpboot/pxelinux.cfg/default

 

修改位置  vim  /var/lib/tftpboot/pxelinux.cfg/default

label linux

menu label ^Install CentOS 7
menu default
kernel vmlinuz
append initrd=initrd.img inst.ks=192.168.100.34/ks.cfg quiet

3、将光盘下的引导文件复制到TFTP根目录

#cp /media/cdrom/isolinux/*  /var/lib/tftpboot/

 

[root@localhost tftpboot]# ll -ht总用量 85Mdrwxr-xr-x. 3 root root   20 4月  28 03:04 pxelinux.cfg    //该文件夹下放的是启动菜单,手动创建-r-xr-xr-x. 1 root root 5.0M 4月  28 03:02 vmlinuz         //内核文件-r--r--r--. 1 root root 150K 4月  28 03:02 vesamenu.c32    //legacy BIOS引导菜单工具,可以从光盘或 /usr/share/syslinux/ 中找到-r--r--r--. 1 root root  37M 4月  28 03:02 initrd.img      //这是一个初始化文件,一个最小的系统镜像 -rw-r--r--. 1 root root  27K 4月  28 02:56 pxelinux.0      //这文件是为legcay启动,它是legcay的启动镜像

  

 3.DHCP服务

#yum install dhcp -y#vim /etc/dhcp/dhcpd.conf

  

subnet 192.168.100.0 netmask 255.255.255.0{

           range 192.168.100.30 192.168.100.50;

           next-server 192.168.100.34;
           filename "pxelinux.0";
}

#systemctl restart dhcpd.service   重启服务

 

4.ftp服务

#yum install vsftpd  -y默认的根目录:/var/ftp将光盘挂载到/var/ftp/pub目录

 在var/ftp 目录下创建ks.cfg文件

ks.cfg内容url  --url="ftp://192.168.100.134/pub"timezone  Asia/Shanghaikeyboard  'us'lang      en_US.UTF-8   --addsupport=zh_CN.UTF-8part  /boot   --fstype="xfs"   --size=800part  /       --fstype="xfs"   --size=10000zerombrbootloader  --location=mbr%packages@core%end

  

 最后将DHCP,TFTP,vsftp服务都重启一下,关闭防火墙,开另一台新虚拟机进行安装(主机模式)

转载于:https://www.cnblogs.com/centos7/p/6775877.html

你可能感兴趣的文章
Serf 了解
查看>>
nlp总结
查看>>
MongoDB数据库聚合
查看>>
ffmpeg保存原始数据PCM YUV
查看>>
Spigot 算法之中的一个 计算调和级数的和
查看>>
vue2.0如何自定义全局变量的方法
查看>>
tiny4412 裸机程序 七、重定位代码到DRAM【转】
查看>>
springMVC+json构建restful风格的服务
查看>>
HDU 5317 RGCDQ(素数个数 多校2015啊)
查看>>
iOS 10.3.3 更新背后的故事
查看>>
.NET 的WebSocket开发包详细比较(2)
查看>>
C/C++ 编程计算2的100万次方(m的n次方),超长结果输出文件
查看>>
unity3D中使用Socket进行数据通信(二)
查看>>
bytes数据类型和字符串的编码解码,三元运算,进制互换
查看>>
TCP和UDP通信(C#网络编程) ---- 系列文章
查看>>
腾讯2016笔试题-微信红包-找出数组中过半数的数字
查看>>
CentOS7 防火墙配置(关闭)
查看>>
Android静默安装实现方案,仿360手机助手秒装和智能安装功能
查看>>
Asp.Net Core获取当前上下文对象
查看>>
ppoint的使用
查看>>