Self Host netboot.xyz
有了之前的经验,现在可以自行部署带有中国大陆镜像设置的 netboot.xyz iPXE bootstraper 了。
- Self Hosting | netboot.xyz
- DNSmasq iVentoy PXE
- MSYS2 的 rsync 上传到 Synology 报错
- Docker for Windows Path Bind
git clone https://github.com/enihsyou/netboot.xyz
cd netboot.xyz
docker build -t localbuild -f Dockerfile .
docker run --rm -it -v "$(pwd):/buildout" localbuild
rsync -avzh -CP ./buildout/ enihsyou.synology.me:/volume2/pve/tftproot/netboot.xyz/构建通过 Docker 完成,即便在 Windows 环境也能进行。主要是构建时间比较长,大陆环境失败率还不低…
我在 fork 中主要做了这几个变化
-
调整 tftp-root-path 添加
/ipxe/
在:load-custom-ipxe中会尝试一些路径寻找 menu.ipxe,而构建出来的结果会放在 ipxe 子目录下,导致失败并回退到 boot_domain 对应的官方位置下载。
不调整代码就得用mv buildout/ipxe/* buildout/指令把 ipxe 子目录的文件向上提到根目录。 -
调整下载镜像源
设置各个下载 URL 到 cernet.edu.cn 或者 gh-proxy.com 来加速中国大陆访问速度。
大部分源都设置有 base_dir,并且刚好和镜像站的别名相匹配,所以 mirror 连接只需要指明域名。
对于 debian / ubuntu 这种分 mirror 和 archive_mirror 的源,得调整 base_dir 才能避免选择错误的 URL。
还有些其他个性化相关的文本改变,无伤大雅。