20150306 kickstart服务器搭建安装

回复 收藏
以下本人实战20150306晚实战。有撒问题QQ我747824617
6期7组 洪波

一、           概述
后面会使用kickstart批量安装linux系统,本地主要编写一个初始化设置的一个脚本,一个http服务器,便于安装服务器,下面为kickstart的原理:
二、           步骤Kickstart安装1.1 PXE原理
PXE(Pre-boot Execution Environment)是由Intel设计的协议,它可以使计算机通过网络启动。协议分为client和server两端,PXE client在网卡的ROM中,当计算机引导时,BIOS把PXE client调入内存执行,并显示出命令菜单,经用户选择后,PXE client将放置在远端的操作系统通过网络下载到本地运行。
既然是通过网络传输,就需要IP地址;也就是说在其启动过程中,客户端请求服务器分配IP地址,之后PXE Client使用TFTP Client 通过TFTP(Trivial File Transfer Protocol)协议下载启动安装程序所需的文件。
简单地说PXE网络安装,客户机通过支持PXE的网卡向网络中发送请求DHCP信息的广播请求IP地址等信息,DHCP服务器给客户端提供IP地址和其它信息(TFTP服务器、启动文件等),之后请求并下载安装需要的文件。在这个过程中需要一台服务器来提供启动文件、安装文件、以及安装过程中的自动应答文件等。下图中介绍了Linux中自动安装系统的详细工作过程:                                
第一步:PXEClient向DHCP发送请求
首先,将支持PXE的网络接口卡(NIC)的客户端的BIOS设置成为网络启动,通过PXEBootROM(自启动芯片)会以UDP(简单用户数据报协议)发送一个广播请求,向网络中的DHCP服务器索取IP地址等信息。
第二步:DHCP服务器提供信息
DHCP服务器收到客户端的请求,验证是否来至合法的PXE Client的请求,验证通过它将给客户端一个“提供”响应,这个“提供”响应中包含了为客户端分配的IP地址、pxelinux启动程序(TFTP)位置,以及配置文件所在位置。
第三步:PXE客户端请求下载启动文件
客户端收到服务器的“回应”后,会回应一个帧,以请求传送启动所需文件。这些启动文件包括:pxelinux.0、pxelinux.cfg/default、vmlinuz、initrd.img等文件。
第四步:BootServer响应客户端请求并传送文件
当服务器收到客户端的请求后,他们之间之后将有更多的信息在客户端与服务器之间作应答, 用以决定启动参数。BootROM 由 TFTP 通讯协议从Boot Server下载启动安装程序所必须的文件(pxelinux.0、pxelinux.cfg/default)。default文件下载完成后,会根据该文件中定义的引导顺序,启动Linux安装程序的引导内核。
第五步:请求下载自动应答文件
客户端通过pxelinux.cfg/default文件成功的引导Linux安装内核后,安装程序首先必须确定你通过什么安装介质来安装linux,如果是通过网络安装(NFS, FTP, HTTP),则会在这个时候初始化网络,并定位安装源位置。或许你会说,刚才PXE不是已经获取过IP地址了吗?为什么现在还需要一次?这是由于PXE获取的是安装用的内核以及安装程序等,而安装程序要获取的是安装系统所需的二进制包以及配置文件。由于它们需要的内容不同造成PXE模块和安装程序是相对独立的,PXE的网络配置并不能传递给安装程序。从而进行两次获取IP地址过程。
接着会读取该文件中指定的自动应答文件ks.cfg所在位置,根据该位置请求下载该文件。
第六步:客户端安装操作系统
将ks.cfg文件下载回来后,通过该文件找到OS Server,并按照该文件的配置请求下载安装过程需要的软件包。
OS Server和客户端建立连接后,将开始传输软件包,客户端将开始安装操作系统。安装完成后,将提示重新引导计算机。这个时候注意,在重新引导的过程中一定要将BIOS修改回从硬盘启动,不然的话又会重复的自动安装操作系统。
在上面介绍中PXEclient是需要安装Linux的计算机,TFTP Server、DHCP Server和NFS Server运行在另外一台Linux Server上。Bootstrap文件、配置文件、Linux内核都放置在Linux Server上TFTP服务器的根目录下。而Linux根文件系统存放于NFS Server的共享目录中。
PXE client在工作过程中,需要三个二进制文件:bootstrap、Linux 内核和Linux根文件系统。Bootstrap文件是可执行程序,它向用户提供简单的控制界面,并根据用户的选择,下载合适的Linux内核以及Linux根文件系统。
1.2 kickstart 安装
Kickstart系统默认没有安装,我们需要手动安装
1.2.1 配置yum
  
Fri Mar 06 07:59:27 [root@localhost  yum.repos.d]#yum makecache
  
Loaded plugins: fastestmirror,  refresh-packagekit, security
  
Determining fastest mirrors
  
*  base: mirrors.yun-idc.com
  
*  extras: mirror.bit.edu.cn
  
*  updates: mirrors.yun-idc.com
  
base                                                              | 3.7 kB     00:00     
  
base/group_gz                                                     | 216 kB     00:01     
  
base/filelists_db                                                | 6.1 MB     00:50      
  
base/primary_db                                                   | 4.6 MB     00:37     
  
base/other_db                                                     | 2.8 MB     00:28     
  
extras                                                           | 3.4 kB     00:00      
  
extras/filelists_db                                               |  31 kB     00:00      
  
extras/prestodelta                                                |  605 B     00:00      
  
extras/primary_db                                                |  30 kB      00:00     
  
extras/other_db                                                   |  37 kB     00:00      
  
updates                                                           | 3.4 kB     00:00     
  
updates/filelists_db                                              | 1.6 MB     00:14     
  
updates/prestodelta                                               | 215 kB     00:02     
  
updates/primary_db                                                | 2.1 MB     00:20     
  
updates/other_db                                                  |  19 MB     03:10      
  
Metadata Cache Created
  
Fri Mar 06 08:05:47 [root@localhost  yum.repos.d]#
  
1.2.2 安装kickstart
  
Fri Mar 06 08:07:11 [root@localhost  yum.repos.d]#yum install system-config-kickstart
  
Loaded plugins: fastestmirror,  refresh-packagekit, security
  
Loading mirror speeds from cached  hostfile
  
*  base: mirrors.yun-idc.com
  
*  extras: mirror.bit.edu.cn
  
*  updates: mirrors.yun-idc.com
  
Setting up Install Process
  
Resolving Dependencies
  
--> Running transaction check
  
---> Package  system-config-kickstart.noarch 0:2.8.6.5-1.el6 will be installed
  
--> Processing Dependency: pykickstart  >= 0.96 for package: system-config-kickstart-2.8.6.5-1.el6.noarch
  
--> Processing Dependency: anaconda  >= 11.4.0.42-1 for package: system-config-kickstart-2.8.6.5-1.el6.noarch
  
--> Processing Dependency:  system-config-language for package:  system-config-kickstart-2.8.6.5-1.el6.noarch
  
--> Running transaction check
  
---> Package anaconda.x86_64  0:13.21.229-1.el6.centos will be installed
  
--> Processing Dependency: syslinux  >= 3.73 for package: anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency:  python-pyblock >= 0.45-2 for package:  anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency:  python-cryptsetup >= 0.0.6 for package:  anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency: pyparted  >= 3.0 for package: anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency: fcoe-utils  >= 1.0.12-3.20100323git for package: anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency: createrepo  >= 0.4.7 for package: anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency:  tigervnc-server for package: anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency:  squashfs-tools for package: anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency: python-nss  for package: anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency: makebootfat  for package: anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency: isomd5sum  for package: anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency:  anaconda-yum-plugins for package: anaconda-13.21.229-1.el6.centos.x86_64
  
--> Processing Dependency:  libiscsi.so.0()(64bit) for package: anaconda-13.21.229-1.el6.centos.x86_64
  
---> Package pykickstart.noarch  0:1.74.16-1.el6 will be installed
  
---> Package  system-config-language.noarch 0:1.3.4-6.el6 will be installed
  
--> Running transaction check
  
---> Package  anaconda-yum-plugins.noarch 1:1.0-5.1.el6 will be installed
  
---> Package createrepo.noarch  0:0.9.9-22.el6 will be installed
  
--> Processing Dependency:  python-deltarpm for package: createrepo-0.9.9-22.el6.noarch
  
---> Package fcoe-utils.x86_64  0:1.0.28-3.el6 will be installed
  
--> Processing Dependency: lldpad  >= 0.9.43 for package: fcoe-utils-1.0.28-3.el6.x86_64
  
--> Processing Dependency: libhbalinux  >= 1.0.13 for package: fcoe-utils-1.0.28-3.el6.x86_64
  
--> Processing Dependency:  device-mapper-multipath for package: fcoe-utils-1.0.28-3.el6.x86_64
  
--> Processing Dependency:  libHBAAPI.so.2()(64bit) for package: fcoe-utils-1.0.28-3.el6.x86_64
  
---> Package  iscsi-initiator-utils.x86_64 0:6.2.0.873-13.el6 will be installed
  
---> Package isomd5sum.x86_64  1:1.0.6-1.el6 will be installed
  
---> Package makebootfat.x86_64  0:1.4-10.el6 will be installed
  
---> Package pyparted.x86_64  0:3.4-4.el6 will be installed
  
---> Package python-cryptsetup.x86_64  0:0.0.11-1.el6 will be installed
  
---> Package python-nss.x86_64  0:0.13-1.el6 will be installed
  
---> Package python-pyblock.x86_64  0:0.48-1.el6 will be installed
  
---> Package squashfs-tools.x86_64  0:4.0-5.el6 will be installed
  
---> Package syslinux.x86_64  0:4.04-3.el6 will be installed
  
--> Processing Dependency:  syslinux-nonlinux for package: syslinux-4.04-3.el6.x86_64
  
---> Package tigervnc-server.x86_64  0:1.1.0-16.el6.centos will be installed
  
--> Processing Dependency: pixman  >= 0.27.2 for package: tigervnc-server-1.1.0-16.el6.centos.x86_64
  
--> Processing Dependency: libX11  >= 1.6.0 for package: tigervnc-server-1.1.0-16.el6.centos.x86_64
  
--> Processing Dependency:  xorg-x11-fonts-misc for package: tigervnc-server-1.1.0-16.el6.centos.x86_64
  
--> Running transaction check
  
---> Package  device-mapper-multipath.x86_64 0:0.4.9-80.el6_6.3 will be installed
  
--> Processing Dependency: kpartx = 0.4.9-80.el6_6.3  for package: device-mapper-multipath-0.4.9-80.el6_6.3.x86_64
  
--> Processing Dependency:  device-mapper-multipath-libs = 0.4.9-80.el6_6.3 for package:  device-mapper-multipath-0.4.9-80.el6_6.3.x86_64
  
--> Processing Dependency:  libmultipath.so()(64bit) for package:  device-mapper-multipath-0.4.9-80.el6_6.3.x86_64
  
--> Processing Dependency:  libmpathpersist.so.0()(64bit) for package:  device-mapper-multipath-0.4.9-80.el6_6.3.x86_64
  
---> Package libX11.x86_64  0:1.5.0-4.el6 will be updated
  
---> Package libX11.x86_64  0:1.6.0-2.2.el6 will be an update
  
--> Processing Dependency:  libX11-common = 1.6.0-2.2.el6 for package: libX11-1.6.0-2.2.el6.x86_64
  
---> Package libhbaapi.x86_64  0:2.2.9-1.el6 will be installed
  
---> Package libhbalinux.x86_64  0:1.0.16-1.el6 will be installed
  
---> Package lldpad.x86_64  0:0.9.46-3.el6_5 will be installed
  
--> Processing Dependency:  lldpad-libs(x86-64) = 0.9.46-3.el6_5 for package:  lldpad-0.9.46-3.el6_5.x86_64
  
--> Processing Dependency:  liblldp_clif.so.1()(64bit) for package: lldpad-0.9.46-3.el6_5.x86_64
  
--> Processing Dependency:  libconfig.so.8()(64bit) for package: lldpad-0.9.46-3.el6_5.x86_64
  
---> Package pixman.x86_64  0:0.26.2-5.el6_4 will be updated
  
---> Package pixman.x86_64  0:0.32.4-4.el6 will be an update
  
---> Package python-deltarpm.x86_64  0:3.5-0.5.20090913git.el6 will be installed
  
--> Processing Dependency: deltarpm =  3.5-0.5.20090913git.el6 for package:  python-deltarpm-3.5-0.5.20090913git.el6.x86_64
  
---> Package syslinux-nonlinux.noarch  0:4.04-3.el6 will be installed
  
---> Package  xorg-x11-fonts-misc.noarch 0:7.2-9.1.el6 will be installed
  
--> Running transaction check
  
---> Package deltarpm.x86_64  0:3.5-0.5.20090913git.el6 will be installed
  
---> Package  device-mapper-multipath-libs.x86_64 0:0.4.9-80.el6_6.3 will be installed
  
---> Package kpartx.x86_64  0:0.4.9-72.el6 will be updated
  
---> Package kpartx.x86_64  0:0.4.9-80.el6_6.3 will be an update
  
---> Package libX11-common.noarch  0:1.5.0-4.el6 will be updated
  
---> Package libX11-common.noarch  0:1.6.0-2.2.el6 will be an update
  
---> Package libconfig.x86_64  0:1.3.2-1.1.el6 will be installed
  
---> Package lldpad-libs.x86_64  0:0.9.46-3.el6_5 will be installed
  
--> Finished Dependency Resolution
  
  
Dependencies Resolved
  
  
=======================================================================================================================================================================
  
Package                                              Arch                           Version                                         Repository                      Size
  
=======================================================================================================================================================================
  
Installing:
  
system-config-kickstart                             noarch                        2.8.6.5-1.el6                                  base                           923 k
  
Installing for dependencies:
  
anaconda                                             x86_64                         13.21.229-1.el6.centos                          base                           3.2 M
  
anaconda-yum-plugins                                noarch                        1:1.0-5.1.el6                                  base                            13 k
  
createrepo                                          noarch                        0.9.9-22.el6                                   base                            96 k
  
deltarpm                                             x86_64                         3.5-0.5.20090913git.el6                         base                            71 k
  
device-mapper-multipath                             x86_64                        0.4.9-80.el6_6.3                               updates                        122 k
  
device-mapper-multipath-libs                        x86_64                        0.4.9-80.el6_6.3                               updates                        190 k
  
fcoe-utils                                           x86_64                         1.0.28-3.el6                                    base                           103 k
  
iscsi-initiator-utils                               x86_64                        6.2.0.873-13.el6                               base                           719 k
  
isomd5sum                                            x86_64                        1:1.0.6-1.el6                                  base                            24 k
  
libconfig                                            x86_64                         1.3.2-1.1.el6                                   base                            51 k
  
libhbaapi                                            x86_64                         2.2.9-1.el6                                     base                             21 k
  
libhbalinux                                          x86_64                        1.0.16-1.el6                                   base                            32 k
  
lldpad                                               x86_64                         0.9.46-3.el6_5                                 base                           215 k
  
lldpad-libs                                          x86_64                         0.9.46-3.el6_5                                 base                            28 k
  
makebootfat                                          x86_64                         1.4-10.el6                                      base                             42 k
  
pykickstart                                         noarch                        1.74.16-1.el6                                  base                           310 k
  
pyparted                                             x86_64                         3.4-4.el6                                      base                           184 k
  
python-cryptsetup                                    x86_64                         0.0.11-1.el6                                    base                             22 k
  
python-deltarpm                                     x86_64                         3.5-0.5.20090913git.el6                        base                            27 k
  
python-nss                                           x86_64                         0.13-1.el6                                      base                           202 k
  
python-pyblock                                       x86_64                         0.48-1.el6                                      base                             67 k
  
squashfs-tools                                      x86_64                        4.0-5.el6                                       base                             80 k
  
syslinux                                             x86_64                         4.04-3.el6                                      base                           346 k
  
syslinux-nonlinux                                    noarch                         4.04-3.el6                                      base                            584 k
  
system-config-language                              noarch                        1.3.4-6.el6                                    base                           143 k
  
tigervnc-server                                      x86_64                         1.1.0-16.el6.centos                             updates                        1.0 M
  
xorg-x11-fonts-misc                                 noarch                        7.2-9.1.el6                                    base                           5.8 M
  
Updating for dependencies:
  
kpartx                                              x86_64                        0.4.9-80.el6_6.3                               updates                         63 k
  
libX11                                               x86_64                         1.6.0-2.2.el6                                   base                           586 k
  
libX11-common                                        noarch                         1.6.0-2.2.el6                                   base                            192 k
  
pixman                                              x86_64                        0.32.4-4.el6                                   base                           243 k
  
  
Transaction Summary
  
=======================================================================================================================================================================
  
Install      28 Package(s)
  
Upgrade       4 Package(s)
  
  
Total download size: 16 M
  
Is this ok [y/N]: y
  
Downloading Packages:
  
(1/32):  anaconda-13.21.229-1.el6.centos.x86_64.rpm                                                                                               | 3.2 MB     00:29     
  
(2/32):  anaconda-yum-plugins-1.0-5.1.el6.noarch.rpm                                                                                             |  13 kB      00:00     
  
(3/32):  createrepo-0.9.9-22.el6.noarch.rpm                                                                                                       |  96 kB     00:00      
  
(4/32): deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm                                                                                              |  71 kB     00:00      
  
(5/32):  device-mapper-multipath-0.4.9-80.el6_6.3.x86_64.rpm                                                                                     |  122 kB     00:02     
  
(6/32):  device-mapper-multipath-libs-0.4.9-80.el6_6.3.x86_64.rpm                                                                                 | 190 kB     00:03     
  
(7/32): fcoe-utils-1.0.28-3.el6.x86_64.rpm                                                                                                       | 103 kB     00:02     
  
(8/32):  iscsi-initiator-utils-6.2.0.873-13.el6.x86_64.rpm                                                                                        | 719  kB     00:13     
  
(9/32):  isomd5sum-1.0.6-1.el6.x86_64.rpm                                                                                                         |  24 kB     00:00      
  
(10/32): kpartx-0.4.9-80.el6_6.3.x86_64.rpm                                                                                                      |  63 kB     00:00      
  
(11/32):  libX11-1.6.0-2.2.el6.x86_64.rpm                                                                                                         | 586 kB     00:08      
  
(12/32):  libX11-common-1.6.0-2.2.el6.noarch.rpm                                                                                                  | 192 kB     00:06     
  
(13/32): libconfig-1.3.2-1.1.el6.x86_64.rpm                                                                                                      |  51 kB     00:00      
  
(14/32):  libhbaapi-2.2.9-1.el6.x86_64.rpm                                                                                                        |  21 kB      00:00     
  
(15/32):  libhbalinux-1.0.16-1.el6.x86_64.rpm                                                                                                     |  32 kB     00:00      
  
(16/32): lldpad-0.9.46-3.el6_5.x86_64.rpm                                                                                                        | 215 kB     00:03     
  
(17/32):  lldpad-libs-0.9.46-3.el6_5.x86_64.rpm                                                                                                   |  28 kB      00:00     
  
(18/32):  makebootfat-1.4-10.el6.x86_64.rpm                                                                                                       |  42 kB     00:00      
  
(19/32):  pixman-0.32.4-4.el6.x86_64.rpm                                                                                                         |  243 kB     00:04     
  
(20/32):  pykickstart-1.74.16-1.el6.noarch.rpm                                                                                                    | 310 kB     00:05      
  
(21/32):  pyparted-3.4-4.el6.x86_64.rpm                                                                                                           | 184 kB     00:03     
  
(22/32):  python-cryptsetup-0.0.11-1.el6.x86_64.rpm                                                                                               |  22 kB      00:00     
  
(23/32):  python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm                                                                                      |  27 kB     00:00      
  
(24/32):  python-nss-0.13-1.el6.x86_64.rpm                                                                                                        | 202 kB     00:03     
  
(25/32):  python-pyblock-0.48-1.el6.x86_64.rpm                                                                                                   |  67 kB      00:01     
  
(26/32):  squashfs-tools-4.0-5.el6.x86_64.rpm                                                                                                     |  80 kB     00:01      
  
(27/32):  syslinux-4.04-3.el6.x86_64.rpm                                                                                                          | 346 kB     00:04     
  
(28/32):  syslinux-nonlinux-4.04-3.el6.noarch.rpm                                                                                                 | 584 kB     00:04     
  
(29/32):  system-config-kickstart-2.8.6.5-1.el6.noarch.rpm                                                                                       |  923 kB     00:06     
  
(30/32):  system-config-language-1.3.4-6.el6.noarch.rpm                                                                                           | 143 kB     00:01     
  
(31/32):  tigervnc-server-1.1.0-16.el6.centos.x86_64.rpm                                                                                          | 1.0 MB     00:08     
  
(32/32):  xorg-x11-fonts-misc-7.2-9.1.el6.noarch.rpm                                                                                             |  5.8 MB     00:45     
  
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
  
Total                                                                                                                                   93  kB/s |  16 MB     02:52      
  
warning: rpmts_HdrFromFdno: Header V3  RSA/SHA256 Signature, key ID c105b9de: NOKEY
  
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
  
Importing GPG key 0xC105B9DE:
  
Userid : CentOS-6 Key (CentOS 6 Official  Signing Key) <centos-6-key@centos.org>
  
Package:  centos-release-6-5.el6.centos.11.1.x86_64  (@anaconda-CentOS-201311272149.x86_64/6.5)
  
From   : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
  
Is this ok [y/N]: y
  
Running rpm_check_debug
  
Running Transaction Test
  
Transaction Test Succeeded
  
Running Transaction
  
   Installing : syslinux-nonlinux-4.04-3.el6.noarch                                                                                                                 1/36  
  
   Installing : syslinux-4.04-3.el6.x86_64                                                                                                                          2/36
  
   Installing : pyparted-3.4-4.el6.x86_64                                                                                                                           3/36
  
   Installing : pykickstart-1.74.16-1.el6.noarch                                                                                                                    4/36  
  
   Installing : libhbaapi-2.2.9-1.el6.x86_64                                                                                                                        5/36
  
   Installing : libhbalinux-1.0.16-1.el6.x86_64                                                                                                                     6/36
  
   Installing : python-pyblock-0.48-1.el6.x86_64                                                                                                                    7/36  
  
   Updating   :  libX11-common-1.6.0-2.2.el6.noarch                                                                                                                  8/36
  
   Updating   : libX11-1.6.0-2.2.el6.x86_64                                                                                                                         9/36
  
   Installing : makebootfat-1.4-10.el6.x86_64                                                                                                                      10/36
  
   Updating   :  pixman-0.32.4-4.el6.x86_64                                                                                                                         11/36
  
   Installing : system-config-language-1.3.4-6.el6.noarch                                                                                                          12/36
  
   Installing : python-nss-0.13-1.el6.x86_64                                                                                                                      13/36  
  
   Updating   :  kpartx-0.4.9-80.el6_6.3.x86_64                                                                                                                     14/36
  
   Installing : device-mapper-multipath-libs-0.4.9-80.el6_6.3.x86_64                                                                                               15/36
  
   Installing : device-mapper-multipath-0.4.9-80.el6_6.3.x86_64                                                                                                   16/36  
  
   Installing : python-cryptsetup-0.0.11-1.el6.x86_64                                                                                                              17/36
  
   Installing : deltarpm-3.5-0.5.20090913git.el6.x86_64                                                                                                            18/36
  
   Installing : python-deltarpm-3.5-0.5.20090913git.el6.x86_64                                                                                                    19/36  
  
   Installing : createrepo-0.9.9-22.el6.noarch                                                                                                                     20/36
  
   Installing : squashfs-tools-4.0-5.el6.x86_64                                                                                                                    21/36
  
   Installing : lldpad-libs-0.9.46-3.el6_5.x86_64                                                                                                                  22/36  
  
   Installing : xorg-x11-fonts-misc-7.2-9.1.el6.noarch                                                                                                             23/36
  
   Installing : tigervnc-server-1.1.0-16.el6.centos.x86_64                                                                                                         24/36
  
   Installing : iscsi-initiator-utils-6.2.0.873-13.el6.x86_64                                                                                                      25/36  
  
   Installing : 1:isomd5sum-1.0.6-1.el6.x86_64                                                                                                                     26/36
  
   Installing : 1:anaconda-yum-plugins-1.0-5.1.el6.noarch                                                                                                          27/36
  
   Installing : libconfig-1.3.2-1.1.el6.x86_64                                                                                                                     28/36
  
   Installing : lldpad-0.9.46-3.el6_5.x86_64                                                                                                                       29/36
  
   Installing : fcoe-utils-1.0.28-3.el6.x86_64                                                                                                                    30/36  
  
   Installing : anaconda-13.21.229-1.el6.centos.x86_64                                                                                                             31/36
  
   Installing : system-config-kickstart-2.8.6.5-1.el6.noarch                                                                                                       32/36
  
   Cleanup    :  libX11-1.5.0-4.el6.x86_64                                                                                                                          33/36  
  
   Cleanup    :  libX11-common-1.5.0-4.el6.noarch                                                                                                                   34/36
  
   Cleanup    :  pixman-0.26.2-5.el6_4.x86_64                                                                                                                       35/36
  
   Cleanup    :  kpartx-0.4.9-72.el6.x86_64                                                                                                                        36/36  
  
   Verifying  :  libconfig-1.3.2-1.1.el6.x86_64                                                                                                                      1/36
  
   Verifying  :  createrepo-0.9.9-22.el6.noarch                                                                                                                      2/36
  
   Verifying  :  1:anaconda-yum-plugins-1.0-5.1.el6.noarch                                                                                                           3/36
  
   Verifying  :  device-mapper-multipath-0.4.9-80.el6_6.3.x86_64                                                                                                    4/36  
  
   Verifying  :  1:isomd5sum-1.0.6-1.el6.x86_64                                                                                                                      5/36
  
   Verifying  :  fcoe-utils-1.0.28-3.el6.x86_64                                                                                                                      6/36
  
   Verifying  :  iscsi-initiator-utils-6.2.0.873-13.el6.x86_64                                                                                                      7/36  
  
   Verifying  :  xorg-x11-fonts-misc-7.2-9.1.el6.noarch                                                                                                              8/36
  
   Verifying  : libX11-1.6.0-2.2.el6.x86_64                                                                                                                         9/36
  
   Verifying  :  lldpad-libs-0.9.46-3.el6_5.x86_64                                                                                                                  10/36  
  
   Verifying  :  syslinux-4.04-3.el6.x86_64                                                                                                                         11/36
  
   Verifying  : tigervnc-server-1.1.0-16.el6.centos.x86_64                                                                                                         12/36
  
   Verifying  :  lldpad-0.9.46-3.el6_5.x86_64                                                                                                                       13/36  
  
   Verifying  :  squashfs-tools-4.0-5.el6.x86_64                                                                                                                    14/36
  
   Verifying  : deltarpm-3.5-0.5.20090913git.el6.x86_64                                                                                                            15/36
  
   Verifying  :  libhbalinux-1.0.16-1.el6.x86_64                                                                                                                    16/36  
  
   Verifying  :  libhbaapi-2.2.9-1.el6.x86_64                                                                                                                       17/36
  
   Verifying  :  system-config-kickstart-2.8.6.5-1.el6.noarch                                                                                                       18/36
  
   Verifying  :  python-cryptsetup-0.0.11-1.el6.x86_64                                                                                                              19/36
  
   Verifying  :  device-mapper-multipath-libs-0.4.9-80.el6_6.3.x86_64                                                                                               20/36
  
   Verifying  :  kpartx-0.4.9-80.el6_6.3.x86_64                                                                                                                    21/36  
  
   Verifying  :  pykickstart-1.74.16-1.el6.noarch                                                                                                                   22/36
  
   Verifying  :  python-nss-0.13-1.el6.x86_64                                                                                                                       23/36
  
   Verifying  :  python-deltarpm-3.5-0.5.20090913git.el6.x86_64                                                                                                     24/36
  
   Verifying  :  anaconda-13.21.229-1.el6.centos.x86_64                                                                                                             25/36
  
   Verifying  :  pyparted-3.4-4.el6.x86_64                                                                                                                          26/36
  
   Verifying  :  python-pyblock-0.48-1.el6.x86_64                                                                                                                  27/36  
  
   Verifying  :  system-config-language-1.3.4-6.el6.noarch                                                                                                          28/36
  
   Verifying  :  syslinux-nonlinux-4.04-3.el6.noarch                                                                                                                29/36
  
   Verifying  :  pixman-0.32.4-4.el6.x86_64                                                                                                                        30/36  
  
   Verifying  :  makebootfat-1.4-10.el6.x86_64                                                                                                                      31/36
  
   Verifying  :  libX11-common-1.6.0-2.2.el6.noarch                                                                                                                32/36  
  
   Verifying  :  kpartx-0.4.9-72.el6.x86_64                                                                                                                         33/36
  
   Verifying  :  libX11-common-1.5.0-4.el6.noarch                                                                                                                   34/36
  
   Verifying  :  pixman-0.26.2-5.el6_4.x86_64                                                                                                                       35/36  
  
   Verifying  :  libX11-1.5.0-4.el6.x86_64                                                                                                                          36/36
  
  
Installed:
  
   system-config-kickstart.noarch 0:2.8.6.5-1.el6                                                                                                                        
  
  
Dependency Installed:
  
   anaconda.x86_64 0:13.21.229-1.el6.centos             anaconda-yum-plugins.noarch  1:1.0-5.1.el6              createrepo.noarch 0:0.9.9-22.el6                          
  
   deltarpm.x86_64 0:3.5-0.5.20090913git.el6            device-mapper-multipath.x86_64  0:0.4.9-80.el6_6.3      device-mapper-multipath-libs.x86_64 0:0.4.9-80.el6_6.3   
  
   fcoe-utils.x86_64 0:1.0.28-3.el6                      iscsi-initiator-utils.x86_64 0:6.2.0.873-13.el6       isomd5sum.x86_64 1:1.0.6-1.el6                           
  
   libconfig.x86_64 0:1.3.2-1.1.el6                     libhbaapi.x86_64 0:2.2.9-1.el6                        libhbalinux.x86_64  0:1.0.16-1.el6                        
  
   lldpad.x86_64 0:0.9.46-3.el6_5                       lldpad-libs.x86_64  0:0.9.46-3.el6_5                    makebootfat.x86_64 0:1.4-10.el6                           
  
   pykickstart.noarch 0:1.74.16-1.el6                   pyparted.x86_64  0:3.4-4.el6                            python-cryptsetup.x86_64 0:0.0.11-1.el6                  
  
   python-deltarpm.x86_64 0:3.5-0.5.20090913git.el6     python-nss.x86_64 0:0.13-1.el6                        python-pyblock.x86_64  0:0.48-1.el6                        
  
   squashfs-tools.x86_64 0:4.0-5.el6                    syslinux.x86_64  0:4.04-3.el6                           syslinux-nonlinux.noarch 0:4.04-3.el6                     
  
   system-config-language.noarch 0:1.3.4-6.el6          tigervnc-server.x86_64  0:1.1.0-16.el6.centos           xorg-x11-fonts-misc.noarch 0:7.2-9.1.el6                  
  
  
Dependency Updated:
  
   kpartx.x86_64 0:0.4.9-80.el6_6.3          libX11.x86_64 0:1.6.0-2.2.el6          libX11-common.noarch  0:1.6.0-2.2.el6          pixman.x86_64  0:0.32.4-4.el6         
  
  
Complete!
  
以上 kickstart服务安装完成,下面到图形界面生成配置文件。
kickstart配置
  
Dhcpd服务器安装
PXE引导安装过程中,PXE客户端通过DHCP获取PXE服务器地址,PXE引导文件名称;然后客户机在使用TFTP协议从TFTP服务器下载引导文件并执行,从而启动计算机安装程序。引导文件执行后,接着下载安装程序启动安装。RedHat Linux使用了ISCdhcpd软件,完成它的安装与配置。
  
Fri Mar 06 08:33:42 [root@localhost  /var/www/html]# yum install dhcp
  
Loaded plugins: fastestmirror,  refresh-packagekit, security
  
Loading mirror speeds from cached  hostfile
  
*  base: mirrors.yun-idc.com
  
*  extras: mirror.bit.edu.cn
  
*  updates: mirrors.yun-idc.com
  
Setting up Install Process
  
Resolving Dependencies
  
--> Running transaction check
  
---> Package dhcp.x86_64  12:4.1.1-43.P1.el6.centos.1 will be installed
  
--> Processing Dependency: dhcp-common  = 12:4.1.1-43.P1.el6.centos.1 for package:  12:dhcp-4.1.1-43.P1.el6.centos.1.x86_64
  
--> Running transaction check
  
---> Package dhcp-common.x86_64  12:4.1.1-38.P1.el6.centos will be updated
  
--> Processing Dependency: dhcp-common  = 12:4.1.1-38.P1.el6.centos for package:  12:dhclient-4.1.1-38.P1.el6.centos.x86_64
  
---> Package dhcp-common.x86_64  12:4.1.1-43.P1.el6.centos.1 will be an update
  
--> Running transaction check
  
---> Package dhclient.x86_64  12:4.1.1-38.P1.el6.centos will be updated
  
---> Package dhclient.x86_64  12:4.1.1-43.P1.el6.centos.1 will be an update
  
--> Finished Dependency Resolution
  
  
Dependencies Resolved
  
  
=======================================================================================================================================================================
  
Package                               Arch                             Version                                                Repository                         Size
  
=======================================================================================================================================================================
  
Installing:
  
dhcp                                  x86_64                            12:4.1.1-43.P1.el6.centos.1                             updates                            820 k
  
Updating for dependencies:
  
dhclient                              x86_64                           12:4.1.1-43.P1.el6.centos.1                            updates                           318 k
  
dhcp-common                           x86_64                            12:4.1.1-43.P1.el6.centos.1                             updates                           143 k
  
  
Transaction Summary
  
=======================================================================================================================================================================
  
Install       1 Package(s)
  
Upgrade       2 Package(s)
  
  
Total download size: 1.3 M
  
Is this ok [y/N]: y
  
Downloading Packages:
  
(1/3):  dhclient-4.1.1-43.P1.el6.centos.1.x86_64.rpm                                                                                              | 318 kB     00:02     
  
(2/3): dhcp-4.1.1-43.P1.el6.centos.1.x86_64.rpm                                                                                                  | 820 kB     00:06     
  
(3/3):  dhcp-common-4.1.1-43.P1.el6.centos.1.x86_64.rpm                                                                                           |  143 kB     00:00     
  
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
  
Total                                                                                                                                  101  kB/s | 1.3 MB     00:12     
  
Running rpm_check_debug
  
Running Transaction Test
  
Transaction Test Succeeded
  
Running Transaction
  
   Updating   :  12:dhcp-common-4.1.1-43.P1.el6.centos.1.x86_64                                                                                                       1/5
  
   Installing : 12:dhcp-4.1.1-43.P1.el6.centos.1.x86_64                                                                                                             2/5  
  
   Updating   :  12:dhclient-4.1.1-43.P1.el6.centos.1.x86_64                                                                                                          3/5
  
   Cleanup    :  12:dhclient-4.1.1-38.P1.el6.centos.x86_64                                                                                                            4/5
  
   Cleanup    :  12:dhcp-common-4.1.1-38.P1.el6.centos.x86_64                                                                                                        5/5  
  
   Verifying  :  12:dhcp-4.1.1-43.P1.el6.centos.1.x86_64                                                                                                              1/5
  
   Verifying  : 12:dhcp-common-4.1.1-43.P1.el6.centos.1.x86_64                                                                                                       2/5
  
   Verifying  :  12:dhclient-4.1.1-43.P1.el6.centos.1.x86_64                                                                                                          3/5  
  
   Verifying  :  12:dhclient-4.1.1-38.P1.el6.centos.x86_64                                                                                                            4/5
  
   Verifying  : 12:dhcp-common-4.1.1-38.P1.el6.centos.x86_64                                                                                                         5/5
  
  
Installed:
  
   dhcp.x86_64 12:4.1.1-43.P1.el6.centos.1                                                                                                                              
  
  
Dependency Updated:
  
   dhclient.x86_64 12:4.1.1-43.P1.el6.centos.1                                       dhcp-common.x86_64 12:4.1.1-43.P1.el6.centos.1                                    
  
  
Complete!
  
Fri Mar 06 08:41:26 [root@localhost  /var/www/html]# cp /usr/share/doc/dhc
  
dhclient-4.1.1/    dhcp-4.1.1/        dhcp-common-4.1.1/
  
Fri Mar 06 08:41:26 [root@localhost  /var/www/html]# cp /usr/share/doc/dhc
  
dhclient-4.1.1/    dhcp-4.1.1/        dhcp-common-4.1.1/
  
Fri Mar 06 08:41:26 [root@localhost  /var/www/html]# cp /usr/share/doc/dhcp-4.1.1/dhcpd
  
dhcpd6.conf.sample  dhcpd.conf.sample   dhcpd-conf-to-ldap  
  
Fri Mar 06 08:41:26 [root@localhost  /var/www/html]# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/conf/dhcpd.conf
  
Fri Mar 06 08:42:48 [root@localhost  /var/www/html]# vim /etc/dhcp/conf/dhcpd.conf
  
接下来我们需要配置相关信息。为了满足我们的安装需求,假设PXE服务器、DHCP服务器、TFTP服务器全部安装在一台为172.1.1.20的计算机上。我们需要进行如下操作:
(1)修改 /etc/dhcpd.conf 文件,指定 IP 地址等信息。
(2)在 '''/etc/dhcpd.conf''' 中增加 tftp-server 需要推送给客户端的启动文件(bootstrap):filename"pxelinux.0";因为 tftp 的默认目录是 /tftpboot,所以文件的绝对路径就是: /tftpboot/pxelinux.0";当然也可以指定为其它的路径。
另外需要指定 next-server 参数,告诉客户端在获取到 pxelinux.0 文件之后去哪里获取其余的启动文件: next-server 172.1.1.20;
最终的配置文件结果如下所示:
编辑/etc/dhcp/conf/dhcpd.cof文件,首部添加如下内容并保存:
  
ddns-update-style interim;
  
ignore client-updates;
  
allow booting; #allow booting
  
allow bootp;  #bootp
  
subnet 172.1.1.0 netmask 255.255.255.0 {
  
         range  172.1.1.30  172.1.1.80;
  
         option routers                  172.1.1.1;
  
         option subnet-mask               255.255.255.0;
  
         default-lease-time 21600;
  
         max-lease-time 43200;
  
         next-server 172.1.1.20; #TFTP Server
  
         filename "pxelinux.0";    #pxelinu
  
}
  
测试dhcp
  
Fri Mar 06 23:29:09 [root@172-1-1-20 ~]#dhcpd
  
Internet Systems Consortium DHCP Server  4.1.1-P1
  
Copyright 2004-2010 Internet Systems  Consortium.
  
All rights reserved.
  
For info, please visit  https://www.isc.org/software/dhcp/
  
Not searching LDAP since ldap-server,  ldap-port and ldap-base-dn were not specified in the config file
  
Wrote 0 class decls to leases file.
  
Wrote 0 deleted host decls to leases  file.
  
Wrote 0 new dynamic host decls to leases  file.
  
Wrote 1 leases to leases file.
  
Listening on  LPF/eth0/00:0c:29:2c:b8:c9/172.1.1.0/24
  
Sending on   LPF/eth0/00:0c:29:2c:b8:c9/172.1.1.0/24
  
Sending on   Socket/fallback/fallback-net
  
There's already a DHCP server running.
  
  
This version of ISC DHCP is based on the  release available
  
on ftp.isc.org.  Features have been added and other changes
  
have been made to the base software  release in order to make
  
it work better with this distribution.
  
  
Fri Mar 06 23:30:30 [root@172-1-1-20  ~]#Please report for this software via the CentOS Bugs Database:
    
exiting.
  
开启dhcp服务:
  
Fri Mar 06 08:52:23 [root@localhost  /var/www/html]# /etc/init.d/dhcpd start
  
Starting dhcpd: [OK]
  
安装tftp服务器
PXE安装过程中,客户机在使用TFTP协议从TFTP服务器下载引导文件并执行。我们主要通过配置TFTP服务器和PXE的引导配置完成这个过程。
[table]
[tr]  [td=553]  
Fri Mar 06 09:17:14 [root@localhost  yum.repos.d]#yum install tftp-server*
  
Loaded plugins: fastestmirror,  refresh-packagekit, security
  
Loading mirror speeds from cached  hostfile
  
*  base: mirrors.yun-idc.com
  
*  extras: mirror.bit.edu.cn
  
*  updates: mirrors.yun-idc.com
  
Setting up Install Process
  
Resolving Dependencies
  
--> Running transaction check
  
---> Package tftp-server.x86_64  0:0.49-7.el6 will be installed
  
--> Processing Dependency: xinetd for  package: tftp-server-0.49-7.el6.x86_64
  
--> Running transaction check
  
---> Package xinetd.x86_64  2:2.3.14-39.el6_4 will be installed
  
--> Finished Dependency Resolution
  
  
Dependencies Resolved
  
  
=======================================================================================================================================================================
  
Package                                  Arch                                Version                                           Repository                          Size
  
=======================================================================================================================================================================
  
Installing:
  
tftp-server                              x86_64                              0.49-7.el6                                        base                                39 k
  
Installing for dependencies:
  
xinetd                                    x86_64                               2:2.3.14-39.el6_4                                base                              121 k
  
  
Transaction Summary
  
=======================================================================================================================================================================
  
Install       2 Package(s)
  
  
Total download size: 161 k
  
Installed size: 317 k
  
Is this ok [y/N]: y
  
Downloading Packages:
  
(1/2): tftp-server-0.49-7.el6.x86_64.rpm                                                                                                         |  39 kB     00:00      
  
(2/2):  xinetd-2.3.14-39.el6_4.x86_64.rpm                                                                                                         | 121 kB     00:00      
  
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
  
Total                                                                                                                                   41  kB/s | 161 kB     00:03     
  
Running rpm_check_debug
  
Running Transaction Test
  
Transaction Test Succeeded
  
Running Transaction
  
   Installing : 2:xinetd-2.3.14-39.el6_4.x86_64                                                                                                                      1/2
  
   Installing : tftp-server-0.49-7.el6.x86_64                                                                                                                       2/2  
  
   Verifying  :  tftp-server-0.49-7.el6.x86_64
2015-03-07 19:17 举报
已邀请:
0

wuhen

赞同来自:

学习了。这个可以用在真实环境中吗
0

sptty

赞同来自:

wuhen 发表于 2015-3-7 20:02
学习了。这个可以用在真实环境中吗

就是真实环境中使用。
0

wuhen

赞同来自:

好的,你现在是运维
0

lyhabc

赞同来自:

先收藏了
0

yzkwork

赞同来自:

Mark,收藏收藏。。。
0

sptty

赞同来自:

大家多多实战。

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
  • 评分区间
  • 学分
  • -30 ~ 30
可选评分理由: