万字详文干货:从无盘启动volumio看Linux启动原理( 六 )


我禁用了网络服务的关机关闭 , 把 K06networking 从 rc0.d 目录中去掉就好了 。
Airplay 服务无法找到Volumio 自带 shairport-sync 服务 , 手机可以通过 airplay 链接 volumio 系统播放音乐 , 但是在我折腾完以后发现怎么也搜不到 。 经过排查 shairport-sync 使用 mDns 发布组播告诉局域网内的所有设备自己的地址 , 使用的是 avahi-daemon 程序 。 排查日志发现它启动时没有识别到网卡 。 我猜原因应该是我们的网卡是在内核引导阶段自己拉起的 , 并不是进入系统后由 networking 服务拉起的 , 所以 avahi-daemon 无法查找到它对应的 ip 。
我没有找到很好的解决方案 , 还好老爷机还有一块无线网卡 , 最后使用了无线网卡绑定 shairport-sync 服务 。
7.2 最终效果
万字详文干货:从无盘启动volumio看Linux启动原理文章插图
7.3 总结总结:为了省掉一块 U 盘 , 我开始折腾 iscsi 无盘启动没想到这一折腾就是好久 , 前后研究了好多资料好好的学习了一下 linux 的启动原理 。
实际过程并没有文中展现的那么顺利 , 很多研究的弯路没有在文中一一展现出来 。 在不同的节点也有很多方案可以选择 , 比如:iPxe 本可以直接 http 下载 vmlinuz 和 initrd 引导 , 这样就可以省去 MBR 和 syslinux 引导 。 但是后来想想都研究了还是整理给大家 。 再比如 initrd 中 iscsi 客户端的启动和初始化有很多种方式 , 一开始我都手动初始化网卡 , 设置 dhcp 和 ip 路由 。 最后还是觉得太麻烦发现 ibft 的方案最简单 , 果断选择了它 。
水平有限如果发现那里总结的不对欢迎指正 。
你都看到这了点个赞再走吧~ 对了前几天 99 公益日同事 10 块钱买了块 U 盘好像挺香的~
【万字详文干货:从无盘启动volumio看Linux启动原理】参考文献

  1. 计算机是如何启动的?
  2. UEFI 引导与 BIOS 引导在原理上有什么区别?
  3. PXE 批量部署安装 Linux 系统
  4. MBR 与 GPT
  5. iPXE
  6. MBR vs. GPT Guide: What's The Difference and Which One Is Better
  7. Syslinux
  8. GRUB
  9. Using the initial RAM disk (initrd)
  10. Linux initrd 学习笔记
  11. iSCSI/Boot