PXE自动安装linux系统
阅读原文时间:2023年07月08日阅读:3

一.PXE自动安装Linux系统的大致流程

1.环境准备

2.安装所需的必要软件包并开启对应的服务

3.准备安装源

4.准备自动应答文件,并放到可以被访问到的地方

5.配置DHCP服务并启动

6.将必要的文件复制到相关目录

7.修改启动菜单,以及一些其他的配置文件

8.启动测试.

二.安装过程

1.准备VM虚拟机和一个镜像文件centos6.

2. .(1).安装并配置HTTP

# yum install httpd –y

# rpm -qa|grep httpd

开启服务并设置开机启动

# /etc/init.d/httpd start

# chkconfig --level 35 httpd on

复制光盘全部内容至http 的根目录/var/www/html/ 下

# cp -r /mnt/cdrom/ /var/www/html/

HTTP部分设置完毕。

(2). 安装tftp-server

# yum install tftp-server –y

启用tftp 服务

# vi /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

}

将disable 设置为no

启动tftp服务

因为tftp服务是挂载在超级进程xinetd 下的,所以通过启动xinetd 来启动tftp服务。

# /etc/init.d/xinetd restart

(3). 配置支持PEX的启动程序

1.修改default文件

# vi /var/lib/tftpboot/pxelinux.cfg/default

default ks   

prompt 1     timeout 6  

display boot.msg

F1 boot.msg   

F2 options.msg

F3 general.msg

F4 param.msg

F5 rescue.msg

label linux

kernel vmlinuz #kernel。

append initrd=initrd.img #append

label text

kernel vmlinuz

append initrd=initrd.img text

label ks

kernel vmlinuz

append ks=http://192.168.111.130/ks.cfg initrd=initrd.img  #

label local

localboot 1

label memtest86

kernel memtest

append –

(4).配置DHCP

安装DHCP服务

# yum -y install dhcp

复制配置模板文件到DHCP的配置目录中

# cp -f /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

修改/etc/dhcp/dhcpd.conf 配置文件,内容如下:

ddns-update-style interim;

ignore client-updates;

filename "pxelinux.0";   ;

next-server 192.168.111.130; 

subnet 192.168.111.0 netmask 255.255.255.0 {

option routers         192.168.111.130;

option subnet-mask       255.255.255.0;

range dynamic-bootp 192.168.111.100 192.168.111.200;

default-lease-time 21600;

max-lease-time 43200;

}

启动DHCP服务

# /etc/init.d/dhcpd start

生成ks.cfg 文件

安装Kickstart

# yum install system-config-kickstart

(5).在桌面环境下配置Kickstart

启动X Windows 环境

# startx

配置Kickstart

# system-config-kickstart

1.设置语言,键盘,时区,Root密码,安装完毕后重启等。

2. 安装MBR 。

3. 设置分区。

4. 配置网络。

5. SELinux 和防火墙配置。

6.设计图形界面。

7. 生成ks.cfg 文件,保存在/var/www/html/ 文件夹下。

(6).打开/var/www/html/ks.cfg 文件进行查看并做修改。

platform=x86, AMD64, or Intel EM64T

#version=DEVEL

# Firewall configuration

firewall --disabled

# Install OS instead of upgrade

install

# Use network installation

url --url=http://192.168.111.130/cdrom/   #这个选项告诉安装程序:到服务器192.168.111.130 的HTTP根目录下的cdrom 文件夹下寻找安装介质

# Root password

rootpw --iscrypted $1$vsvtP./e$6PVMNfJd.shq2LgFJjYfA1

# System authorization information

auth --useshadow --enablemd5

# Use graphical install

graphical

firstboot --disable

# System keyboard

keyboard us

# System language

lang en_US

# SELinux configuration

selinux --disabled

# Installation logging level

logging --level=info

# Reboot after installation

reboot

# System timezone

timezone --isUtc Asia/Shanghai

# Network information

network --bootproto=dhcp --device=eth0 --onboot=on

# System bootloader configuration

key --skip

bootloader --append="rhgb quiet" --location=mbr --driveorder=sda

# Clear the Master Boot Record

zerombr

# Partition clearing information

clearpart --all --initlabel

# Disk partitioning information

part / --fstype="ext4" --size=8192

part swap --fstype="swap" --size=1024

part /home --fstype="ext4" --size=2048

%packages

@base

%end

三.测试

创建一台新的CentOS 6 64位虚拟机(注意:在光驱的设备状态里,启动时连接复选框没有勾选),然后开启此虚拟机,稍等片刻就可以看到从网络上开始引导了。安装完成后系统重启就可以登录了。

以上为PXE自动安装Linux系统成功。