加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

LINUX实操:使用PXE方式引导Ubuntu系统

发布时间:2020-12-13 17:45:10 所属栏目:Linux 来源:网络整理
导读:《LINUX实操:使用PXE方式引导Ubuntu系统》要点: 本文介绍了LINUX实操:使用PXE方式引导Ubuntu系统,希望对您有用。如果有疑问,可以联系我们。 一、何为PXE Preboot Eexcution Environment,简称PXE,暂且翻译为预启动执行环境.用一句话来概括PXE的功能——

《LINUX实操:使用PXE方式引导Ubuntu系统》要点:
本文介绍了LINUX实操:使用PXE方式引导Ubuntu系统,希望对您有用。如果有疑问,可以联系我们。

一、何为PXE

Preboot Eexcution Environment,简称PXE,暂且翻译为预启动执行环境.用一句话来概括PXE的功能——它能通过网络为计算机(特别是“裸机”)安装操作系统.在PXE下,“裸机”的BIOS和网卡能通过网络来引导启动自身,而不是通过传统的磁盘引导方式.PXE的这种功能年夜年夜简化了服务器的部署和管理流程.

那么在PXE下,一台计算机如何引导启动?这其中涉及到DHCP、NBP、TFTP等多项技术.这些技术细节将在文档的后面部门讲述,这里以客户机(client端,即裸机)为主体,大致介绍PXE的工作流程.

PXE工作流程

  1. client端向本网络的DHCP服务器获取IP及NBP的存放路径
  2. client端向TFTP服务器哀求下载NBP
  3. client端执行NBP,并向TFTP服务器哀求下载系统镜像、配置文件等
  4. client端根据配置文件,执行引导过程

二、注意事项

1. 本文档中命令均以root身份执行!

2. 请不要直接复制本文档中的命令!


三、配置环境

1. 配置server端

使用virtualbox创建一台虚拟机,命名为pxe-server.它作为整个引导过程的服务端——同时充当DHCP服务端、TFTP服务端和HTTP服务端.

1.1 体系版本

Ubuntu-16.04.2-server-amd64

1.2 网卡设置装备摆设

安装好系统后,对网卡进行如下设置装备摆设.

1.2.1 网卡1

连接方式选择“仅主机(Host-Only)网络”,随意选择一个界面名称,我在这里选择的是192.168.202.0/24网段,稠浊模式选择“全部允许”.

1.2.2 网卡2

衔接方式选择“网络地址转换(NAT)”.

编纂/etc/network/interfaces文件:

重启两张网卡:

ifup enp0s3 enp0s8

2. 配置client端

使用virtualbox创立一台虚拟机,命名为pxe-client.它实际上是一台裸机,在整个引导过程中,在client端上起重要作用的是BIOS和网卡.

2.1 网卡配置

连接方式选择“仅主机(Host-Only)网络”,选择和server端相同的界面名称,稠浊模式选择“全部允许”.


四、配置DHCP服务

在引导过程中,client端的BIOS会使用DHCP,向server端的DHCP服务器发送哀求,为client端的网卡申请到到一个IP地址,并且定位到网络引导程序(Network Bootstrap Program,NBP)在server端的存放路径.关于NBP,地位等同于传统磁盘引导中的boot loader,NBP在真实环境中的文件名一般为pxelinux.0.

以下是server端上,配置DHCP服务的详细步调:

1. 安装DHCP服务包

apt install isc-dhcp-server

2. 配置DHCP服务的网卡

编纂/etc/default/isc-dhcp-server文件(修改最后一行):

...
INTERFACES="enp0s3"

3. 配置IP地址池

编纂/etc/dhcp/dhcpd.conf文件(先注释掉原有内容):

...
ddns-update-style interim;
ignore client-updates;
default-lease-time 600;
max-lease-time 7200;
allow booting;
allow bootp;
subnet 192.168.202.0 netmask 255.255.255.0 {
    range 192.168.202.200 192.168.202.250;
    option routers 192.168.202.131;
    option subnet-mask 255.255.255.0;
    # address of tftp server
    next-server 192.168.202.131;
    # name of NBP
    filename "pxelinux.0";
}

五、配置TFTP服务

TFTP是一个简单的文件传输协议.在引导过程中,client端获取到NBP的寄存路径后,使用TFTP从server端下载NBP,系统内核和文件系统也由TFTP服务器提供.本文档中,NBP将寄存在TFTP服务器的默认根目录/var/lib/tftpboot下.

以下是server端上,配置TFTP服务的详细步调:

1. 安装TFTP服务包

apt install inetutils-inetd tftpd-hpa pxelinux

2. 编纂/etc/inetd.conf文件

在最后一行添加:

tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot

3. 编纂/etc/default/tftpd-hpa文件

在最后添加:

RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot"

4. 重启TFTP服务

service tftp restart

六、配置HTTP服务

在server端,通过HTTP服务向client端提供系统安装过程中必要的包.当然也可以使用FTP、NFS等其他方式.

1. 安装HTTP服务包

apt install apache2

HTTP服务的根目次默认为/var/www/html.


七、组建PXE服务情况

1. 挂载镜像

在server端准备一份镜像,并把它挂载到合适的路径.

mkdir /media/cdrom
mount -o loop /root/ubuntu-16.04.2-server-amd64.iso /media/cdrom

注:我的镜像寄存在/root/目录下,挂载到/media/cdrom目录.

2. 拷贝镜像文件

将镜像文件、设置装备摆设文件拷贝到适当路径,如下:

cp -a /media/cdrom/install/netboot/* /var/lib/tftpboot/
cp -a /media/cdrom/* /var/www/html

3. 修改配置文件——default

编纂/var/lib/tftpboot/pxelinux.cfg/default文件,注释掉其中以default开头的一行.

编纂/var/lib/tftpboot/ubuntu-installer/amd64/boot-screens/txt.cfg文件(修改第6行):

...
append ks=http://192.168.202.131/ks.cfg vga=788 initrd=ubuntu-installer/amd64/initrd.gz --- quiet live-installer/net-image=http://192.168.202.131/install/filesystem.squashfs

4. 修改配置文件——ks.cfg

在/var/www/html/目录下创建并编纂ks.cfg文件,进行如下最小化配置:

install
text
lang en_US
langsupport en_US
keyboard us
mouse
timezone --utc Asia/Shanghai
rootpw --disabled
user xxx --fullname="xxx" --password xxx
reboot
url --url http://192.168.202.131
bootloader --location=mbr
zerombr yes
clearpart --all --initlabel
part /boot --fstype ext4 --size 200
part swap --size 1024
part / --fstype ext4 --size 1 --grow
auth --useshadow --enablemd5
network --bootproto=dhcp --device=enp0s3 --onboot=on --nameserver=192.168.202.131
firewall --disabled
skipx
%packages
@^minimal
@core

八、启动客户机

启动client端机械,按F12进入引导方式选择界面,再按l开始???络引导,之后就进入自动部署安装阶段,OK!

注:引导初期,会有一次开机硬件自检.这里必要手动跳过为网卡设置nameserver的步骤.

更多Ubuntu相关信息见Ubuntu 专题页面 /topicnews.aspx?tid=2

本文永远更新链接地址

《LINUX实操:使用PXE方式引导Ubuntu系统》是否对您有启发,欢迎查看更多与《LINUX实操:使用PXE方式引导Ubuntu系统》相关教程,学精学透。编程之家PHP学院为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读