Boot windows from network?
mike at dev-zero.net
mike at dev-zero.net
Wed Oct 28 16:21:11 MDT 2020
On Wed, Oct 28, 2020, at 1:36 AM, Dan Egli wrote:
> Hey folks, question. I'm preparing to build a small home network. If
> possible, I'd really rather all the computers boot from the server
> rather than a local drive. However, despite my searching, I can't seem
> to find a way to do that. My first thought was iSCSI, but from what
> I've read (and maybe I'm mistaken) that would require a separate iSCSI
> "drive" for each computer. Thanks, but no thanks. May as well go back
> to individual drives for each computer. So I thought maybe it would be
> possible to install onto a samba share and use iPXE or something
> similar to boot from there. But I can't find anything for that. I see
> plenty of documents showing how to INSTALL from a samba share, but
> nothing on how to BOOT INTO THE OS from a samba share.
> I know that on Windows Servers you can setup a common network boot
> image, so how do I do that on Linux?
> Dan Egli
> On my Test server
<sarcasm>Since when did we answer Windows questions on a Linux user's group list?</sarcasm>
The only ways I've seen Windows be networked booted are something that lives in RAM with WinPE or using a block level network protocol (i.e. iSCSI). I've never heard of doing it using an SMB share for the OS. I have experimented with booting Windows over iSCSI and it works surprisingly well.
I did see something years ago about a setup that network booted a dozen systems over iSCSI with a shared base image and copy on write overlays for each system. It was done by Kenton Varda for a LAN Gaming center in his house. https://github.com/kentonv/lanparty has a script he used to manage it and details about the configuration. Its actually kind of awesome and might be similar to what you're looking for.
I haven't read through all of the details but he said he uses LVM snapshots for the copy on write for each system. I've not been too happy with the IO overhead of the classic LVM snapshots. I'd either look at using the LVM Thin Provisioning and its snapshots or I would have all of the LVM volumes on SSDs.
Also, you would probably want to treat the iSCSI targets are read only as much as possible since trying to update the master image and keeping the contents of the overlay gets tricky at the block level. Maybe configure the master image to connect to an SMB share and have it put Users folders there instead of the regular C:\Users.
I hope that gives you a direction to look.
More information about the PLUG