centos7下进行kickstart配置

配置kickstart时需要pxe芯片,为获取ip地址

1、先安装dhcpd服务器

yum install -y dhcpd

1-1.配置dhcp的配置文件

    # cat /etc/dhcp/dhcpd.conf
subnet 172.16.1.0 netmask 255.255.255.0 {
range 172.16.1.85 172.16.1.95;
option subnet-mask 255.255.255.0;
default-lease-time 21600;
max-lease-time 43200;
next-server 172.16.1.80;
filename "/pxelinux.0";
}

1-2.启动dhcpd服务

systemctl start dhcpd.service

systemctl enable dhcpd.service

1-3.安装lsof软件

yum install -y lsof

1-4.查看dhcpd启动情况

    [root@centos7-4 dhcp]# lsof -i :67
COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
dhcpd   7865 dhcpd   7u IPv4 43468     0t0 UDP *:bootps

1-5.挂载光盘

#mount /dev/centos7 /var/www/html/centos7

2、安装tftp服务

yum install -y xinetd tftp-server httpd

2-1、进行xinetd的配置

[root@centos7-4 xinetd.d]# cat /etc/xinetd.d/tftp   #查看tftp在xinetd下的配置
# default: off
# description: The tftp server serves files using the trivial file transfer \
# protocol. The tftp protocol is often used to boot diskless \
# workstations, download configuration files to network-aware printers, \
# and to start the installation process for some operating systems.
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot #/var/lib/tftpboot启动文件目录
disable = no #允许使用xinetd来启动tftp
per_source = 11
cps = 100 2
flags = IPv4
}

2-2、配置好了tftp服务后,并重新启动一下xinetd服务

systemctl restart xinetd #tftp服务受xinetd服务管理的

lsof -i :69

3、拷贝重要的文件

# cd /var/www/html/centos7/isolinux/
# cp vmlinuz /var/lib/tftpboot/ #其中vmlinuz为linux启动的内核文件
# cp initrd.img /var/lib/tftpboot #initrd.img为linux启动的驱动文件
# cp vesamenu.c32 /var/lib/tftpboot/ #启动框架文件

4、安装syslinux软件,取出pxelinux.0文件

#yum install -y syslinux
#rpm -ql syslinux
# cd /usr/share/syslinux/
# mkdir -p /var/lib/tftpboot/pxelinux.cfg #新建目录pxelinux.cfg
# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ #linux启动代码
#cd /var/www/html/centos7/isolinux
# cp isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default #拷贝isolinux.cfg到此目录下,并命令为default
# cp reboot.c32 /var/lib/tftpboot/ #把重启框架文件拷贝到/var/lib/tftpboot目录中

5、配置default文件

# cat /var/lib/tftpboot/pxelinux.cfg/default 
#kickstart centos7 configure by gordon.wang
default linux
timeout 50
prompt 0
label linux #要与default显示的字符一致
kernel vmlinuz
append initrd=initrd.img ks=http://172.16.1.80/ks_config/centos7-ks.cfg ksdevice=eth1 net.ifnames=0 biosdevname=0 #把网卡名由ens变更为eth,并从cento7-ks.cfg中引导启动;

6、配置centos7-ks.cfg文件

# cat  /var/www/html/ks_config/centos7-ks.cfg 
#kickstart centos7 configure by gordon.wang
install
url --url="http://172.16.1.80/centos7/"
text
lang en_US.UTF-8
keyboard us
zerombr #初始化所有可在磁盘中找到的有效分区表
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
network --bootproto=static --device=eth0 --gateway=10.0.0.254 --ip=10.0.0.85 --nameserver=223.5.5.5 --netmask=255.255.255.0 --activate
network --bootproto=static device=eth1 --ip=172.16.1.85 --netmask=255.255.255.0 --activate
network --hostname=kickstart
timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512 #authconfig为系统设置认证选项,--enableshadow为使用影子密码
rootpw --iscrypted $6$X20eRtuZhkHznTb4$dK0BJByOSAWSDD8jccLVFz0CscijS9ldMWwpoCw/ZEjYw2BTQYGWlgKsn945fFTjRC658UXjuocwJbAjVI5D6/ #rootpw --iscrypted加密密码参数
加密命令:python -c 'import crypt;print(crypt.crypt("my passwd"))',其中my passwd为要设置的密码
clearpart --all --initlabel #clearpart从系统中删除分区要在生成新分区之前完成;
part /boot --fstype xfs --size 1024
part swap --size 1024
part / --fstype xfs --size 1 --grow #参数--grow是把硬盘所有的容量全部给/
firstboot --disable #禁用initial setup程序在第一次引导系统时启动;
selinux --disabled
firewall --disabled
logging --level=info #logging在安装过程中anaconda出错日志
reboot

%packages
@^minimal
@compat-libraries
@debugging
@development
tree
nmap
sysstat
lrzsz
dos2unix
telnet
wget
vim
bash-completion
net-tools
%end

%post
systemctl disable postfix.service
%end

7、启动httpd服务

#如果没有安装httpd服务,请执行安装服务

#yum install -y httpd

#systemctl start httpd

#lsof -i :80

#curl http://172.16.1.80/centos7 #检查网站

8、现在就进行安装就可以了;

PXE+Kickstart实现批量化无人值守安装的更多相关文章

  1. PXE+DHCP+TFTP+Cobbler 无人值守安装centos 7

    Cobbler(补鞋匠)是通过将DHCP.TFTP.DNS.HTTP等服务进行集成,创建一个中央管理节点,其可以实现的功能有配置服务,创建存储库,解压缩操作系统媒介,代理或集成一个配置管理系统,控制电 ...

  2. 第19章 使用PXE+Kickstart部署无人值守安装

    章节概述: 本章节将教会您通过PXE+DHCP+TFTP+VSftpd+Kickstart服务程序搭建出无人值守安装系统,从而批量部署客户机系统. 这种系统能够实现自动化运维.避免了重复性劳动,帮助提 ...

  3. 《Linux就该这么学》培训笔记_ch19_使用PXE+Kickstart无人值守安装服务

    <Linux就该这么学>培训笔记_ch19_使用PXE+Kickstart无人值守安装服务 文章最后会post上书本的笔记照片. 文章主要内容: 无人值守系统 部署相关服务程序 配置DHC ...

  4. 基于网络的 Red Hat 无人值守安装

    基于网络的 Red Hat 无人值守安装 本文介绍了 PC 平台上的一种快速 Red Hat Linux 安装方案.它具有很高的自动化程度--用户只需手工启动机器并选择从网络启动,就可以完成整个安装过 ...

  5. 搭建无人值守安装服务器(CentOS)

    使用PXE+DHCP+TFTP+Kickstart+FTP搭建无人值守安装服务器.一般只有频繁安装系统才会搭建无人值守安装服务器. 虚拟机环境:youxi1,CentOS7系统双网卡,一个网卡桥接模式 ...

  6. Vmware部署Linux无人值守安装Centos7系统

    Linux - 无人值守安装服务 # 需求分析 - 使用光盘镜像来安装 Linux 系统的方式; 坦白讲, 该方法适用于只安装少量 Linux 系统的情况, 如果生产环境中有数百台服务器都需安装系统, ...

  7. PXE+Kickstart+DHCP+TFTP实现无人值守安装操作系统

    PXE+Kickstart+DHCP+TFTP实现无人值守安装操作系统 PXE + Kickstart PXE的工作流程及配置文件 Kickstart的配置文件 Linux安装大致可以分为2个阶段 第 ...

  8. [转]CentOS 6.4下PXE+Kickstart无人值守安装操作系统

    一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...

  9. CentOS6 PXE+Kickstart无人值守安装

    一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...

随机推荐

  1. Django之logging配置

    1. settings.py文件 做开发离不开必定离不开日志, 以下是我在工作中写Django项目常用的logging配置. # 日志配置 BASE_LOG_DIR = os.path.join(BA ...

  2. vue如何监听键盘事件中的按键?

    原文地址 背景 在一些搜索框中,我们往往需要监听键盘的按下(onkeydown)或抬起(onkeyup)事件以进行一些操作.在原生js或者jQuery中,我们需要判断e.keyCode的值来获取用户所 ...

  3. Chrome F12 谷歌开发者工具解析

    一.工具简单介绍 F12可用于网站界面.性能测试,bug定位等 以 www.baidu.com 为例: Elements:查看页面元素属性(多用于自动化元素定位) Console:记录日志信息(用于定 ...

  4. Windows 桌面利用 Navicat等工具连接 虚拟机Mysql

    1.mysql>use mysql;2.mysql>update user set host = '%' where user ='root';3.mysql>select host ...

  5. freeRTOS学习8-20

  6. SpringMvc的基础配置<一>

    SpringMVC学习 1.此篇博文是学习以下博文,并通过亲测得来:   1.1.网址:http://www.cnblogs.com/bigdataZJ/p/springmvc1.html 2.所用软 ...

  7. ABP领域层定义仓储并实现

    原文作者:圣杰 原文地址:ABP入门系列(3)——领域层定义仓储并实现 在原文作者上进行改正,适配ABP新版本.内容相同 一.先来介绍下仓储 仓储(Repository): 仓储用来操作数据库进行数据 ...

  8. 黑科技——树剖两次dfs转一次dfs!

    黑科技--树剖两次\(dfs\)转一次\(dfs\)! 重所周知,树链剖分通常是要\(dfs​\)两次的,就像这样: int Fa[N],dep[N],Sz[N],son[N]; void dfs1( ...

  9. c语言中int long float double 等类型所占字节及输出表示(转)

    16位编译器 char :1个字节 char*(即指针变量): 2个字节 short int : 2个字节 int: 2个字节 unsigned int : 2个字节 float: 4个字节 doub ...

  10. Python—None

    None是一个特殊的常量. None不是False. None不是0. None不是空字符串. None有自己的数据类型NoneType,并且是NoneType中唯一的值. None只是一个空值的对象 ...