kickstart 的使用!

简介

1.什么是kickstart

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

2.什么是PXE

PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTPtrivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。

 

严格来说,PXE 并不是一种安装方式,而是一种引导方式。进行 PXE 安装的必要条件是在要安装的计算机中必须包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE ClientPXE 协议可以使计算机通过网络启动。此协议分为Client端和 Server 端,而PXE Client则在网卡的 ROM 中。当计算机引导时,BIOS  PXE Client 调入内存中执行,然后由 PXE Client 将放置在远端的文件通过网络下载到本地运行。运行 PXE 协议需要设置 DHCP 服务器和 TFTP 服务器。DHCP 服务器会给 PXE Client(将要安装系统的主机)分配一个 IP 地址,由于是给 PXE Client 分配 IP 地址,所以在配置 DHCP 服务器时需要增加相应的 PXE 设置。此外,在 PXE Client  ROM 中,已经存在了 TFTP Client,那么它就可以通过 TFTP 协议到 TFTP Server 上下载所需的文件了。

 

PXE的工作过程:

 

a)PXE Client 从自己的PXE网卡启动,向本网络中的DHCP服务器索取IP

 

b)DHCP 服务器返回分配给客户机的IP 以及PXE文件的放置位置(该文件一般是放在一台TFTP服务器上

 

c)PXE Client 向本网络中的TFTP服务器索取pxelinux.0 文件;

 

d)PXE Client 取得pxelinux.0 文件后之执行该文件;

 

e)根据pxelinux.0 的执行结果,通过TFTP服务器加载内核和文件系统;

 

f)进入安装画面此时可以通过选择HTTPFTPNFS 方式之一进行安装;

 

一.系统环境


操作系统:CentOS 6.7 64

所需软件:system-config-kickstarthttpd dhcptftp-server

1.配置好IPDNS 、网关,确保使用远程连接工具能够连接服务器

2. 配置防火墙,iptables –F 清理防火墙规则或者关闭iptables

3. 关闭SELINUX, setenforce 0#立即生效(实际是宽容模式)

 

二.安装配置httpd


系统的安装方式可以选择HTTPdVSFTP NFS,这里用httpd

1.安装httpd

yum -y install httpd

service httpd start

2.http的根目录中创建目录,用于挂载系统镜像文件

mkdir /var/www/html/centos

mount /dev/cdrom /var/www/html/centos/

 

三.安装配置TFTP服务器


1.安装TFTP

yum -y install tftp-server

 

2.修改/etc/xinetd.d/tftp文件

disable设置为"no"

blob.png

 

3.启动服务

service xinetd restart

 

四.配置支持PXE的启动程序


1.复制pxelinux.0 文件至/var/lib/tftpboot/ 文件夹中

cd /var/www/html/centos

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

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

注意:通常/usr/share目录下的syslinux目录是存在的,万一你的系统里没有这个目录,可以先执行yum -y install syslinux安装这个软件,然后再进行复制操作。

 

2.iso镜像中复制isolinux目录中的内容到/var/lib/tftpboot目录中

cp /var/www/html/centos/isolinux/{boot.msg,vesamenu.c32,splash.jpg} /var/lib/tftpboot/

 

#cp /var/www/html/centos/isolinux/* /var/lib/tftpboot/

 

3.复制iso 镜像中的/image/pxeboot/initrd.img vmlinux /var/lib/tftpboot/ 文件夹中

cp /var/www/html/centos/images/pxeboot/{initrd.img,vmlinuz} /var/lib/tftpboot/

 

4./var/lib/tftpboot/ 中新建一个pxelinux.cfg目录

mkdir /var/lib/tftpboot/pxelinux.cfg

 

5.iso 镜像中的/isolinux 目录中的isolinux.cfg复制到pxelinux.cfg目录中,同时更改文件名称为default

cp /var/www/html/centos/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

 

6.修改default文件

default文件中用来定义安装时的引导菜单的,我们可以对此文件进行修改来定制安装界面。

vi /var/lib/tftpboot/pxelinux.cfg/default

blob.png

 

五.配置安装DHCP


1.安装DHCP服务

yum –y install dhcp

 

2.复制配置模板文件到DHCP的配置目录中

cp -f /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

 

3.修改/etc/dhcp/dhcpd.conf 配置文件

default-lease-time 600;             #默认租约时间

max-lease-time 7200;                 #最大租约时间

ddns-update-style interim;       #设置DHCP服务器模式

ignore client-updates;                #禁止客户端更新

subnet 192.168.1.0 netmask 255.255.255.0 {

        option routers 192.168.1.1;

        range 192.168.1.20 192.168.1.50;                

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

        next-server 192.168.1.10;       #TFTP Server IP地址;

}

4.启动DHCP服务

service dhcp start

 

六.生成kickstart配置文件


yum groupinstall "X Window System" "Desktop"

yum install system-config-kickstart

启动X Windows 环境

startx

system-config-kickstart

1.设置语言,键盘,时区,Root密码,安装完毕后重启等。

blob.png

2.设置安装方式,这篇文章介绍的是HTTP方式的安装,选择HTTP

blob.png

3.安装MBR

blob.png

4.创建分区

blob.png

5.添加网卡设备

blob.png

6.认证配置

blob.png

7.关闭SELinux和防火墙

blob.png

8.选择需要安装的软件包

blob.png

9.保存配置文件

blob.png

10.打开/var/www/html/ks.cfg 文件进行查看并做修改

vi /var/www/html/ks.cfg

blob.png

说明:

reboot 此选项必须存在,也必须文中设定位置,不然kickstart显示一条消息,并等待用户按任意键后才重新引导;

clearpart –all –initlabel 此条命令必须添加,不然系统会让用户手动选择是否清除所有数据,这就需要人为干预了,从而导致自动化过程失败;

11.测试安装

 

blob.png

 blob.png

 

原创文章,作者:liangkai,如若转载,请注明出处:http://www.178linux.com/57216

(4)
liangkailiangkai
上一篇 2016-11-03
下一篇 2016-11-03

相关推荐

  • Linux用户组管理

    马哥网络教育21期+第三周练习 用户及用户组 用户配置文件     用户:UID,/etc/passwd     组:GID,/etc/group 密码配置文件     用户:/etc/shadow    &n…

    Linux干货 2016-09-02
  • 马哥教育网络班19期第二周课程练习

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 cd:切换目录命令实例  cd [dirctory] 切换目录  cd .. 返回上一级目录  cd –  来回切换  cd ~  切换到家目…

    Linux干货 2016-06-19
  • 搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

    搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin 一、快速部署LAMP架构平台 1.CentOS 6系统部署 所需安装包:httpd, php, mysql-server, php-mysql ]# yum install -y  httpd php&n…

    Linux干货 2016-10-17
  • 测试so接口函数的脚本 [python]

    下面是一个测试solib库中调用函数的测试脚本,但该脚本还存在这一些问题,我目前无法理解和解决; 问题: 1.我定义了logging采用日志滚动的方式,写日志,并且每个日志的大小是20M,但测试结果发现日志连1M都没到就开始轮转了,并且在轮转过程中,还出现logging写日志,却发现,日志轮转了,结果竟然报了,轮转日志不存在。 Traceback (most…

    Linux干货 2016-01-05
  • Linux的哲学思想及Linux发行版

    讲述一下几个问题: 第一,Linux的哲学思想;第二,Linux发行版的基础目录名称,命名法则和功用规定;第三,Linux不同发行版之间的联系和区别。 Linux的哲学思想: 1、一切皆文件。是Unix/Linux的基本哲学之一,不仅普通的文件,目录,字符设备,块设备,套接字等在Unix/Linux中都是以文件被对待。 2、小型,单一用途的程序。程序和可执行…

    Linux干货 2016-09-17
  • N22-love cat 博客作业 第3部分

    基于 heartbeat v2 crm 实现HA高可用性的 LAMP+wordpress 基本环境设置 OS   version:       CentOS release 6.7 (Final) Soft versio…

    Linux干货 2016-08-15