其实前面我们是在虚拟网络中的虚拟服务器上部署PXE Server,完整走了一遍PXE Server的初始化流程,这个和生产环境的初始化构建流程是一致的,所以不能省去。而对于我们使用VirtualBox而言, 它其实提供了更加便捷的方式, 因为VirtualBox 本身就提供虚拟网络的DHCP功能,完全有能力同时集成TFTP的功能。那这样我们就依赖VirtualBox天然提供的PXE Server,将极大的简化我们调试的过程。

VirtualBox安装后,其用户级别配置目录在Linux系统上是在 ~/.VirtualBox,根据官方资料,在该目录内创建 TFTP 目录, 目录中,需要将 pxelinux.0 重命名为 "VM Name".pxe 文件。我们要实验的话, 直接将 Ubuntu 的镜像 ubuntu-16.04.6-server-amd64.iso 挂载到 /mnt, 拷贝到 ~/.VirtualBox/TFTP 中即可。

mkdir -p ~/.VirtualBox/TFTP
sudo mount ubuntu-16.04.6-server-amd64.iso /mnt
cp -rf /mnt/install/netboot/* ~/.VirtualBox/TFTP
ln -s ~/.VirtualBox/TFTP/pxelinux.0 test.pxe

将你的名称为 “test”的虚拟机的网卡切换为 网络地址转换(NAT) 模式, 系统启动顺序限制为从网络启动,启动你的虚拟机, 你就可以看到正常启动到PXE环节了, 如果出现下面的画面,说明这种模式的PXE Server环境,你已经准备完成。

Ubuntu PXE Boot

社区有些文章的说法还是有问题的,说TFTP的放置目录 在Linux 上是 ~/.config/VirtualBox 目录下, 也有说是在 ~/VirtualBox VMs/test 目录下,碰到类似的事情,尽量还是按官方文档为准。减少误导和不必要的尝试。

可以尝试将上一篇文章的内存OS的功能配置到 ~/.VirtualBox/TFTP 目录,^~^!

【腾讯云】境外1核2G服务器低至2折,半价续费券限量免费领取!
https://cloud.tencent.com/act/cps/redirect?redirect=1068&cps_key=e4b50f6c64a4480367f8a8d16fd07c5a&from=console

标签: tftp, virtualbox, 原生PXE, pxelinux.0

添加新评论