通过CentOS实现无人值守方式批量安装部署Linux
摘 要:近年来,随着Linux操作系统的应用越来越广泛,许多高校开始建设基于Linux的实训室。然而,基于传统的操作系统安装方式效率较低。文中将阐述如何构建基于PXE与Kickstart的安装服务器,实现无人值守方式批量部署Linux服务器和工作站,提高管理员的工作效率,减少人力物力成本的支出。
关键词:无人值守;PXE;Kickstart;Linux
中图分类号:TM76
通过传统的方式安装和部署计算机时,都需要通过人工干预的方式完成安装。如果需要部署大量的类似功能的工作站或服务器,则需要耗费大量的时间。同时传统的安装方式,每台计算机都需要光驱设备及安装光盘等介质,会额外增加部署成本。因此,许多系统管理员都希望能够通过一种网络化的无人值守的自动安装方式将操作系统部署到目标计算机中。
1 实现平台的相关服务与工具
1.1 PXE
PXE(Pre-boot Execution Environment)是由Intel设计的协议,计算机可以通过PXE协议从网络引导启动。PXE协议在启动过程分为client和server两端,PXE协议在运行过程中主要解决两个问题:首先解决IP地址的问题,然后解决如何传输操作系统启动文件和安装文件的问题。对于第一个问题,可以通过配置DHCP Server解决,通常情况下DHCP服务器主要用于分配IP地址给客户端。但是在PXE环境下,DHCP服务器需要额外加载PXE的相关配置。针对第二个问题,在启动初期因为PXE client中有相应的TFTP客户端,可以通过TFTP协议到TFTP服务器中下载相关文件启动计算机。后期在安装过程中,则通过FTP或NFS协议提供大量的操作系统安装文件的下载。图1是基于PXE与Kickstart安装Linux操作系统的流程图,可以清楚的了解PXE协议的工作过程。
1.2 Kickstart
通过传统的方式安装和部署计算机时,都会要求通过交互的方式,回答各类问题,以完成安装和部署任务,过程繁琐,且无法实现自动化。于是,很多系统管理员都希望通过自动化的安装方法将操作系统安装到自己的个人的或者企业的计算机中。针对这些安装过程中需要进行交互式回答的问题,Red Hat公司创造了Kickstart的安装方法。通过这种方法,系统管理员可以创建一个文件。通过这个文件,可以解决所有在普通安装方式中,需要回答的问题。
Kickstart的配置文件可以保存在网络中的文件服务器系统中,也可以存放在个人计算机中,只要在安装过程中,安装程序能够读取该文件,都可以顺利将操作系统安装。这种安装方法可以支持使用同一个kickstart配置文件,在多台计算机中安装或部署Fedora与红帽企业版Linux。基于Red Hat的CentOS同样具备这种能力。所以Kickstart安装方式(无人值守)成为许多网络和系统管理员的理想选择。
在CentOS中,通过安装相应的Kickstart配置工具,可以生成定制的ks文件,熟悉相关语法的管理员也可以通过手工编写安装脚本的方式生成ks文件,用于部署相应的计算机。
1.3 CentOS操作系统
CentOS(Community ENTerprise Operating System)基于RHEL(Red Hat Enterprise Linux)源代码的二次编译版本。采用公开源代码的方式分发,致力于提供与上游厂商的二进制代码100%的兼容的发行版本,并且完全免费。通过CentOS同样可以构建企业级Linux系统环境,CentOS的用户主要是一些组织和个人,他们不需要额外的商业支持,能够独立的开展业务。因此高校的Linux实训室,多采用CentOS部署。现行最新的版本为CentOS-6.4,根据需要可以选择i386或x86_64两种架构的版本。
1.4 DHCP
动态主机配置协议(DHCP:Dynamic Host Configuration Protocol),主要用于给DHCP客户端自动分配IP地址,便于用户管理网络内部的计算机。针对PXE环境下,DHCP服务器除分配IP地址外,还需要额外设置“next-server”选项定义TFTP服务器的地址,设置“filename”选项定义启动文件的名称。并且启动“booting”与“bootp”的支持。
1.5 TFTP与FTP
简单文件传输协议(TFTP:Trivial File Transfer Protocol)主要用于为客户机与服务器之间进行简单文件传输的协议。在PXE的早期启动过程,主要通过TFTP协议传输“pxelinux.0”。文件传输协议(FTP:File Transfer Protocol)。FTP是INTERNET中传输文件的主要协议。适用于大量文件传输的情形。在后期的安装过程,主要通过FTP协议传输Linux操作系统的安装包。
2 实现过程
2.1 配置DHCP服务器
在CentOS操作系统中,安装DHCP软件后,导入默认配置文件模板。定义相应的内部子网,在/etc/dhcpd/dhcpd.conf文件的开头部分添加下面的配置选项。
allow booting;
allow bootp;
next-server 192.168.0.254;
filename "pxelinux.0";
2.2 配置TFTP与FTP
采用默认方式安装的CentOS操作系统,没有安装TFTP服务器软件,需要额外安装。从CentOS6.4的ISO光盘中导入“tftp-0.49-7.el6.i686.rpm”软件包安装即可。安装后,修改“/etc/xinetd.d/tftp”配置文件,将“disable”选项设置为“no”,执行“service xinetd restart”重启xinetd服务。在CentOS操作系统中,安装FTP相关软件后,可以不需要修改默认配置选项,启动FTP服务后,即可为安装服务器提供匿名文件下载服务。