linux下pxe启之后无IP,ubuntu linux pxe 无人值守安装

简介:最近单位存了两百多台服务器,分批出给客户,客户要求的是ubuntu server 12.04,64位系统,要求我们装好后发货,第一批是76台,想想这数量,一台一台安装,每一台的安装向导,分区,软件包,账号密码这些都得填写,这样下去,那得到什么时候了?

无人值守安装的过程

→机器启动,并从网卡引导→网卡获取ip地址,获取tftp 服务器地址,以及启动文件名称→从tftp服务器下载启动文件→读取相关配置→启动安装

于是乎,就用起pxe+kickstart 来安装吧,说到这两个东西,相信大家肯定熟悉,龙其是做为深资的装机专业户,哈哈,好了,进入正题

1 本次环境:

硬件:cisco UCS C220M3

软件:ubuntu server 12.04 64位

2 安装及配置,首先需要安装 apache tftpserver kickstart 配置工具

sudo apt-get install system-config-kickstart tftpd-hpa tftp-hpa apache2

启动 tftp和apache

sudo /etc/init.d/tftp-hpa start

sudo /etc/init.d/apache2 start

这里我们使用 ubuntu 12.04的镜像,直接挂到目录下,可以通过wget 下载镜像,或者使用xmanager、winscp 从本地上传到服务器,均可,看你更习惯用哪种方法,本次环境就,就放到系统 / 目录下

在网站目录建立一个文件夹,用于挂载镜像

sodu mkdir /var/www/html/ubuntu12.04

挂载镜像文件到目录,并设置开机自动挂载

sudo mount -t iso9660 -r -o ro,loop /ubuntu-12.04.5-server-amd64.iso /var/www/html/ubuntu12.04

sudo echo "/ubuntu-12.04.5-server-amd64.iso /var/www/html/ubuntu12.04 iso9660 ro,loop,defaults 0 0" >> /etc/fstab

创建ks目录

sudo mkdir /var/www/html/ks

复制启动文件到tftpboot目录

sudo cp -arf /var/www/html/ubuntu12.04/install/netboot/* /var/lib/tftpboot

添加 ks.cfg 文路径,在install标签下的append 添加ks=http://10.0.3.8/ks/ks.cfg

sudo nano /var/lib/tftpboot/ubuntu-installer/amd64/boot-screens/txt.cfg

default install

label install

menu label ^Install

menu default

kernel ubuntu-installer/amd64/linux

append ks=http://10.0.3.11/ks/ks.cfg vga=788 initrd=ubuntu-installer/amd64/initrd.gz --quiet  //本次环境服务器的IP为10.0.3.11

label cli

menu label ^Command-line install

kernel ubuntu-installer/amd64/linux

append tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false vga=788 initrd=ubuntu-installer/amd64/initrd.gz --- quiet

ks配置文件:

这个配置文件,可以用kickstart工具来生成,启动这个工具的话,需要图形界面

启动工具命令

sudo system-config-kickstart

截图如下(左侧是各种类型,也就是我们安装系统的时候,那些选项啦),右侧是设置的内容,全部设置好后,点击左上角的,File,然后点击Save File,就保存到/var/www/html/ks目录下

7a0c713144e73d667580ff590da17a74.png

3 DHCP配置

我这里环境,使用的是 cisco(思科)交换机,做的dhcp,下面贴上Cisco(思科)交换机dhcp 的命令

进入全局配置模式

ip dhcp pool pxe

network 10.0.3.0 255.255.255.0

bootfile pxelinux.0

next-server 10.0.3.11

default-router 10.0.3.254

dns-server 10.0.2.2 10.0.2.1

lease 0 2

简述:

pxe为dhcp pool的名字,可以自行定义

network 要分配的地址的网段

bootfile 指定启动文件,注意后面是pxelinux.0,是数字0,不是字母o

default-routeer 和dns-server 为网关和dns,不是必须指定的参数,但如果不指定,安装过程中会跳出来,让你手动输入,这样就不能无人值守安装了

next-server 指定tftp服务器,嗯,也就是我们配置服务器地址,10.0.3.11

下而我们来启动一台机器,安装,这里我再启动一个虚拟机,启动时选择从网络启动

adead1b543b92386295344fd65b15a7c.png

好了,点击install,就可以开始安装了

附1:在某些环境,可能我们的交换机并不是网管交换机,做不了dhcp,这个时候怎么办呢,可以使用linux做为dhcp,这里附上dhcp安装和配置,还以是此服务器上安装

sudo apt-get install dhcp3-server

sudo mv /etc/dhcpd/dhcpd.conf /etc/dhcpd/dhcpd.conf.bak

sudo nano /etc/dhcpd/dhcpd.conf

subnet 10.0.3.0 netmask 255.255.255.0 {

range 10.0.3.20 10.0.3.100;  #地址分配范围

option routers 10.0.3.254;   #网关

option domain-name-servers 10.0.2.1,10.0.2.2;  #分配的dns服务器地址,多个地址用英文状态下的逗号 ( , )分隔

default-lease-time 7200;    #默认租期,单位是秒(s)

max-lease-time 14400;      #最大租期,单位是秒(s)

filename "pxelinux.0";        #pxe启动文件名称,注意文件最后是数字0,不是字母o

next-server 10.0.3.11;        # tftp 服务器地址

}

启动dhcp 服务

sudo /etc/init.d/isc-dhcp-server start

附2:我的ks文件

install

text

lang en_US

langsupport en_US

keyboard us

mouse

timezone --utc Asia/Shanghai

rootpw --iscrypted $1$RjFLPS.0$uBqLmqzdRShnlhGOBUqDJ1

user tdt --fullname "tdt" --iscrypted --password $1$8zjnLFyv$diBX.YRBk6RoKCBZO5GID.

reboot

url --url http://10.0.3.11/ubuntu-server-12.04

bootloader --location=mbr

zerombr yes

clearpart --all --initlabel

part / --asprimary --fstype ext4 --size 28000

part /data --asprimary --fstype ext4 --size 256000

part swap --asprimary --size 1 --grow

auth --useshadow --enablemd5

network --bootproto=dhcp --device=eth0

firewall --disabled

skipx

%packages

@openssh-server

我的环境是,一块300G SAS盘

以上分区是 / 分区 28G,/data分区是256G,剩下还剩16G,就给了swap,这是客户要求的分区情况,一共三个分区,每个分区,都是主分区,请根据你的实际情况进行调整

本人的KS,会清空硬盘所有分区和数据,使用前,如果有重要文件,请先备份。

嗯,就是这样

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值