一、搭建PXE远程安装服务器
1、准备系统安装源
在CentOS6.5的安装光盘中,已针对目录Packages建立好repodata数据,因此只要简单的将整个光盘中的内容通过某种方式进行发布就可以作为yum仓库了,我们这里使用FTP进行发布。例如:可以创建/var/ftp/pub/目录中,并且保证有足够的可用空间。
[root@localhost ~]# mount /dev/cdrom /mnt/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@localhost Packages]# rpm -ivh vsftpd-2.2.2-11.el6_4.1.x86_64.rpm
warning: vsftpd-2.2.2-11.el6_4.1.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:vsftpd ########################################### [100%]
# 我们在这里先安装ftp服务器因为这样就会自动创建/var/ftp/pub目录,这样就为大家简化了一步(大家在做实验的时候不一定一遍就可以做出来,为了不反复创建目录而浪费时间,这样做和先创建目录在安装ftp是一样的,大家可以根据自己的需求自行创建目录并设置权限。)
[root@localhost Packages]# cp -rp /mnt/* /var/ftp/pub/
# 将安装光盘中的所有内容复制倒/var/ftp/pub/这样就就可以在客户机上指定yum仓库通过FTP的方式下载软件包了。
# 不光可以使用FTP的方式还可以使用HTTP、本地文件的方式进行访问,更多访问方式请大家访问http://bella41981.blog.51cto.com/10603572/1828900
[root@localhost ~]# vim /etc/yum.repos.d/yum.repo
[base]
name=base
baseurl=ftp://192.168.25.3/pub/
enabled=1
gpgcheck=0
~ # 在/etc/yum.repos.d/下创建一个名为.repo的文件,键入以上内容。(baseurl=ftp://192.168.25.3/pub为ftp发布的光盘镜像地址)
2、安装并启用TFTP服务器
TFTP服务器是由tftp-server软件包提供,默认有xinetd超级服务进行管理,因此配置文件位于/etc/xinetd/tftp。配置时只要将该文件中的“disable = yes”改为“disable = no”即可,然后重启该服务。
[root@localhost ~]# yum -y install tftp-server
# 使用yum安装该tftp-server服务
#xinetd是新一代的网络守护进程服务程序,又叫超级Internet服务器,常用来管理多种轻量级 Internet服务。
[root@localhost ~]# vim /etc/xinetd.d/tftp
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable = no
per_source = 11
cps = 100 2
flags = IPv4
3、准备linux内核,初始化镜像
用于PXE网络安装的的LInux内核、初始化镜像文件可以从CentOS的光盘中获得,分别为vmlinu和initrd.img,位于文件夹images/pxeboot下。找到这两个文件并将其复制到ftp服务的根目录下。
[root@localhost mnt]# cd images/pxeboot/
[root@localhost pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot/
4、准备PXE引导程序、启动菜单文件
用于PXE网络安装的引导程序为pxelinux.0,由软件包syslinux提供,安装好软件包syslinux然后将文件pxelinux.0也复制到tftp服务的目录下。
[root@localhost ~]# yum -y install syslinux
[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@localhost ~]# cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
cp:是否覆盖"/var/lib/tftpboot/pxelinux.cfg/default"? y
# 在我们的光盘镜像中有一个名为isolinux.cfg的配置模板,按照上面的步骤将其复制到/var/lib/tftpboot/pxelinux.cfg/default下,并进行编辑。
[root@localhost ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
default linux ←指定默认入口名称
prompt 1 ←1表示等待用户控制,反之0则代表不等待用户控制
timeout 600
label linux
kernel vmlinuz
append initrd=initrd.img devfs=momount ramdisk_size=8192
label text
kernel vmlinuz
append text initrd=initrd.img devfs=momount ramdisk_size=8192
label rescue
kernel vmlinuz
append rescue initrd=initrd.img devfs=momount ramdisk_size=8192
#以上信息中要特别注意加粗的部分不要写错,两个加粗的linux要特别注意一定要写一样了。
# 上述配置记录中定义了三个引导入口,分别为图形安装(默认)、文本安装、救援安装。其中prompt用来设置的为是否等待用户选择;label用来定义并分隔启动项;Kernel和append用来定义引导参数。引导入口的个数及内容根据需要自行定义。
5、安装并启动DHCP服务
由于PXE客户机通常是尚未装系统的裸机,因此为了与服务器去的联系并正确下载相关引导文件,需要预先设置好DHCP服务来自动分配地址并告知引导文件的位置。
[root@localhost yum.repos.d]# yum -y install dhcp
[root@localhost yum.repos.d]# vim /etc/dhcp/dhcpd.conf
# 使用yum安装dhcp服务
[root@localhost yum.repos.d]# vim /etc/dhcp/dhcpd.conf
# DHCP Server Configuration file.
# see /usr/share/doc/dhcp*/dhcpd.conf.sample
# see ‘man 5 dhcpd.conf‘
# 我们进入yum的配置文件可以发现,这里向我们提示了在/usr/share/doc/dhcp*/dhcpd.conf.sample下有dhcp配置的模板,我们可以将其复制过来,进行简单的修改即可。
[root@localhost yum.repos.d]# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
# 将其复制到/etc/dhcp/dhcpd.conf
[root@localhost yum.repos.d]# vim /etc/dhcp/dhcpd.conf
# dhcpd.conf
# A slightly different configuration for an internal subnet.
subnet 192.168.25.0 netmask 255.255.255.0 {
range 192.168.25.50 192.168.25.100;
option domain-name-servers 192.168.25.3;
option domain-name "linux.com";
option routers 192.168.25.3;
option broadcast-address 192.168.25.255;
default-lease-time 600;
max-lease-time 7200;
next-server 192.168.25.3;
filename "pxelinux.0";
#进入到这个文件将其进行编辑,本人只做了简单的编辑,若要进行更加详细的编辑应查阅其他资料。
[root@localhost yum.repos.d]# service dhcpd start
# 启动dhcp服务
6、验证
打开一台新的主机将其和PXE服务器设置为同一物理网络内,并将bios的第一启动项设置为网络启动。
# 进入到这一步说明我们成功的找到了引导文件。
# 选择语言
# 选择键盘
# 选择引导方式为URL
# 配置TCP/IP的类型
# 设置输入PXE引导路径。
# 我们 成功引导了起来下面就可以根据自己的需求安装操作系统了。
二、实现Kickstart无人值守安装
上面我们介绍了通过PXE技术远程安装CentOS系统的方法,安装介质不再受限于光盘移动硬盘等设备,大大提高了系统安装的灵活性。然而,安装期间仍然需要手动选择语言、键盘类型、指定安装源等一系列交互操作,当需要批量安装时非常不方便。
下面我们给大家介绍如何实现无值守安装,通过使用Kickstart工具配置安装应答文件,自动完成安装过程中的各种设置,从而无须手动干预,提高网络装机效率。
1、准备安装应答文件
在操作系统中安装system-config-Kickstart工具之后需要进入图形化向导工具配置安装应答文件。如果用户对自动应答文件比较熟悉可以直接进行编辑操作系统安装后的自动创建的应答文件(/root/anaconds-ks.cfg),根据需要适当修改后使用。
[root@localhost yum.repos.d]# yum -y install system-config-kickstart
# 安装system-config-kickstart
1) 进入图形化界面使用kickstart
在CentOS6.5中通过桌面菜单“应用程序”→“系统工具”→“Kickstart” 即可打开“Kickstart”配置程序“窗口”。在Kickstart配置窗口之可以针对基本配置、安装方法、引导程序加载选项、分区信息、网络配置等各种安装设置进行指定。如图。
# 以上信息只显示了一部分的配置,其他的配置请根据自己的需要进行选择
[root@localhost ~]# cp ks.cfg /var/ftp/pub/
# 将刚刚生成好的文件从/root/复制到/var/ftp/pub目录下,这样就可以通过ftp进行发布
[root@localhost ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
将该文件下的内容更改为以上内容即可。
# 安装成功了!!!!
本文出自 “linux” 博客,请务必保留此出处http://bella41981.blog.51cto.com/10603572/1841160
原文地址:http://bella41981.blog.51cto.com/10603572/1841160