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

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

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

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

详情请点击:

二、使用shell脚本一键部署

#!/bin/bash#查看是否有本地yum源,没有则创建本地yum源cd /etc/yum.repos.dif [ ! -e local.repo ]thenmkdir repos.bakmv *.repo repos.bakecho '[local]name=localbaseurl=file:///mntgpgcheck=0enabled=1' > local.repofi#删除yum缓存并更新yum clean all && yum makecache#进行挂载并下载相关服务文件和程序mount /dev/sr0 /mntyum -y install tftp-server xinetd dhcp vsftpd syslinux#开启TFTP服务,并开启多台一起连接功能sed -i -e "10 s/yes/no/" -e "14 s/yes/no/" /etc/xinetd.d/tftp#开启tftp和xinetdsystemctl start tftpsystemctl start xinetd#拷贝一份模板文件至/etc/dhcp/目录下,并改名为dhcpd.confcp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf#修改分配网段地址sed -i -e "32 s/10.254.239.0/192.168.184.0/" -e "32 s/224/0/" /etc/dhcp/dhcpd.conf#修改地址池sed -i -e "33 s/10.254.239.10/192.168.184.100/" -e "33 s/10.254.239.20/192.168.184.200/" /etc/dhcp/dhcpd.conf#默认网关指向本机TFTP服务器的IP地址sed -i "34c option routers 192.168.184.50;" /etc/dhcp/dhcpd.conf#禁用DNS动态更新,并指定服务器地址(本机IP),指定要下载的PXE引导程序文件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开启dhcp服务systemctl  start dhcpd#复制内核文件即初始化镜像文件到TFTP根目录下cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot/#复制PXE引导程序到TFTP根目录下cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot#创建新目录,并把光盘镜像文件及自动应答文件复制到新目录中mkdir /var/ftp/centos7cd /mntcp -rf * /var/ftp/centos7/   #复制整个镜像文件内容至新目录cp /root/kgc.cfg /var/ftp/kgc.cfg  #复制应答文件#开启ftp服务systemctl start vsftpd#在tftp根目录下创建新目录,并配置启动菜单文件(默认文件名为default)mkdir /var/lib/tftpboot/pxelinux.cfgecho "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#关闭防火墙和增强型安全机制systemctl stop firewalld.servicesetenforce 0

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

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

你可能感兴趣的文章
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
查看>>
no connection could be made because the target machine actively refused it.问题解决
查看>>
No Datastore Session bound to thread, and configuration does not allow creation of non-transactional
查看>>
No fallbackFactory instance of type class com.ruoyi---SpringCloud Alibaba_若依微服务框架改造---工作笔记005
查看>>
No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalanc
查看>>
No mapping found for HTTP request with URI [/...] in DispatcherServlet with name ...的解决方法
查看>>
No mapping found for HTTP request with URI [/logout.do] in DispatcherServlet with name 'springmvc'
查看>>
No module named 'crispy_forms'等使用pycharm开发
查看>>
No module named cv2
查看>>
No module named tensorboard.main在安装tensorboardX的时候遇到的问题
查看>>
No module named ‘MySQLdb‘错误解决No module named ‘MySQLdb‘错误解决
查看>>
No new migrations found. Your system is up-to-date.
查看>>
No qualifying bean of type XXX found for dependency XXX.
查看>>
No qualifying bean of type ‘com.netflix.discovery.AbstractDiscoveryClientOptionalArgs<?>‘ available
查看>>
No resource identifier found for attribute 'srcCompat' in package的解决办法
查看>>
no session found for current thread
查看>>
no such file or directory AndroidManifest.xml
查看>>
No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
查看>>
NO.23 ZenTaoPHP目录结构
查看>>
no1
查看>>