关闭

linux下PXE和KickStart实现Linux下的无人值守安装

标签: PXEKickStart无人值守安装
19540人阅读 评论(2) 收藏 举报

KickStart无人值守安装的原理:

1. DHCP服务器给需要安装的机器分发IP, 并指定ftp服务器地址和pxelinux.0

next-server 192.168.2.18;
filename "pxelinux.0";

2. 客户端连接到服务器,读取启动文件 /tftpboot/pxelinux.cfg/default

3. 根据default里面指定的ks.cfg文件的位置,打开KickStart配置文件,

4. 根据ks.cfg的ftp服务器的配置, 读取/var/ftp/pub/文件, 引导安装程序

1. 查看服务状态, 启动服务

1.1 查看三种服务的状态,是否为启动状态
service vsftpd status
service xinetd status
service dhcpd status
1.2 如果没有默认启动,可以设置为默认启动.
service vsftpd status
service xinetd status
service dhcpd status
1.3 dhcp服务配置
rpm -ql dhcp | more
vim /etc/dhcp/dhcpd.conf

[root@centos6-64 pub]# cat /etc/dhcp/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
subnet 192.168.2.0 netmask 255.255.255.0 {
        option routers                  192.168.2.1;
        option subnet-mask              255.255.255.0;
        option domain-name-servers      192.168.2.1;
        option time-offset              -18000; # Eastern Standard Time
        range dynamic-bootp 192.168.2.60 192.168.2.100;
        default-lease-time 21600;
        max-lease-time 43200;
        next-server 192.168.2.18;
        filename "pxelinux.0";
}
1.4 tftp服务配置

yum intall -y tftp*
tftp服务是xinetd的子服务.

[root@centos6-64 ftp]# cat /etc/xinetd.d/tftp 

# default: off
# description: The tftp server serves files using the trivial file transfer \
#	protocol.  The tftp protocol is often used to boot diskless \
#	workstations, download configuration files to network-aware printers, \
#	and to start the installation process for some operating systems.
service tftp
{
	socket_type		= dgram
	protocol		= udp
	wait			= yes
	user			= root
	server			= /usr/sbin/in.tftpd
	server_args		= -s /tftpboot
	disable			= no
	per_source		= 11
	cps			= 100 2
	flags			= IPv4
}

2. 创建pxe启动所需要的文件和目录

mkdir /tftpboot
mkdir /tftpboot/pxelinux.cfg
cp /usr/share/syslinux/pxelinux.0 /tftpboot/
挂载安装光盘的镜像,并拷贝以下文件:
cp /mnt/iso/isolinux/isolinux.cfg      /tftpboot/pxelinux.cfg/default
cp /mnt/iso/images/pxeboot/initrd.img  /tftpboot/
cp /mnt/iso/images/pxeboot/vmlinuz     /tftpboot/

3. 修改/tftpboot/pxelinux.cfg/default文件

vim /tftpboot/pxelinux.cfg/default
[root@centos6-64 pxelinux.cfg]# cat default 
default linux
prompt 1
timeout 60
display boot.msg
label linux
  kernel vmlinuz
  append initrd=initrd.img text ks=ftp://192.168.2.18/ks.cfg
ks.cfg 是使用kickstart程序生成的文件.后面我们会使用KickStart生成它.

4. 使用kickstart程序生成ks.cfg安装配置文件

安装kickstart:
yum list *kic*
yum install system-config-kickstart.noarch
运行system-config-kickstart,进行图形化参数配置界面:

4.1.基本配置:

4.2 安装方法

4.3.创建新的分区:


4.4.网络配置:


4.5.剩下的项目是关于防火墙,selinux的,看个人需求选择.

最后保存配置文件:


5. 修改生成的ks.cfg文件

5.1 将%packages后面的全拷贝到ks.cfg中的%packages后面去
cat /root/anaconda-ks.cfg #系统的安装信息
%packages
@base
@chinese-support
@core
@debugging
@basic-desktop
@desktop-debugging
@desktop-platform
@directory-client
@fonts
@general-desktop
@graphical-admin-tools
@input-methods
@internet-applications
@internet-browser
@java-platform
@legacy-x
@network-file-system-client
@office-suite
@print-client
@remote-desktop-clients
@server-platform
@server-policy
@x11
mtools
pax
oddjob
wodim
sgpio
genisoimage
device-mapper-persistent-data
abrt-gui
samba-winbind
certmonger
pam_krb5
krb5-workstation
gnome-pilot
libXmu
5.2 添加key --skip //跳过输入序列号环节
<注意是两个"-">
[root@rhce ~]# cat ks.cfg
[root@centos6-64 tftpboot]# cat /var/ftp/ks.cfg 
[root@centos6-64 ftp]# cat ks.cfg 
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead of upgrade
install
# Use network installation
url --url=ftp://192.168.2.18/pub
# Root password
rootpw --iscrypted $1$YfhInJ/9$hqyxxL34AduJm0Zzfcl/F1
# System authorization information
auth  --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


key --skip


# System timezone
timezone  Asia/Shanghai
# Network information
network  --bootproto=dhcp --device=eth0 --onboot=on
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel 
# Disk partitioning information
part /boot --fstype="ext4" --size=200
part swap --fstype="swap" --size=4096
part / --fstype="ext4" --grow --size=1


%packages
@base
@chinese-support
@core
@debugging
@basic-desktop
@desktop-debugging
@desktop-platform
@directory-client
@fonts
@general-desktop
@graphical-admin-tools
@input-methods
@internet-applications
@internet-browser
@java-platform
@legacy-x
@network-file-system-client
@office-suite
@print-client
@remote-desktop-clients
@server-platform
@server-policy
@x11
mtools
pax
oddjob
wodim
sgpio
genisoimage
device-mapper-persistent-data
abrt-gui
samba-winbind
certmonger
pam_krb5
krb5-workstation
gnome-pilot
libXmu


%end
5.3 将配置文件拷贝到ftp目录下
cp ks.cfg /var/ftp/

6. 将系统相关文件拷贝到配置ks.cfg时,指定的ftp目录下

挂载系统镜文件到/vat/ftp/pub/下
[root@centos6-64 ~]# ls -l /var/ftp/
total 8
-rw-r--r-- 1 root root 1419 Nov 20 17:58 ks.cfg
dr-xr-xr-x 7 root root 4096 Mar  6  2013 pub

[root@centos6-64 ~]# ls -l /var/ftp/pub/
total 676
-r--r--r-- 2 root root     14 Mar  6  2013 CentOS_BuildTag
dr-xr-xr-x 3 root root   2048 Mar  5  2013 EFI
-r--r--r-- 2 root root    212 Mar  3  2013 EULA
-r--r--r-- 2 root root  18009 Mar  3  2013 GPL
dr-xr-xr-x 3 root root   2048 Mar  5  2013 images
dr-xr-xr-x 2 root root   2048 Mar  5  2013 isolinux
dr-xr-xr-x 2 root root 649216 Mar  6  2013 Packages
-r--r--r-- 2 root root   1354 Mar  3  2013 RELEASE-NOTES-en-US.html
dr-xr-xr-x 2 root root   4096 Mar  6  2013 repodata
-r--r--r-- 2 root root   1706 Mar  3  2013 RPM-GPG-KEY-CentOS-6
-r--r--r-- 2 root root   1730 Mar  3  2013 RPM-GPG-KEY-CentOS-Debug-6
-r--r--r-- 2 root root   1730 Mar  3  2013 RPM-GPG-KEY-CentOS-Security-6
-r--r--r-- 2 root root   1734 Mar  3  2013 RPM-GPG-KEY-CentOS-Testing-6
-r--r--r-- 1 root root   3380 Mar  6  2013 TRANS.TBL

到此配置结束, 启动需要安装系统的机器. 修改BIOS以网卡方式启动. 

如果DHCP配置有问题,或PXE找不到安装文件的问题,
请查看/var/log/message 或仔细核对目录是否一致.

#注意如果KickStarts配置在虚拟机中,
虚拟机的网卡要设置为桥接(Bridged)模式.

3
0
查看评论

Linux下搭建PXE服务器安装Linux系统

PXE服务器安装与配置 原理: PXE是在没有软驱、硬盘、CD-ROM的情况下引导计算机的一种方式,也就是BIOS将使用PXE协议从网络引导。 DHCP服务器:用来动态分配IP地址(同时分配子网掩码、网关、TFTP服务器地址、启动文件名、DNS服务器、时间服务器等等)。  TFTP服务器:...
  • scottly1
  • scottly1
  • 2014-05-16 22:08
  • 7381

PXE网络安装Linux操作系统原理与详细过程

在工作中经常会遇到这样的情况:想要安装Linux但是计算机不带光驱或软驱,或者是笔记本配置的非标准的软驱和光驱,如1394接口,USB接口等,在Linux安装时所引导的Linux内核一般都不会带这些接口的驱动,所以也无法通过本地安装Linux,此外,在一些场合,如机房,IT实验室,工厂生产线,有大量...
  • yincg
  • yincg
  • 2017-04-24 13:21
  • 874

VMware PXE Linux 网络启动搭建

资源需求:1.VMware Workstation: 2.tinycore_3.4.iso: http://distro.ibiblio.org/pub/linux/distributions/tinycorelinux/3.x/archive/3.4/ 3.tftpd32: http://...
  • qq183947027
  • qq183947027
  • 2015-11-16 13:53
  • 1085

无人值守安装 linux 系统

项目内容:利用网络安装技术,结合 Kickstart 程序脚本,实现无人值守安装 Linux 操作系统 项目目的:通过此技术,批量的完成成百上千台服务器系统的无人看管安装,节省大量时间。 1、首先配置好 PXE+DHCP+VSFTP 的环境,我们先使用图形化的方式生成一个kickstar...
  • u010718976
  • u010718976
  • 2014-11-16 10:06
  • 1292

无人值守Linux安装镜像制作

好久没回到CSDN写技术博客了,去年后半段一直忙于实习找工作。本篇博客主要介绍如何制作无人值守Linux安装镜像。 何为无人值守?相信装过系统的小伙伴们肯定有这么个痛楚:每次安装一个系统少则30分钟,多则几个小时,而且这漫长的时间中你就很蠢的坐在屏幕前面为的就是帮助系统选择语言,选择时区等等,而无人...
  • qq_31989521
  • qq_31989521
  • 2017-02-28 16:24
  • 1221

CentOS7下的PXE无人值守系统安装

为了满足同时安装上百台linux,而且不需要人工干预。这就需要PXE来通过网线自动安装linux 1.搭建yum源来下载必要的工具,yum源
  • Ghost_leader
  • Ghost_leader
  • 2016-10-31 20:03
  • 3962

centos6.5之ISO镜像精简制作及ks安装

一、ISO目录文件介绍: 1、ISO目录列表: [root@zhuantang centos6]# ll total 552 -r--r--r--. 1 root root     14 Nov 29 19:52 CentOS_BuildTag...
  • napolunyishi
  • napolunyishi
  • 2015-05-15 15:27
  • 3211

Linux-centos-kickstart-无人值守自动安装-ISO镜像制作

通过传统的方式安装和部署计算机时,都会要求通过交互的方式,回答各类问题,以完成安装和部署任务,过程繁琐,且无法实现自动化。因此,许多系统管理员都希望能够通过一种网络化的无人值守的自动安装方式将操作系统部署到目标计算机中。本次实验中所使用和安装的操作系统为CentOS 6。
  • WuXiang_IT
  • WuXiang_IT
  • 2017-07-08 22:13
  • 622

Pxe无人值守安装linux(对default文件有较详细的解释)

网上有很多的关于PXE无人值守安装linux系统,对此我也写过一些东西,对其中的流程·原理有较详细的介绍,这篇我是网上看到的一位好心网友给分享的一篇,写的也很不错,在这我也分享给各大网友,相互学习,相互勉励!  一、DHCP服务的配置 首先安装软件:yum -y instal...
  • huashnag
  • huashnag
  • 2013-05-02 12:56
  • 3912

PXE启动原理以及与普通Linux启动的对比

关于PXE部署的详细配置的文章已经有不少了,这篇文章主要讲一下PXE启动的原理以及PXE启动和普通Linux启动的对比。
  • nirendao
  • nirendao
  • 2017-07-24 11:28
  • 835
    个人资料
    • 访问:716296次
    • 积分:8982
    • 等级:
    • 排名:第2504名
    • 原创:182篇
    • 转载:125篇
    • 译文:1篇
    • 评论:109条
    博客专栏
    初识Qt

    文章:43篇

    阅读:147867
    文章分类
    最新评论