pxe网络安装linux操作系统

pxe(Pre-boot Execution Environment)网络安装操作系统,适用于无光驱或者集中安装的主机环境中。

Pxe原理

PXEIntel设计,可使计算机通过网络启动的协议。协议分为clientserver端,PXE client在网卡ROM中,当计算机启动时,BIOSPXE client调入内存执行,并显示出命令菜单,经用户选择后,PXE client将放置在远端的操作系统通过网络下载到本地运行

安装步骤

1.客户端从本机PXE网卡启动,向网络中DHCP服务器索取IP地址

2.DHCP服务器返回给客户端IP地址以及bootstrap文件放置的位置(通常放置在网络中TFTP服务器中)

3.客户端向网络中TFTP服务器索取bootstrap文件

4.客户端取得bootstrap文件后之执行该文件

5.根据bootstrap执行结果,通过TFTP服务器加载内核和文件系统

6.进入安装画面, 此时可以通过选择FTPHTTPNFS方式之一进行安装

实现PXE网络安装需要4个因素

1.客户机的网卡必须为PXE网卡

2.网络中必须要有DHCPTFTP服务器,该两个服务器可以是同一台物理主机

3.所安装的操作系统必须支持网络安装,即必须提供自己的bootstrap

4.必须要有FTPHTTPNFS至少一个服务器,也可与DHCPTFTP服务器同为一台物理主机

配置过程

PXE网卡:现在市面的网卡都支持PXE

为了简便,将dhcptftp都配置在一台服务器中

配置DHCP服务器

# cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcpd.conf

ddns-update-style interim;
ignore client-updates;
subnet 192.168.137.100 netmask 255.255.255.0 {               #设置IP范围
        option routers                  192.168.137.128;                       #设置客户端默认网关
        option subnet-mask        255.255.255.0;                                                   子网掩码

        option time-offset              -18000; # Eastern Standard Time
        range dynamic-bootp 192.168.137.128 192.168.137.254;         #设置动态IP地址的范围
        default-lease-time 21600;                                                    #设置默认租约时间
        max-lease-time 43200;                                                          #设置最大租约时间                                                    

        filename “pxelinux.0”;           #filename指明bootstrap所在的位置,指向tFTP服务器的某个目录增加 tftp-server 需要推送给客户端的启动文件:
        } 

安装tftp

tftp-0.49-2.i386.rpm为客户端程序;tftp-server-0.49-2.i386.rpm为服务器端程序;

vi /etc/xinetd.d/tftpdisable改为no即可,其他地方无需修改。

service tftp

{       socket_type       = dgram

        protocol              = udp

        wait                     = yes

        user                     = root

        server                  = /usr/sbin/in.tftpd                

        server_args        = -s /tftpboot                            #/tftpboot作为root

        disable                 = no                                                #设置启动时加载该服务

        per_source         = 11

        cps                       = 100 2

        flags                     = IPv4             }

 

Bootstrap

对于支持网络安装的OSBootstrap可从安装源文件找到,RedHatbootstrap/usr/lib/syslinux/pxelinux.0

FreeBSDbootstrap/boot/pxeboot

[root@localhost ~]# cp /usr/lib/syslinux/pxelinux.0 /tftpboot/

[root@localhost ~]# cp /mnt/isolinux/* /tftpboot/          #拷贝光盘目录/isolinux下的文件到tftpboot

 

配置RedHat

/tftpboot创建目录pxelinux.cfg,放置syslinux配制文件。Sysconfig配制文件有现成的可用,/tftpboot/pxelinux.cfg

/isolinux/下有文件isolinux.cfg,拷贝到目录/tftpboot/pxelinux.cfg/下并改名为default

[root@localhost ~]# cp /tftpboot/isolinux.cfg /tftpboot/pxelinux.cfg/

[root@localhost ~]# mv /tftpboot/pxelinux.cfg/isolinux.cfg /tftpboot/pxelinux.cfg/default

文件Default无需修改

该文件告诉启动后使用哪个内核引

 

配置安装nfs

需要安装nfs-utils*portmap

编辑/etc/exports添加

/mnt/freebsd   *(rw)     #该网络共享路径和光盘挂载路径以及引导后弹出的RHEL directory路径需要一致

然后启动nfs服务

[root@localhost ~]# /etc/init.d/nfs start

[root@localhost ~]# /etc/init.d/portmap start

至此,准备阶段的四个步骤DHCPTFTP、配置redhatNFS的过程完毕,以下开始安装过程

 

网络安装过程

[root@localhost ~]# mkdir /mnt/freebsd

[root@localhost ~]# mount -o loop /dev/cdrom /mnt/freebsd/                #使用 loop 模式用来将一个文件当成硬盘分割挂上系统

无需将光盘镜像文件拷贝大系统目录中,减少系统磁盘使用空间

客户端安装

修改客户端bios为网络启动,启动时获取IP地址,然后选择安装模式……和本地安装一样,在不叙述。

你可能感兴趣的:(安装,网络,Intel)