如何在Ubuntu 14.04中配置PXE服务器

简介:

PXE(预启动执行环境Preboot Execution Environment) 服务器允许用户从网络中启动 Linux 发行版并且可以不需要 Linux ISO 镜像就能同时在数百台 PC 中安装。如果你客户端的计算机没有 CD/DVD 或USB 引导盘,或者如果你想在大型企业中同时安装多台计算机,那么 PXE 服务器可以帮你节省时间和金钱。

在这篇文章中,我们将告诉你如何在 Ubuntu 14.04 配置 PXE 服务器。

配置网络

开始前,你需要先设置 PXE 服务器使用静态 IP。在你的系统中要使用静态 IP 地址,需要编辑 “/etc/network/interfaces” 文件。

打开 “/etc/network/interfaces” 文件。

 
 
  1. sudo nano /etc/network/interfaces

作如下修改:

 
 
  1. # 回环网络接口
  2. auto lo
  3. iface lo inet loopback
  4. # 主网络接口
  5. auto eth0
  6. iface eth0 inet static
  7. address 192.168.1.20
  8. netmask 255.255.255.0
  9. gateway 192.168.1.1
  10. dns-nameservers 8.8.8.8

保存文件并退出。这将设置其 IP 地址为“192.168.1.20”。然后重新启动网络服务。

 
 
  1. sudo /etc/init.d/networking restart

安装 DHCP, TFTP 和 NFS

DHCP,TFTP 和 NFS 是 PXE 服务器的重要组成部分。首先,需要更新你的系统并安装所有需要的软件包。

为此,运行以下命令:

 
 
  1. sudo apt-get update
  2. sudo apt-get install isc-dhcp-Server inetutils-inetd tftpd-hpa syslinux nfs-kernel-Server

配置 DHCP 服务

DHCP 代表动态主机配置协议Dynamic Host Configuration Protocol,它主要用于动态分配网络配置参数,如用于接口和服务的 IP 地址。在 PXE 环境中,DHCP 服务器允许客户端请求并自动获得一个 IP 地址来访问网络。

1.编辑 “/etc/default/dhcp3-server” 文件。

 
 
  1. sudo nano /etc/default/dhcp3-server

作如下修改:

 
 
  1. INTERFACES="eth0"

保存 (Ctrl + o) 并退出 (Ctrl + x) 文件。

2.编辑 “/etc/dhcp3/dhcpd.conf” 文件:

 
 
  1. sudo nano /etc/dhcp/dhcpd.conf

作如下修改:

 
 
  1. default-lease-time 600;
  2. max-lease-time 7200;
  3. subnet 192.168.1.0 netmask 255.255.255.0 {
  4. range 192.168.1.21 192.168.1.240;
  5. option subnet-mask 255.255.255.0;
  6. option routers 192.168.1.20;
  7. option broadcast-address 192.168.1.255;
  8. filename "pxelinux.0";
  9. next-Server 192.168.1.20;
  10. }

保存文件并退出。

3.启动 DHCP 服务。

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

配置 TFTP 服务器

TFTP 是一种文件传输协议,类似于 FTP,但它不用进行用户认证也不能列出目录。TFTP 服务器总是监听网络上的 PXE 客户端的请求。当它检测到网络中有 PXE 客户端请求 PXE 服务时,它将提供包含引导菜单的网络数据包。

1、配置 TFTP 时,需要编辑 “/etc/inetd.conf” 文件。

 
 
  1. sudo nano /etc/inetd.conf

作如下修改:

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

保存文件并退出。

2.编辑 “/etc/default/tftpd-hpa” 文件。

 
 
  1. sudo nano /etc/default/tftpd-hpa

作如下修改:

 
 
  1. TFTP_USERNAME="tftp"
  2. TFTP_DIRECTORY="/var/lib/tftpboot"
  3. TFTP_ADDRESS="[:0.0.0.0:]:69"
  4. TFTP_OPTIONS="--secure"
  5. RUN_DAEMON="yes"
  6. OPTIONS="-l -s /var/lib/tftpboot"

保存文件并退出。

3.使用 xinetd 让 boot 服务在每次系统开机时自动启动,并启动tftpd服务。

 
 
  1. sudo update-inetd --enable BOOT
  2. sudo service tftpd-hpa start

4.检查状态。

 
 
  1. sudo netstat -lu

它将如下所示:

 
 
  1. Proto Recv-Q Send-Q Local Address Foreign Address State
  2. udp 0 0 *:tftp *:*

配置 PXE 启动文件

现在,你需要将 PXE 引导文件 “pxelinux.0” 放在 TFTP 根目录下。为 TFTP 创建目录结构,并从 “/usr/lib/syslinux/” 复制 syslinux 提供的所有引导程序文件到 “/var/lib/tftpboot/” 下,操作如下:

 
 
  1. sudo mkdir /var/lib/tftpboot
  2. sudo mkdir /var/lib/tftpboot/pxelinux.cfg
  3. sudo mkdir -p /var/lib/tftpboot/Ubuntu/14.04/amd64/
  4. sudo cp /usr/lib/syslinux/vesamenu.c32 /var/lib/tftpboot/
  5. sudo cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot/

设置 PXELINUX 配置文件

PXE 配置文件定义了 PXE 客户端启动时显示的菜单,它能引导并与 TFTP 服务器关联。默认情况下,当一个 PXE 客户端启动时,它会使用自己的 MAC 地址指定要读取的配置文件,所以我们需要创建一个包含可引导内核列表的默认文件。

编辑 PXE 服务器配置文件,使用有效的安装选项。

编辑 “/var/lib/tftpboot/pxelinux.cfg/default”:

 
 
  1. sudo nano /var/lib/tftpboot/pxelinux.cfg/default

作如下修改:

 
 
  1. DEFAULT vesamenu.c32
  2. TIMEOUT 100
  3. PROMPT 0
  4. MENU INCLUDE pxelinux.cfg/PXE.conf
  5. NOESCAPE 1
  6. LABEL Try Ubuntu 14.04 Desktop
  7. MENU LABEL Try Ubuntu 14.04 Desktop
  8. kernel Ubuntu/vmlinuz
  9. append boot=casper netboot=nfs nfsroot=192.168.1.20:/var/lib/tftpboot/Ubuntu/14.04/amd64
  10. initrd=Ubuntu/initrd.lz quiet splash
  11. ENDTEXT
  12. LABEL Install Ubuntu 14.04 Desktop
  13. MENU LABEL Install Ubuntu 14.04 Desktop
  14. kernel Ubuntu/vmlinuz
  15. append boot=casper automatic-ubiquity netboot=nfs nfsroot=192.168.1.20:/var/lib/tftpboot/Ubuntu/14.04/amd64
  16. initrd=Ubuntu/initrd.lz quiet splash
  17. ENDTEXT

保存文件并退出。

编辑 “/var/lib/tftpboot/pxelinux.cfg/pxe.conf” 文件。

 
 
  1. sudo nano /var/lib/tftpboot/pxelinux.cfg/pxe.conf

作如下修改:

 
 
  1. MENU TITLE PXE Server
  2. NOESCAPE 1
  3. ALLOWOPTIONS 1
  4. PROMPT 0
  5. MENU WIDTH 80
  6. MENU ROWS 14
  7. MENU TABMSGROW 24
  8. MENU MARGIN 10
  9. MENU COLOR border 30;44 #ffffffff #00000000 std

保存文件并退出。

为 PXE 服务器添加 Ubuntu 14.04 桌面启动镜像

对于这一步需要 Ubuntu 内核和 initrd 文件。要获得这些文件,你需要 Ubuntu 14.04 桌面 ISO 镜像。你可以通过以下命令下载 Ubuntu 14.04 ISO 镜像到 /mnt 目录:

 
 
  1. sudo cd /mnt
  2. sudo wget http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso

注意:下载用的 URL 可能会改变,因为 ISO 镜像会进行更新。如果上面的网址无法访问,看看这个网站,了解最新的下载链接。

挂载 ISO 文件,使用以下命令将所有文件复制到 TFTP文件夹中:

 
 
  1. sudo mount -o loop /mnt/ubuntu-14.04.3-desktop-amd64.iso /media/
  2. sudo cp -r /media/* /var/lib/tftpboot/Ubuntu/14.04/amd64/
  3. sudo cp -r /media/.disk /var/lib/tftpboot/Ubuntu/14.04/amd64/
  4. sudo cp /media/casper/initrd.lz /media/casper/vmlinuz /var/lib/tftpboot/Ubuntu/

将导出的 ISO 目录配置到 NFS 服务器上

现在,你需要通过 NFS 协议来设置“安装源镜像( Installation Source Mirrors)”。你还可以使用 HTTP 和 FTP 来安装源镜像。在这里,我已经使用 NFS 输出 ISO 内容。

要配置 NFS 服务器,你需要编辑 “/etc/exports” 文件。

 
 
  1. sudo nano /etc/exports

作如下修改:

 
 
  1. /var/lib/tftpboot/Ubuntu/14.04/amd64 *(ro,async,no_root_squash,no_subtree_check)

保存文件并退出。为使更改生效,输出并启动 NFS 服务。

 
 
  1. sudo exportfs -a
  2. sudo /etc/init.d/nfs-kernel-server start

现在,你的 PXE 服务器已经准备就绪。

配置网络引导 PXE 客户端

PXE 客户端可以是任何支持 PXE 网络引导的计算机系统。现在,你的客户端只需要在系统的 BIOS 中设置 “从网络引导(Boot From Network)” 选项就可以启动并安装 Ubuntu 14.04 桌面。

现在准备出发吧 - 用网络引导启动你的 PXE 客户端计算机,你现在应该看到一个子菜单,显示了我们创建的 Ubuntu 14.04 桌面的菜单项。

pxe

结论

配置使用 PXE 服务器从网络启动安装能提高效率和节省时间。你可以在本地网络中同时安装数百个客户端。所有你需要的只是一个 PXE 服务器和能启动 PXE 的客户端。试试吧!如果这个对你有用请让我们知道。






本文作者:佚名
来源:51CTO
目录
相关文章
|
21小时前
|
存储 Ubuntu 网络安全
|
1天前
|
弹性计算 大数据 云计算
阿里云最便宜的云服务器多少钱一年?2024年阿里云服务器配置报价参考
阿里云最便宜的云服务器多少钱一年?在云计算的浪潮中,阿里云作为行业佼佼者,经常推出各种优惠活动。近期,阿里云为新用户推出了两款极具竞争力的服务器产品:一款是2核2G3M的轻量应用服务器,秒杀价年付仅需61元;另一款则是同配置的云服务器ECS,年费仅需99元。那么,面对这两款服务器,我们该如何选择呢?
|
1天前
|
存储 弹性计算 安全
云服务器能用来做什么?云服务器用途解读及最新阿里云服务器配置价格表分享
随着互联网的深入发展,云服务器已经成为许多个人和企业不可或缺的一部分。那么,云服务器具体有哪些用途呢? 首先,云服务器是实现各类web服务的得力助手。无论是个人网站、中小型企业网站,还是大型门户网站、行业网站,乃至视频、电影网站等,都可以通过云服务器轻松搭建,助力您在网络世界占有一席之地。 其次,云服务器还可作为邮件服务器使用。凭借其高性能的数据处理能力,云服务器不仅能安全储存数据,还能快速处理数据,是企业搭建自己的企业邮箱系统的理想选择。
|
1天前
|
弹性计算 大数据 测试技术
阿里云2核2G配置云服务器价格多少钱?2024年阿里云2核2G配置云服务器价格性能参考
在当下云计算的时代,阿里云作为国内领先的云服务提供商,一直在为我们带来高性价比的云产品。近期,阿里云推出的2核2G3M轻量应用服务器更是引起了广泛关注,尤其是其诱人的价格——新用户专享价仅需61元一年!要知道,原价可是87元一年,现在降价幅度相当大。
|
1天前
|
弹性计算 小程序 大数据
阿里云4核8G配置云服务器价格多少钱?2024年阿里云4核8G配置云服务器配置报价参考
在数字化浪潮中,云服务器成为了企业与个人的首选。其中,阿里云以其稳定的服务和卓越的性能赢得了广大用户的信赖。那么,对于许多关注性能与价格的用户来说,[阿里云4核8G通用算力型u1实例云服务器ECS]的价格是多少呢? 在本次阿里云的特惠活动中,这款备受瞩目的云服务器配置展现出了极高的性价比。尤其是对于那些首次体验阿里云服务的用户来说,更是能够享受到专享的优惠价格——仅需955.58元一年!这样的价格,在同类产品中无疑是相当吸引人的。 通用算力型u1实例,作为阿里云的一款明星产品,不仅提供了均衡的计算、内存和网络资源,更能满足大多数场景下的应用需求。无论是搭建个人网站、进行小程序开发,还是支持
|
1天前
|
弹性计算 数据挖掘 大数据
阿里云4核8G云服务器怎么样?2024年阿里云4核8G云服务器测评:价格配置、CPU性能
在数字化时代,数据成为驱动业务发展的核心力量。因此,无论是个人站长还是企业用户,都对云服务器的性能和价格提出了更高要求。阿里云作为国内云服务市场的领军者,始终致力于为用户提供卓越性能和极具竞争力的价格。阿里云4核8G通用算力型u1实例云服务器ECS备受瞩目。这款服务器凭借强大的4核CPU和8GB内存,能够轻松应对搭建网站、应用服务器以及进行数据分析和计算等多重任务。而其年度价格仅为955.58元,换算下来每月仅需80元,这一价格无疑在同类产品中极具竞争力。对于那些寻求高性能服务器以支持业务发展的用户来说,阿里云这款4核8G服务器无疑是一个理想选择。它不仅提供了出色的性能,还通过优惠活动大大降低
|
1天前
|
弹性计算 大数据 测试技术
阿里云服务器多少钱一年?2024年阿里云优惠云服务器新版租用价格表出炉!
在当下云计算的浪潮中,阿里云作为国内领先的云服务提供商,一直备受关注。许多用户都想知道,租用阿里云服务器一年需要多少钱?今天,就为大家带来了一份详细的优惠云服务器新版租用价格表。对于轻量级应用,阿里云2核2G3M轻量应用服务器一年仅需62元,无疑是性价比之选。而如果是稍微复杂一些的应用场景,阿里云2核2G3M经济型e实例云服务器ECS一年价格为99元,也非常实惠。
|
1天前
|
弹性计算 Linux Windows
阿里云上自建Palworld/幻兽帕鲁服务器教程,新手小白搭建步骤
随着幻兽帕鲁/Palworld的风靡,越来越多的小伙伴渴望拥有属于自己的游戏服务器,以便随时随地与好友组队冒险。今天,就为大家带来一篇简单易懂的自建服务器教程,让你轻松从新手小白晋升为服务器搭建高手!
|
1天前
|
弹性计算 搜索推荐 定位技术
2024年阿里云上搭建《幻兽帕鲁》专用服务器,详细步骤
随着《幻兽帕鲁》这款游戏的持续火热,越来越多的玩家开始追求更加个性化的游戏体验,搭建自己的专属服务器成为了不少玩家的首选。但很多玩家可能会因为技术门槛而犹豫不决。现在,好消息来了!阿里云为《幻兽帕鲁》的玩家们推出了全程自动化的服务器搭建服务,即使你是零技术基础,也能轻松拥有自己的服务器。
|
1天前
|
弹性计算 大数据 测试技术
阿里云8核16G云服务器并发承载量多少?2024年阿里云8核16G云服务器测评
阿里云8核16G云服务器采用了高性能的处理器和大容量内存,具备强大的计算能力和内存带宽,可以满足多个应用程序的同时运行和访问需求。阿里云8核16G云服务器的并发承载量同样受到多种因素的影响,如服务器配置、网络环境、应用程序的架构和优化等。选择云服务器时,除了考虑服务器的性能表现,还需要考虑其他因素,如云服务提供商的服务质量、技术支持、价格等。因此,建议在购买前进行充分的调研和测试,选择最适合自己需求的云服务器。

相关产品

  • 云迁移中心