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

相关推荐

  • 任务计划管理

    一:单一工作调度:at命令       列出在指定的时间和日期在计算机上运行的已计划命令或计划命令和程序。必须正在运行“计划”服务才能使用 at 命令。 示例: [root@CentOS 6 ~]#/etc/init.d/atd restart   启动服务 …

    Linux干货 2016-09-12
  • 学习宣言

            学习计划:每天至少2个小时的学习,循序渐进,先通读再精读。         学习目标:成为运维的高手,走上人生巅峰。      &nb…

    Linux干货 2016-10-25
  • 条件选择if 条件判断case 文件查找 find locate 以及压缩和解压缩工具

    1 shell脚本编程之 条件选择if 条件判断case  2 文件查找 find locate 以及压缩和解压缩工具 过程式编程语言:  顺序执行  选择执行  循环执行 条件选择之 if语句 选择执行:   注意:if语句可嵌套    单分支 if 判断条件:then 条件为真的分…

    Linux干货 2016-08-15
  • centos6开机启动流程以及系统服务配置管理

    内容:   CentOS6 的启动流程   服务管理(chkconfig)   手动制定系统开机服务脚本 一、centos6系统启动流程 综述过程: POST–>BIOS(Boot Sequence)–>MBR(grub,446)–>Kernel–>init…

    Linux干货 2016-09-08
  • 浅析linux软、硬链接

    软链接 硬链接 不同点 创建时会占用新的inode号, 不会占用 可以跨分区 不可以跨分区 与源文件是两个不同的文件,不会增加文件链接数 与源文件数据相同,会增加文件链接数 依赖于链接的文件名,当删除或移动源文件后,连接可能失效 不依赖于源文件名,删除或移动源文件后,硬链接依然使用 对文件,目录都可以执行链接操作 只能对文件执行链接操作 大小为指向源文件路径…

    Linux干货 2016-12-05