Kickstart是一种无人值守的安装方式。它的工作原理是在安装过程中记录典型的需要人工干预填写的各种参数,并生成一个 名为ks.cfg的文件。如果在安装过程中(不只局限于生成Kickstart安装文件的机器)出现要填写参数的情况,安装程序首先会去查找 Kickstart生成的文件,如果找到合适的参数,就采用所找到的参数;如果没有找到合适的参数,便需要安装者手工干预了。所以,如果 Kickstart文件涵盖了安装过程中可能出现的所有需要填写的参数,那么安装者完全可以只告诉安装程序从何处取ks.cfg文件,然后就去忙自己的事 情。等安装完毕,安装程序会根据ks.cfg中的设置重启系统,并结束安装。

系统环境

实验环境:VMware Workstation 12

系统平台:RHEL7.*

网络模式:LAN区段

DHCP / TFTP IP:192.168.135.150      #根据自己实际情况配置

HTTP / FTP / NFS IP:192.168.135.150

防火墙已关闭/iptables: Firewall is not running.

SELINUX=disabled

注意:VMware Workstation使用NTP时,要把NTP的DHCP功能去掉

前期准备

所需要用到的服务:DHCP、TFTP、HTTP(FTP太慢,所以我用了HTTP)

配置yum仓库,挂载光盘镜像

#vim /etc/yum.repos.d/rhel7.repo

[rhel7]

name=rhel7

basurel=file:///mnt

enabled=1

gpgcheck=0

将光盘挂载到/mnt中

#mount /dev/cdrom /mnt

配置DHCP

安装DHCP服务

# yum -y install dhcp

修改/etc/dhcp/dhcpd.conf 配置文件,内容如下:

subnet 192.168.135.0 netmask 255.255.255.0 {          #所属网段及掩码;

range 192.168.135.100 192.168.135.120;                    #IP地址池范围;

option domain-name "test.com";

option routers 192.168.135.2;                                  #路由器IP,可以写网关IP;

option broadcast-address 192.168.135.255;

next-server 192.168.135.130;                              #TFTP Server 的IP地址;

filename "/pxelinux.0";                                        #pxelinux 启动文件位置;

default-lease-time 600;

max-lease-time 7200;

}

            ##也可以根据[root@occl ~]# rpm -ql dhcp | grep example

                          /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example    ##此模板下内容来修改

启动DHCP服务

#systemctl enable dhcpd.service

#systemctl start dhcpd.service

配置TFTP

yum -y install tftp-server

#需要xinetd,如果没有安装的话也要安装

修改/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
        disable                 = no    ##把这写成no即可;
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}

启动xinetd服务

#systemctl enable xinetd.service

#systemctl start xinetd.service

配置PXE启动所需要的文件

#yum -y install syslinux

说明:syslinux是一个功能强大的引导加载程序,而且兼容各种介质。更加确切地说:SYSLINUX是一个小型的Linux操作系统,它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘。

拷贝启动文件到/var/lib/tftpboot里

#cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

cd /mnt/images/pxeboot

#cp -rf initrd.img vmlinuz  /var/lib/tftpboot/

#mkdir /var/lib/tftpboot/pxelinux.cfg

#cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

#chmod u+w /var/lib/tftpboot/pxelinux.cfg/default

####cp /mnt/isolinux/boot.msg /var/lib/tftpboot/
####chmod u+w /var/lib/tftpboot/boot.msg

修改default文件

[root@occl pxelinux.cfg]# vim default

default linux
timeout 600

display boot.msg

# Clear the screen when exiting the menu, instead of leaving the menu displayed.
# For vesamenu, this means the graphical background is still displayed without
# the menu itself for as long as the screen remains in graphics mode.
menu clear
menu background splash.png
menu title Red Hat Enterprise Linux 7.2
menu vshift 8
menu rows 18
menu margin 8
#menu hidden
menu helpmsgrow 15
menu tabmsgrow 13

###中间省略部分,找到下面一行修改一下红色部分

label linux
  menu label ^Install Red Hat Enterprise Linux 7.2
  kernel vmlinuz
  append initrd=initrd.img inst.ks=http://192.168.135.150/ks.cfg quiet             #这个地址根据自己的实际情况;ks.cfg这个文件后面会配置

保存退出

检查

[root@occl tftpboot]# pwd
/var/lib/tftpboot
[root@occl tftpboot]# ls
initrd.img  pxelinux.0  pxelinux.cfg  vmlinuz boot.msg

[root@occl tftpboot]# cd pxelinux.cfg/
[root@occl pxelinux.cfg]# ls
default

配置HTTP

yum -y install httpd

创建iso文件夹目录,用来存放光盘软件包

#mkdir /var/www/html/iso

拷贝光盘中所有文件到iso文件夹中

#cp -rf /mnt/* /var/www/html/iso/

修改/etc/httpd/conf/httpd.conf 下添加:

<Directory "/var/www/html/iso">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

systemclt start httpd.service

systemclt enable httpd.service

生成ks.cfg 文件

ks.cfg是kickstart安装配置文件,系统就是按照ks.cfg来安装的。我们将在后面配置

安装Kickstart

#yum -y install system-config-kickstart

在桌面环境下配置Kickstart

#system-config-kickstart

后面几项不用管,直接保存

保存在/root/下,后缀不要动

root目录下有个anaconda-ks.cfg文件,我们进去把安装软件脚本拷贝到咱们刚才创建的那个ks.cfg中

#vim /root/anaconda-ks.cfg

........

%packages

@base

@core

@desktop-debugging

@dial-up

@fonts

@gnome-desktop

@guest-agents

@guest-desktop-agents

@input-methods

@internet-browser

@kde-desktop

@multimedia

@print-client

@x11

%end

把anaconda-ks.cfg文件最下方的%packages与%end之间的内容粘贴到咱们的ks.cfg中

#vim /root/ks.cfg

把上面一串@的所有内容都粘贴进去,包括两个%哪行。

把ks文件拷贝到/var/www/html/里面

#cp /root/ks.cfg /var/www/html/

[root@occl html]# ls
iso  ks.cfg

检查防火墙及SElinux等其他服务是否配置好

检查SELinux是否关闭

#setenforce 0    //关闭SELinux

检查防火墙,开放dhcp,ftp,tftp服务,或者关闭防火墙

检查所有服务是否正常启动

#systemctl is-active dhcpd

#systemctl is-active vsftpd

返回结果都是“active”

#netstat -tulnp | grep :69

udp        0      0 0.0.0.0:69              0.0.0.0:*

确保default文件和ks.cfg文件配置正确。

这样基本就配置完成了,试验一下吧。

kickstart自动安装部署RHEL7的更多相关文章

  1. centos7/rhel7下配置PXE+Kickstart自动安装linux系统

    应用场景:临时安装一个系统或者批量安装linux系统,无需人工介入选择下一步,减少在安装系统上的时间浪费,提高工作效率. DHCP + TFTP + Syslinux + FTP + Kickstar ...

  2. 使用光盘iso实现Linux操作系统的自动安装部署

    前边写了一篇使用 PXE 的方式批量安装操作系统,不是任何时候任何地方都有环境来通过 PXE 方式来进行安装.如果此时需要通过光盘安装,默认的情况下是通过交互式方式进行安装,其实也可以通过 kicks ...

  3. linux系统PXE+Kickstart自动安装系统

    一.PXEPXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服 ...

  4. PXE+kickstart自动安装ubuntu14.04

    本文参考了诸多文章,先感谢这些文章的作者. 使用pxe安装系统需要安装dhcp,tftp,http等服务(当然也可以使用其他文件共享方式比如nfs,ftp). 实验环境: 1. vmware 12 2 ...

  5. PXE+Kickstart 全自动安装部署CentOS7.4

    一.简介 1.什么是PXE PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过 ...

  6. CentOS 7.2 下 PXE+kickstart 自动安装系统

    一.简单概述 1.1 Kickstart 概述 对于网络安装系统,在linux 下面最熟悉的应该就是 Kickstart 以及 cobbler.写这篇文章的目的在于我公司目前使用的就是 Kicksta ...

  7. PXE+Kickstart 自动安装CentOS系统

    PXE (preboot execcute environment) 依赖服务 dhcp tftp file server (yum repository) 准备TFTP服务器  如何配置TFTP服务 ...

  8. linux kickstart 自动安装

    最近很多业务系统都是linux lnmp平台安装,反复的安装让人觉得很苦恼,仔细钻研了下kickstart .这里环境是red hat linux 5.8 32位,系统盘中的软件包里包含有kickst ...

  9. s32 kickstart 批量自动安装系统

    1. 自动安装操作系统 http://blog.oldboyedu.com/autoinstall-kickstart/   自动安装操作系统的解决方案:kickstart.cobbler(披着web ...

随机推荐

  1. 对偶上升法到增广拉格朗日乘子法到ADMM

    对偶上升法 增广拉格朗日乘子法 ADMM 交替方向乘子法(Alternating Direction Method of Multipliers,ADMM)是一种解决可分解凸优化问题的简单方法,尤其在 ...

  2. delphi WebBrowser的使用方法详解(六)

    通篇引用mshtml; 一.webbrowser获取滚动条的位置 function GetScrollPositionX(FWB:TEmbeddedWB):Integer;     //水平滚动条位置 ...

  3. python 实现排序算法(三)-选择排序和冒泡排序

    #/usr/bin/env python #coding:utf-8 #@auther="livermorium" ''' 选择排序 从数据中选择最小值,排在位置首位 再从剩余未排 ...

  4. session依赖cookie,如果浏览器禁用了cookie呢?

    我们都知道session依赖cookie,因为服务器需要在每次请求中获取sessionId,然后找到客户端的session对象,如果浏览器禁用了cookie呢? 这个时候,就需要用到URL重写了,这种 ...

  5. spark新闻项目环境搭建

    前面安装好三节点的centos 6.5 和配置好静态ip,这里就不多说了 创建kfk用户,然后重启 Last login: Fri Jan :: from 192.168.86.1 [spark@sp ...

  6. html跳页面传值

    从a.html跳转到b.html并且把a.html的值name传入b.html  在a.html页面,url路径后面带参数,参数与url之间用?隔开 window.location.href = &q ...

  7. mysql:视图,触发器,事务,存储过程,函数。

    一  视图 1 什么是视图:视图其实就是通过查询得到一张表并且保存下来,就是一张虚拟的表,并非真实存在,比如我们将两个表在终端通过(inner join)内链接起来,那么我们得到的这个表就叫做视图,其 ...

  8. 微信小程序内容组件图标 icon

    小程序内置了一下图标可以用 需要自定义图标的看这里 ==>微信小程序中使用iconfont/font-awesome等自定义字体图标 小程序内置图标使用示例 <icon type=&quo ...

  9. [Unity算法]A星寻路(一):基础版本

    参考链接: https://www.cnblogs.com/yangyxd/articles/5447889.html 一.原理 1.将场景简化,分割为一个个正方形格子,这些格子称之为节点(node) ...

  10. 轻松解决oracle11g 空表不能exp导出的问题。

    解决方法: 1插入一条数据(或者再删除),浪费时间,有时几百张表会累死的.2创建数据库之前使用代码: Sql代码 alter system set  deferred_segment_creation ...