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地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。

 

严格来说,PXE 并不是一种安装方式,而是一种引导方式。进行 PXE 安装的必要条件是在要安装的计算机中必须包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client。PXE 协议可以使计算机通过网络启动。此协议分为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)进入安装画面, 此时可以通过选择HTTP、FTP、NFS 方式之一进行安装;

 

一.系统环境


操作系统:CentOS 6.7 64位

所需软件:system-config-kickstart、httpd、 dhcp、tftp-server

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

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

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

 

二.安装配置httpd


系统的安装方式可以选择HTTPd、VSFTP、 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 12:01
下一篇 2016-11-03 15:22

相关推荐

  • 作业:0803日

    1:三种权限rwx对文件和目录的不同意义:       对文件: r:能够查看文件内容 w:修改文件内容 x:执行文件,通常文件的执行权限能够发起一个进程       对目录: r: 能够cd进目录,使用ls查看目录内的文件列表 w: 能够…

    Linux干货 2016-08-05
  • 网络班N22期第七周博客作业

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;     [root@bogon ~]# fdisk /dev/sde   &nb…

    Linux干货 2016-10-17
  • Linux系统程序包的安装–RPM

           我们知道在操作系统上使用的程序都是有程序员通过开发工具得来的,程序员直接编写的纯文本的文件,我们称之为源代码,由于计算机识别的是二进制程序,因此在完成源代码编写之后,就必须要经过编译,使之成为操作系统可以“看得懂”的二进制程序,这里的编译是通过编译器来进行的操作,编译器的功能就是将源代码程序“转换”为二进…

    2017-04-23
  • 第三周-作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。     ~]# who | cut -d" " -f1 | uniq 2、取出最后登录到当前系统的用户的相关信息。     ~]# who |  t…

    Linux干货 2016-12-14
  • /etc/fstab及/boot分区文件恢复

    以centos6为例,/boot目录下有最为关键的开机启动所必须的内核文件、根文件系统驱动文件已经引导加载程序(bootloader)grub。当我们清空此文件夹之后关机,机器就不能正常启动了,这种情况下,可以借助光盘启动进入救援模式解决。具体步骤如下: 1. 开机进入救援模式 这里不像正常情况下,显示根文件系统挂载在/mnt/sysimage目录,而是提示…

    2017-07-09