详解CentOS6.4下PXE+Kickstart无人值守安装操作系统
概述
本文将详细地介绍如何使用PXE+Kickstart方式在CentOS6.4下进行无人值守的操作系统安装过程。通过此方式,可以大大提高安装操作系统的效率和准确性。
准备工作
在开始操作系统安装之前,我们需要做一些准备工作。
软件准备
首先,在PXE服务器上安装httpd、dhcp和tftp-server三个软件包:
yum install httpd dhcp tftp-server -y
文件准备
其次,需要准备以下文件:
- CentOS-6.4-x86_64-bin-DVD1.iso
- initrd.img
- vmlinuz
- ks.cfg
其中,CentOS-6.4-x86_64-bin-DVD1.iso是安装镜像文件,initrd.img和vmlinuz是内核文件,ks.cfg是Kickstart文件。
配置文件准备
最后,需要配置以下文件:
- /etc/dhcp/dhcpd.conf
- /var/lib/tftpboot/pxelinux.cfg/default
其中,dhcpd.conf为PXE服务器的dhcp服务配置文件,default为PXE服务器的tftp服务配置文件。
操作步骤
接下来我们将详细介绍如何进行无人值守安装操作系统。操作步骤如下:
步骤一:准备Kickstart文件
首先,需要创建一个Kickstart文件ks.cfg。此文件包含安装操作系统所需的配置信息。示例如下:
#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use network installation
url --url="ftp://192.168.1.100/pub"
# Use text mode install
text
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=vda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US
# Network information
network --hostname=localhost.localdomain --noipv6 --bootproto=dhcp --device=eth0 --activate
# Root password
rootpw --iscrypted $1$i5mgIiVV$gVxp.5DHSE1VvWSyIYds.
# System services
services --enabled=sshd
# System timezone
timezone America/New_York --isUtc
# Disk partitioning information
part /boot --fstype=ext4 --size=250
part swap --size=6144
part / --fstype=ext4 --size=1 --grow
repo --name="CentOS" --baseurl=ftp://192.168.1.100/pub
%packages
@base
@development
@network-tools
%end
可以根据自己的需求,修改Kickstart文件中的配置信息。
步骤二:将安装镜像文件挂载到PXE服务器
将CentOS-6.4-x86_64-bin-DVD1.iso挂载到PXE服务器的/var/www/html目录下:
mkdir /mnt/cdrom
mount -o loop CentOS-6.4-x86_64-bin-DVD1.iso /mnt/cdrom
cp -r /mnt/cdrom/* /var/www/html/
步骤三:修改dhcp服务配置文件
编辑/etc/dhcp/dhcpd.conf文件,添加以下配置内容:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option subnet-mask 255.255.255.0;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8, 4.4.4.4;
class "pxeclients" {
match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
next-server 192.168.1.100;
filename "pxelinux.0";
}
}
其中,next-server指定TFTP服务器的IP地址,filename指定TFTP服务器提供的默认引导文件。
步骤四:修改tftp服务配置文件
编辑/var/lib/tftpboot/pxelinux.cfg/default,添加以下配置内容:
default menu.c32
prompt 0
timeout 60
label install
menu label ^Install CentOS 6.4
kernel vmlinuz
append initrd=initrd.img ks=ftp://192.168.1.100/pub/ks.cfg
其中,menu.c32是一个菜单界面,vmlinuz和initrd.img是引导文件,ks=ftp://192.168.1.100/pub/ks.cfg指定Kickstart文件的位置。
步骤五:启动PXE服务器
启动PXE服务器,并将待安装机器的启动顺序设置为PXE启动。
步骤六:进行无人值守安装
重启待安装机器,等待PXE服务器引导该机器。当出现菜单界面时,选择“Install CentOS 6.4”,按下Enter键,开始自动安装操作系统。
示例说明
示例一:修改默认语言
如果想要将默认语言修改为中文,可以在kickstart文件中添加以下内容:
lang zh_CN.UTF-8
keyboard --xlayouts='us' --switch=cn
示例二:添加用户
如果想要在安装时添加一个新用户,可以在kickstart文件中添加以下内容:
user --name=yourusername --password=yourpassword
结语
本文介绍了PXE+Kickstart无人值守安装操作系统的详细攻略,通过此方式可以大大提高操作系统的安装效率和准确性,希望对大家有所帮助。