批量安装ubuntu系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
批量安装ubuntu系统
最近有批量安装操作系统需求,之前在测试环境中使用过如Cobbler,FAI,Kickstart,比较之后,采用PXE+Kickstart+Dnsmasq+Ubuntu10.04(64位)这个方案
镜像类型
1.desktop镜像也称作livecd,可以试用ubuntu而不改变计算机中的任何内容并可以安装的镜像
2.Alternate镜像,采用文本安装界面的镜像,有更多高级安装选项
3.DVD镜像,带有附加语言包及更多软件包的镜像
4.mini镜像,用于网络安装的最小镜像,
5.server镜像,ubuntu号称唯一内置开源云的服务器操作系统
book,专门针对上网本进行优化的版本
7.Kubuntu(KDE桌面环境)Xubuntu(Xfce桌面环境)Lubuntu(LXDE桌面环境)Mythbuntu(媒体中心版)
复制代码
如上的镜像简单的说明了ubuntu存在的镜像类型,当然还有很多的衍生版本,在这里只是想说明下,如上的批量安装方案只支持Alternate镜像
中心服务器
在中心服务器(ubuntu10.04+64,Ip,eth0:192.168.5.27,eth1:10.12.7.109)上构建Serv er环境,eth0为构建单独的局域网环境新建的,eth1负责外网访问需求。
(1)基本概念
∙PXE
PXE是一种操作系统的引导方式。进行PXE安装的必要条件是在要安装的计算机中必须包含一个PXE支持的网卡(NIC),即网卡中必须要有PXE Client
PXE(Pre-boot Execution Environment)协议可以使计算机通过网络启动。此协议分为Client端和Server端,而PXE Client则在网卡的ROM中
当计算机引导时,BIOS把PXE Client调入内存中执行,然后由PXE Client将放置在远端的文件通过网络下载到本地运行。运行PXE协议需要设置DHCP服务器和TFTP服务器
DHCP服务器会给PXE Client(将要安装系统的主机)分配一个IP地址,由于是给PXE Client分配I P地址,所以在配置DHCP服务器时需要增加相应的PXE设置
此外,在PXE Client的ROM中,已经存在了TFTP Client,那么它就可以通过TFTP协议到TFTP S erver上下载所需的文件了
复制代码
∙Kickstart
KickStart是一种无人职守安装方式,通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为ks.cfg的文件;
在其他机器的安装过程中当出现要求填写参数的情况时,安装程序会首先去查找KickStart生成的文件,
当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,就需要简单的手工参与了。
复制代码
∙Tftp
TFTP是一个传输文件的简单协议,它基于UDP协议而实现。此协议设计的时候是进行小文件传输的
因此它不具备通常的FTP的许多功能,它只能从文件服务器上获得或写入文件,不能列出目录,不进行认证,它传输8位数据
复制代码
∙Dnsmasq
Dnsmasq提供DNS缓存和DHCP 服务功能。作为域名解析服务器(DNS),dnsmasq可以通过缓存 DNS 请求来提高对访问过的网址的连接速度
作为DHCP 服务器,dnsmasq可以为局域网电脑提供内网ip地址和路由。DNS和DHCP两个功能可以同时或分别单独实现
dnsmasq轻量且易配置,适用于个人用户或少于50台主机的网络
在这里主要使用它和hostname的相关性,在批量安装系统时,根据ip设置系统对应的hostname
复制代码
(2) 构建环境
apt-get install apache2
apt-get install system-config-kickstart
apt-get install tftpd-hpatftp-hpa
apt-get install dhcp3-server
apt-get install dnsmasq
复制代码
1.kickstart
在命令行中键入system-config-kickstart,根据出现的界面配置相关信息,最后保存为ks.cf g,如下是我在实验环境中使用的配置信息:
#Generated by Kickstart Configurator
#platform=AMD64 or Intel EM64T
#System language
langen_US
#Language modules to install
langsupportzh_CN --default=en_US
#System keyboard
keyboard us
#System mouse
mouse
#System timezone
timezone Asia/Shanghai
#Root password
rootpw --disabled
##Initial user, username: darkz password: 新创建用户及密码
user ubuntu --fullname"terrylc" --iscrypted --password $1$PX9BVIKt$3XsuJJtrDS lN4p8Q/TH3/1
#Reboot after installation
reboot
#Use text mode install
text
#Install OS instead of upgrade
install
#Use Web installation web安装文件路径,这里就是上面的iis的目录ubuntu32
url --url http://192.168.5.27/ubuntu
#System bootloader configuration
bootloader --location=mbr
#Clear the Master Boot Record
zerombr yes
#Partition clearing information
clearpart --all --initlabel
#Disk partitioning information
part /boot --fstype ext4 --size 256
part swap --size 4096
part / --fstype ext4 --size 1 --grow
#System authorization infomation
auth --useshadow --enablemd5
#Network information
network --bootproto=dhcp --nameserver=192.168.5.27 --device=eth0
#Firewall configuration
firewall --disabled
#Do not configure the X Window System
skipx
%packages
@openssh-server
复制代码
创建目录mkdir -p /var/www/ubuntu,将上述的ks.cfg文件保存在/var/www/ubuntu中,2. 镜像文件
从官网下载ubuntu的iso,
mkdir /ubuntu
mount -o loop ubuntu-10.04.3-server-amd64.iso /ubuntu
cp -r /ubuntu/* /var/www/ubuntu/
复制代码
3. Tftp