博客
关于我
shell脚本详解(八)——一键部署自动化装机(PXE无人值守)
阅读量:75 次
发布时间:2019-02-25

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

shell脚本一键部署自动化装机(PXE无人值守)

一、PXE无人值守自动化装机

PXE无人值守自动化装机是一种通过远程服务器提供安装服务的技术,能够在网络环境中无人值守地为多台客户端设备进行统一的操作系统安装和配置。这种方式不仅提高了安装效率,还减少了人力成本。

二、使用shell脚本一键部署

通过shell脚本,可以实现一键部署PXE无人值守自动化装机,以下是详细的操作步骤:

  • 检查本地YUM源并创建本地YUM仓库
    在系统默认的YUM仓库不存在的情况下,需要先创建一个本地的YUM仓库。
    cd /etc/yum.repos.dif [ ! -e local.repo ]; then    mkdir repos.bak    mv *.repo repos.bak    echo '[local]name=localbaseurl=file:///mntgpgcheck=0enabled=1' > local.repofi
    1. 清理并更新YUM缓存
    2. yum clean all && yum makecache
      1. 挂载并安装必要服务
      2. mount /dev/sr0 /mntyum -y install tftp-server xinetd dhcp vsftpd syslinux
        1. 配置TFTP服务参数
          通过sed命令修改TFTP配置文件,确保支持多台设备同时连接。
        2. sed -i -e "10 s/yes/no/" -e "14 s/yes/no/" /etc/xinetd.d/tftp
          1. 启动TFTP和XINETD服务
          2. systemctl start tftpsystemctl start xinetd
            1. 复制并配置 DHCP 服务文件
              将默认的 DHCP 服务文件复制到正确的目录,并进行必要的配置。
            2. cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
              1. 调整网络段和地址池
                根据实际网络环境修改 DHCP 服务文件中的网络段和地址池。
              2. sed -i -e "32 s/10.254.239.0/192.168.184.0/" -e "32 s/224/0/" /etc/dhcp/dhcpd.conf
                1. 设置默认网关
                  确保 DHCP 服务文件中默认网关指向TFTP服务器的IP地址。
                2. sed -i "34c option routers 192.168.184.50;" /etc/dhcp/dhcpd.conf
                  1. 配置PXE引导程序
                    修改 DHCP 服务文件,指定PXE引导程序的下载路径和镜像文件路径。
                  2. sed -i "14 s/^#//" /etc/dhcp/dhcpd.confsed -i "14a next-server 192.168.184.50;" /etc/dhcp/dhcpd.confsed -i "15a filename \"pxelinux.0\";" /etc/dhcp/dhcpd.conf
                    1. 启动 DHCP 服务
                    2. systemctl start dhcpd
                      1. 准备TFTP根目录
                        将镜像文件和必要的初始化文件复制到TFTP根目录。
                      2. cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot/
                        1. 配置 PXE 引导菜单
                          创建启动菜单文件,并配置默认入口。
                        2. mkdir /var/lib/tftpboot/pxelinux.cfgdefaultecho "default auto    #指定默认入口名称prompt 0              #设置是否等待用户选择,0位不等待label auto            #为图形化安装引导入口kernel vmlinuzappend initrd=initrd.img method=ftp://192.168.184.50/centos7     ks=ftp://192.168.184.50/kgc.cfglabel linux textkernel vmlinuzappend text initrd=initrd.img method=ftp://192.168.184.50/centos7label linux rescuekernel vmlinuzappend rescue initrd=initrd.img method=ftp://192.168.184.50/centos7" > /var/lib/tftpboot/pxelinux.cfg/default
                          1. 配置 FTP 服务
                            启动并配置 FTP 服务以供镜像文件和配置文件下载。
                          2. systemctl start vsftpd
                            1. 安装并配置所需软件包
                            2. yum -y install @baseurl
                              1. 验证并启动服务
                                确保所有服务都已正确配置并启动。
                              2. systemctl start firewalld.servicesetenforce 0

                                通过以上步骤,shell脚本可以实现一键部署PXE无人值守自动化装机,实现网络设备的无人值守安装和配置。

  • 转载地址:http://vhv.baihongyu.com/

    你可能感兴趣的文章
    PostgreSQL学习总结(5)—— PostgreSQL table 创建与删除
    查看>>
    PostgreSQL学习总结(6)—— PostgreSQL 模式(SCHEMA)详解
    查看>>
    PostgreSQL学习总结(7)—— PostgreSQL 语句 INSERT INTO、SELECT、UPDATE、DELETE 等学习
    查看>>
    PostgreSQL学习总结(8)—— PostgreSQL 基于数据库和基于模式(schema)的多租户分析
    查看>>
    PostgreSQL学习总结(9)—— PostgreSQL 运算符与表达式
    查看>>
    PostGreSql学习笔记001---PostgreSQL10.4安装(Windows)_支持PostGreGis_PostJDBC
    查看>>
    PostGreSql学习笔记002---Navicat Premium中管理PostGreSql 错误:字段rolcatupdate 不存在
    查看>>
    PostgreSQL学习笔记:PostgreSQL vs MySQL
    查看>>
    PostgreSQL实现shape数据转geojson数据(地图工具篇.18)
    查看>>
    PostgreSQL导入shape数据(地图工具篇.10)
    查看>>
    PostGreSql工作笔记003---在Navicat中创建数据库时报错rolcatupdate不存在_具体原因看其他博文_这里使用pgAdmin4创建管理postgre
    查看>>
    PostGreSql工作笔记004---PostGreSql修改密码_windows和linux下修改
    查看>>
    Postgresql常用命令行操作_以及Navicat操作PostGis时的问题_自动截取长度_WKB structure does not match exp---PostgreSQL工作笔记005
    查看>>
    PostgreSQL忘记密码
    查看>>
    PostgreSQL数据库pg_dump命令行不输入密码的方法
    查看>>
    PostgreSQL新手入门
    查看>>
    postgresql树状结构查询示例
    查看>>
    PostgreSQL流复制参数max_wal_senders详解
    查看>>
    postgresql流复制配置
    查看>>
    PostgreSQL清空表并保留表结构、清空数据库还原数据库为新建时的状态的方法
    查看>>