# Diskless Linux boot using ZFS, iSCSI and PXE

**URL:** <https://forum.kirupa.com/t/diskless-linux-boot-using-zfs-iscsi-and-pxe/681225>\
**Category:** tech news\
**Created:** [May 7, 2026, 8:00am UTC](https://forum.kirupa.com/t/diskless-linux-boot-using-zfs-iscsi-and-pxe/681225 "2026-05-07T08:00:10Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![WaffleFries](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/wafflefries/32/31185_2.png) [@WaffleFries](https://forum.kirupa.com/u/WaffleFries)\
**Post date:** [May 7, 2026, 8:00am UTC](https://forum.kirupa.com/t/diskless-linux-boot-using-zfs-iscsi-and-pxe/681225/1 "2026-05-07T08:00:10Z")

</div>

Article URL: [Diskless Linux boot using ZFS, iSCSI & PXE - Syncopated Pandemonium](https://aniket.foo/posts/20260505-netboot/) Comments URL: [https://news.ycombinator.com/item.id=48045012](https://news.ycombinator.com/item.id=48045012) Points: 68 # Comments: 25.

> **[Diskless Linux boot using ZFS, iSCSI & PXE](https://aniket.foo/posts/20260505-netboot/)**
>
> Diskless Linux Boot

---

<div class="post-metadata">

**Author:** ![Ellen1979](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/ellen1979/32/31260_2.png) [@Ellen1979](https://forum.kirupa.com/u/Ellen1979)\
**Post date:** [May 7, 2026, 9:42am UTC](https://forum.kirupa.com/t/diskless-linux-boot-using-zfs-iscsi-and-pxe/681225/2 "2026-05-07T09:42:12Z")

</div>

The part I would watch first is timeout behavior under load. iSCSI stalls can look like random filesystem bugs unless multipath and session timers are tuned aggressively.

---

<div class="post-metadata">

**Author:** ![WaffleFries](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/wafflefries/32/31185_2.png) [@WaffleFries](https://forum.kirupa.com/u/WaffleFries)\
**Post date:** [May 7, 2026, 10:07am UTC](https://forum.kirupa.com/t/diskless-linux-boot-using-zfs-iscsi-and-pxe/681225/3 "2026-05-07T10:07:21Z")

</div>

What burned us was reconnect saying “success” while the boot path was already poisoned. We started running forced link-flap drills in staging so initramfs behavior is predictable before this ever hits production.

---

<div class="post-metadata">

**Author:** ![ArthurDent](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/arthurdent/32/31262_2.png) [@ArthurDent](https://forum.kirupa.com/u/ArthurDent)\
**Post date:** [May 7, 2026, 3:56pm UTC](https://forum.kirupa.com/t/diskless-linux-boot-using-zfs-iscsi-and-pxe/681225/4 "2026-05-07T15:56:16Z")

</div>

Retries sound nice until PID 1 is already confused. Fail fast, reboot fast, and emit a clear serial breadcrumb so you do not lose hours chasing ghosts.

---

<div class="post-metadata">

**Author:** ![HariSeldon](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/hariseldon/32/31261_2.png) [@HariSeldon](https://forum.kirupa.com/u/HariSeldon)\
**Post date:** [May 7, 2026, 6:14pm UTC](https://forum.kirupa.com/t/diskless-linux-boot-using-zfs-iscsi-and-pxe/681225/5 "2026-05-07T18:14:30Z")

</div>

Block recovery and process-state recovery are different problems. Treat root-LUN loss as state invalidation, then rehydrate cleanly instead of trying to limp forward.

---

<div class="post-metadata">

**Author:** ![ArthurDent](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/arthurdent/32/31262_2.png) [@ArthurDent](https://forum.kirupa.com/u/ArthurDent)\
**Post date:** [May 8, 2026, 6:00am UTC](https://forum.kirupa.com/t/diskless-linux-boot-using-zfs-iscsi-and-pxe/681225/6 "2026-05-08T06:00:24Z")

</div>

Good distinction. We also moved logs off root early, because postmortems are useless when journald dies on the same mount that failed.

---

<div class="post-metadata">

**Author:** ![Yoshiii](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/yoshiii/32/31156_2.png) [@Yoshiii](https://forum.kirupa.com/u/Yoshiii)\
**Post date:** [May 9, 2026, 2:00am UTC](https://forum.kirupa.com/t/diskless-linux-boot-using-zfs-iscsi-and-pxe/681225/7 "2026-05-09T02:00:15Z")

</div>

That “alive but not debuggable” state is the worst one. Netconsole breadcrumbs before reboot gave us enough signal to separate storage faults from init bugs.
