Kickstart实现CentOS 6.5的网络自动安装

1.KickStart

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

PXE + KickStart安装的条件

2.实验环境

组件:

 dhcp:动态分配Ip地址 

 httpd:基于web访问centos镜像文件

 tftp:存放linux pxe引导文件

 syslinux:syslinux是一个功能强大的引导加载程序

服务器:

  主机centos6.5  IP:192.168.180.130

 安装:dhcp httpd tftp syslinux服务

3.操作步骤

一.安装相关组件

[root@localhost ~]#yum -y install dhcp* httpd* tftp* syslinux*

挂载CentOS6.5DVD光盘,并复制第一张光盘下的所有内容(文件和文件夹)到/var/www/html/centos(centos目录需要自己创建)下(apache默认网站根目录)

[root@localhost ~]#mount /dev/cdrom  /mnt/
[root@localhost ~]#cp -rf /mnt/* /var/www/html/centos

二、配置apache

[root@localhost ~]#service httpd start

三、配置tftp

[root@localhost ~]#vim /etc/xinetd.d/tftp
修改14行disable = no

[root@localhost ~]#/etc/init.d/xinetd start

四、配置dhcp

[root@localhost ~]#vim /etc/dhcp/dhcpd.conf
ddns-update-style  interim;
default-lease-time 216000;
filename "/pxelinux.0";
max-lease-time 43200;
next-server 192.168.180.130;
subnet 192.168.180.0 netmask 255.255.255.0 {
         option   subnet-mask 255.255.255.0;
         option   routers      192.168.180.2;
         range dynamic-bootp 192.168.180.2 192.168.180.200;
         default-lease-time 21600;
}

五、配置支持PXE启动

我已经把第一张光盘的内容复制到/var/www/html目录中了,所以所需要的文件我只需要从/var/www/html目录中复制就行了

1、进入tftpboot文件夹,没有就建一个,有了就不用建了。
[root@localhost ~]#cd /var/lib/tftpboot/

2、把pxelinux.0复制到/tftpboot/中
[root@localhost ~]#cd  /usr/share/syslinux 
[root@localhost ~]#cp pxelinux.0 /var/lib/tftpboot
[root@localhost ~]#cp vesamenu.c32 /var/lib/tftpboot

3、把Linux第一张安装光盘上/images/pxeboot/initrd.img和vmlinux复制到/tftpboot/中
[root@localhost ~]#cp /var/www/html/images/pxeboot/initrd.img   /var/lib/tftpboot
[root@localhost ~]#cp /var/www/html/images/pxeboot/vmlinux   /var/lib/tftpboot

4、 复制第一张安装光盘上的isolinux/*.msg到/tftpboot/中
[root@localhost ~]#cp /var/www/html/isolinux/*.msg   /var/lib/tftpboot

5、 在tftpboot中新建一个pxelinux.cfg目录
[root@localhost ~]#mkdir pxelinux.cfg

6、 把Linux第一张安装光盘上isolinux目录中的isolinux.cfg复制到pxelinux.cfg目录中,并同时更改文件名称为default
[root@localhost ~]# cd pxelinux.cfg
[root@localhost ~]# cp /var/www/html/isolinux/isolinux.cfg   /var/lib/tftpboot/pxelinux.cfg/default
[root@localhost ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
把22行注释掉,在下面添加:
append initrd=initrd.img ks=http://192.168.180.130/ks.cfg

六、修改/var/www/html/ks.cfg文件,指定读取ks.cfg的方法

#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead of upgrade
install
# Use CDROM installation media
url --url=http://192.168.180.130/centos/
# Root password
rootpw --iscrypted $1$mR96CBFs$tpDEL7evE3eL2UjJ5PjG2.
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use graphical install
graphical
firstboot --disable
# System keyboard
keyboard us
# System language
lang en_US
# SELinux configuration
selinux --disabled
# Installation logging level
logging --level=info
# Reboot after installation
reboot
# System timezone
timezone  Asia/Shanghai
# Network information
network  --bootproto=dhcp --device=eth0 --onboot=on
# System bootloader configuration
bootloader --append="crashkernel=auto rhgb quiet" --location=mbr --driveorder="sdb"
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel 
# Disk partitioning information
part /boot --fstype="ext4" --size=200
part swap --size=4096
part / --fstype="ext4" --size=40960
%pre
echo "start install"
%end

%post
echo "install end"
%end
#程序包段
%packages
@chinese-support
@development
@X Window System
@remote-desktop-clients
%end

七、设置服务开机自启动:

[root@localhost ~]# chkconfig httpd on
[root@localhost ~]# chkconfig xinetd on
[root@localhost ~]# chkconfig dhcpd on

八.设置bios为网卡启动,启动后,就会进入到安装界面,并自行安装。

wKiom1PY2SfRSt0IAACxjGMXu60908.jpg

wKioL1PY2l6xlTfPAACCoZlPM4U767.jpg

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

(0)
a295053193a295053193
上一篇 2016-10-24
下一篇 2016-10-24

相关推荐

  • ansible——自动化运维工具

    Ansible SSH-based configuration management, deployment, and task execution system 运维工具的分类: agent:基于专用的agent程序完成管理功能,puppet, func, zabbix, … agentless:基于ssh服务完成管理,ansible, fab…

    Linux干货 2016-11-06
  • 推荐-虚拟化网络之OpenvSwitch(二)

    上一篇介绍了openvswitch的基础知识,接下来我们来做一个实验,利用GRE通道搭建一个跨多宿主机的虚拟化网络,深入了解openvswitch的功能。 一、实验拓扑 ip地址分配:  A1:192.168.10.1/24  A2:192.168.10.10/24   B1:192.168.10.2/24 &nbsp…

    2016-03-27
  • MySQL or MariaDB 简介

    DBMS:数据库管理系统 RDBMS:关系型数据库管理系统    总之:他们都是一个数据管理程序;大多都是CS架构,都有专门的通信协议进行数据交换 关系模型:               表(行或者列):二维关系 设计范式:       &…

    Linux干货 2017-01-12
  • Linux的用户,组及文件权限管理

    Linux用户与组的创建,删除,属性修改,文件权限管理

    Linux干货 2018-02-24
  • 网络设备及工作

    集线器集线器又叫Hub,是一种多用于星形网络组织的中心设备。具备中继器放大信号的特点,集线器是一种半双工,同一时间只能接收或发送数据,不能同时既接受又发送数据,是冲突型设备,共享带宽,放大信号的同时放大噪声,不隔离广播,不能成环,不安全。 二层交换机二层交换机的工作原理能自学习构造MAC地址表,基于MAC地址表进行转发、划分冲突域,对MAC地址实现过滤等功能…

    Linux干货 2017-10-30
  • Linux第八周小结

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态 在线的主机使用绿色显示 不在线的主使用红色显示 #!/bin/bash # for i in {1..254};do if ping -c 6 -w 1 192.168.1.$i &> /dev/null;then echo -e…

    Linux干货 2017-08-20