liunx系统(pxe批量装机)

一.DHCP服务(分配有效IP地址)

   1.编辑dhcp的配置文件(要关闭虚拟机虚拟网络的dhcp服务不然会冲突)

[root@localhost ~]# yum install -y dhcp            #安装DHCP

已安装:
  dhcp.x86_64 12:4.2.5-82.el7.centos                                                               

完毕!
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf       #编辑配置文件

:r /usr/share/doc/dhcp*/dhcpd.conf.example         #末行命令,复制配置模板

...
# A slightly different configuration for an internal subnet.
subnet 192.168.213.0 netmask 255.255.255.0 {       #更改子网地址段和掩码
  range 192.168.213.100 192.168.213.200;           #更改地址池范围 
  option domain-name-servers ns1.internal.example.org;
  option domain-name "internal.example.org";       
  option routers 192.168.213.2;                    #配置网关(与虚拟机网络网关相同)
  option broadcast-address 10.5.5.31;
  default-lease-time 600;
  max-lease-time 7200;
}
#自己添加两行内容
next-server 192.168.213.124;                   #指定TFTP服务器的地址 (自己添加)
filename "pxelinux.0";                          #指定要下载的PXE引导程序的文件 (自己添加)

...
:wq                 #退出保存(末行)

2.配置网卡文件

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none               #将自动dhcp分配IP改为none静态IP
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=39bdcdc8-966f-4a51-9359-74c010674044
DEVICE=ens33
ONBOOT=yes                    

IPADDR=192.168.213.124       #添加IP地址
GATEWAY=192.168.213.2        #添加网关地址
NETMASK=255.255.255.0        #添加掩码
DNS1=8.8.8.8                 #添加dns

[root@localhost ~]# systemctl restart network   #重启网络使网卡配置生效

3.重启dhcp服务获取ip(第二步一定要做不然dhcp服务重启不了)

[root@localhost ~]# systemctl restart dhcpd     #重启dhcp服务
[root@localhost ~]# ip a | grep "ens33$" | awk '{print $2}'    #查看IP地址
192.168.213.124/24
               

二.HTTP服务(提供镜像下载和ks.cfg自动应答文件)

1.复制镜像文件

[root@localhost ~]# yum install -y httpd   #安装httpd

[root@localhost ~]# rm -rf /etc/httpd/conf.d/welcome.conf  #删除apache默认的页面

[root@localhost ~]# df -h   #查看镜像文件挂载点
文件系统                 容量  已用  可用 已用% 挂载点
/dev/sr0                 4.4G  4.4G     0  100% /mnt

[root@localhost ~]# cp -r /mnt /var/www/html/  #将镜像文件复制到DHCP服务上,使该文件可下载访问

2.关闭防火墙和selinux

[root@localhost ~]# systemctl stop firewalld.service 
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl restart httpd   #重启服务

3.访问页面

 

三.TFTP服务(提供初始化镜像文件-linux引导加载模块文件、linux系统的内核文件、pxe引导文件程序和引导菜单文件default

1.修改tftp配置文件

[root@localhost ~]# yum install -y tftp-server     #安装tftp

[root@localhost ~]# yum install -y xinetd          #安装xinetd程序
介绍:
    1、xined是网络守护进程服务程序,有着强大的存取控制功能,防止Dos工具,数据转发等。
    2、原则上任何系统服务都可以使用xinetd,然而最适合的应该是那些常用的网络服务,并且这个服务的   
       请求数目和频繁程度不会太高,像DNS和Apache就不适合采用这种方式。
    3、tftp是可以使用xinetd程序的。

[root@localhost ~]# vim /etc/xinetd.d/tftp   #修改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      #将yes改为no ,开启tftp服务
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}
[root@localhost ~]# systemctl restart tftp       #重启tftp
[root@localhost ~]# systemctl restart xinetd     #重启xinetd

2.复制所需文件

[root@localhost pxeboot]# ls
initrd.img  TRANS.TBL  vmlinuz
[root@localhost pxeboot]# pwd
/mnt/images/pxeboot
[root@localhost pxeboot]# cp initrd.img /var/lib/tftpboot/   #复制liunx系统引导加载文价
[root@localhost pxeboot]# cp vmlinuz /var/lib/tftpboot/      #复制liunx系统内核文件

[root@localhost ~]#  yum install -y syslinux    #安装pxe引导程序

[root@localhost ~]# find / -name pxelinux.0     #查找文件路径
/usr/share/syslinux/pxelinux.0

[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/  #复制引导文件

3.编写引导菜单文件

[root@localhost tftpboot]# mkdir pxelinux.cfg
[root@localhost tftpboot]# ls
initrd.img  pxelinux.0  pxelinux.cfg  vmlinuz
[root@localhost tftpboot]# cd pxelinux.cfg/
[root@localhost pxelinux.cfg]# vim default    #编写菜单引导文件
default linux  #指定默认入口名称
prompt 0       #设置是否等待用户选择,“1"表示等待用户控制,“0”是不用等待。

label linux    #label用来定义启动项
kernel vmlinuz #kernel和append用来定义引导参数
#下面内容需在一行,不然就会报错
append initrd=initrd.img method=http://192.168.213.124/mnt/ ks=http://192.168.213.124/ks.cfg

.准备自动应答文件

1.下载可自动引导的程序

[root@localhost ~]# yum install -y system-config-kickstart
[root@localhost ~]#system-config-kickstart  #只有图形化可调动这个程序

2.步骤

 

 

 

 

 

 

 

 

 

 3.编辑生成的ks.cfg文件

[root@localhost ~]# vim ks.cfg 
#在文件末尾添加一下内容
%packages
@^gnome-desktop-environment
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@networkmanager-submodules
@print-client
@x11
chrony

%end

%addon com_redhat_kdump --disable --reserve-mb='auto'

%end

%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end

[root@localhost ~]# ls
anaconda-ks.cfg       ks.cfg  公共  视频  文档  音乐
initial-setup-ks.cfg  yum     模板  图片  下载  桌面

anaconda-ks.cfg #这是本机安装时的引导文件也可当作模板更改使用

[root@localhost ~]# cp ks.cfg /var/www/html/    #将编辑后的文件复制到httpd服务

 五.测试安装

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
引用内容提供了在Linux系统上安装syslinux和配置tftp服务器的步骤,引用内容提供了创建pxelinux.cfg目录的步骤,引用内容提供了保存自动应答软件和编辑引导菜单的步骤。 PXE(Preboot Execution Environment)是一种网络引导协议,可以通过网络从服务器上安装和配置操作系统。使用PXE进行Linux装机可以实现批量装机和自动化装机的需求。 在进行Linux PXE装机之前,需要进行以下步骤: 1. 安装syslinux和tftp服务器:使用命令`yum install -y syslinux`安装syslinux,并使用命令`yum install -y tftp-server`安装tftp服务器。 2. 复制pxelinux.0文件到tftp服务器目录:使用命令`cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/`将pxelinux.0文件复制到tftp服务器的目录下。 3. 创建pxelinux.cfg目录:使用命令`mkdir /var/lib/tftpboot/pxelinux.cfg`创建pxelinux.cfg目录,该目录用于存放引导菜单的配置文件。 4. 准备自动应答文件:将自动应答文件(比如ks.cfg)保存到服务器上,可以使用命令`cp /root/anaconda-ks.cfg /var/ftp/ks.cfg`将anaconda-ks.cfg文件复制到/var/ftp/目录下。 5. 编辑引导菜单的配置文件:使用命令`vim /var/lib/tftpboot/pxelinux.cfg/default`编辑引导菜单的配置文件,添加以下内容: ``` default auto prompt 0 label auto kernel vmlinuz append initrd=initrd.img method=ftp://192.168.100.10/centos7 ks=ftp://192.168.100.10/ks.cfg ``` 通过以上步骤,可以实现Linux PXE装机。在客户端上启动时,系统将从tftp服务器上下载引导文件pxelinux.0,然后根据引导菜单的配置文件default进行自动安装,同时使用指定的自动应答文件ks.cfg进行操作系统的配置。 请根据实际需求和网络环境进行相应的配置和调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Linux——轻松学会PXE高效网络装机](https://blog.csdn.net/m0_61744194/article/details/124291052)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [如何使用PXE实现Linux网络装机](https://blog.csdn.net/YsDou/article/details/120143627)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值