1

Is there a way to boot FreeBSD over TFTP?

All the instructions I've seen require you to transition to NFS after PXEBOOT has loaded.

Hawken
  • 295
  • 1
  • 2
  • 12

1 Answers1

2

No, you can only grab a kernel image and initial ramdisk over TFTP.

Once the kernel has loaded it needs somewhere to load the root filesystem from. The FreeBSD kernel only knows how to use UFS, ZFS or NFS as its root filesystem.

You may be able to create a ramdisk loaded over TFTP from something like mfsBSD to have a UFS image in memory.

James O'Gorman
  • 5,329
  • 2
  • 24
  • 28
  • so how does OpenBSD do this? – Hawken Apr 21 '12 at 23:44
  • As far as I'm aware, OpenBSD can only do it using the `bsd.rd` kernel image, which contains a ramdisk. This is the same as using mfsBSD. – James O'Gorman Apr 22 '12 at 09:26
  • So FreeBSD has no built-in ram-disk kernel, you have to use an unofficial build? I thought that running off of Ram was the whole point of netbooting. If you have more than one BSD machine netbooting does each need its own separate NFS drive? – Hawken Apr 22 '12 at 13:12
  • OpenBSD just happens to provide a ramdisk by default. FreeBSD promotes building the system from source as part of an upgrade, so there is no issue with you building your own stripped-down system for a ramdisk image. Netboots don't necessarily run off ramdisks; historically it would've been for an NFS root. Multiple machines can use the same NFS root. – James O'Gorman Apr 22 '12 at 14:41
  • how do they not corrupt each other's Filesystem if they do? – Hawken Apr 22 '12 at 14:46
  • The root filesystem will be mounted `ro`. Only filesystems such as `/home` and `/usr/local` will be writable, the latter usually being on a local disk. – James O'Gorman Apr 22 '12 at 18:08