You'd have thought I learned my lesson with Kraken.
Because of my work (I design Windows XP Embedded computer systems) I get a lot of email from various divisions of Microsoft's empire. One part of the Gorilla's business I usually ignore is the stuff from the guys working on Office and its fellow traveler Live Office. What caught my eye this time though was the word FREE. I'm usually a sucker for anything FREE from somebody that looks legitimate. Well they are offering small businesses a FREE website. Of course its being served by boxes running some version of Windows IIS & ASP. There is a lot of encouragement to use their FREE website building tools. And for the privilege of not paying for the minimal website, its FREE ya know, you get to have an logo with an embedded link to what they really want to sell, Office Dead, or Dead Office. (Haven't figured out what sounds funnier, in a Monty Python sort of way. “Bring out your Office Dead!” or a stuffy “Bureau of Dead Offices” skit starring Cleese and Idle.)
Ok. So what does this have to do with a Debian Home Server? Actually nothing. I'll get to it directly in a minute or so. It only has a little bit of rat in it.
At work I'm looking into and actually having to program a number of automated procedures to allow a less-than-extremely-highly-skilled employee to be able to rebuild a Windows XP system with a process that is essentially “hands off” and to do it over and over again on systems with different kits of hardware. Those of you out there similarly afflicted with Windows expertise as I am know the techniques involve use of things called Sysprep and Unattended installs. In a few millisecs of daydreaming I started wondering if similar set(s) of techniques existed for Linux systems. Surely, I thought, there has to be!
After messing with it for 2 weeks, doing what constitutes a bare metal system restore in Windoze or in Linux can be done in quite a few ways, all without requiring the use of Ghost or Acronis or other commercial drive imaging software. The big trick is coming up with a generic enough set of drivers that will fit on most systems by using the minimal sets of defined interfaces that make up the architecture of the original IBM PC and the idealized PCI, IDE, ATAPI, USB 2.0 and other bus specifications. After that the limitation is the network card. That is the one area where a “bus” specification would really help.
It used to be (“Time to turn on the WayBack Machine Sherman!”) in the days where an ISA bus was all you needed so that a ISA bus network card called the NE1000 became a sort of defacto standard. If you had a driver that could talk to a NE1000, it would talk to a lot of other cards that also used the same programming model. Then the 3C509 from 3Com became a sort of standard. Now these days, its networking chaos except for PXE. With PXE you can download the image you need to the system. For Windows that system would be a WinPE system. For Linux it would be a generic boot up OS image like those used on the Live CDROMs.
The trick in Windoze its to use what they call the Windows Pre-installation Environment or WinPE CDROM. You stick a Windows XP Pro INF file and the SYS driver file in the appropriate places in the WinPE boot-up image and poof! It finds the driver and installs it when the WinPE formatted CDROM boots up. Basically WINPE is a GUI-less version of a stripped down Windows XP Pro or call it 32bit DOS. Unfortunately it reboots every 24 hours and forgets everything it did in the previous 24 hours. Its also not a free download or you'd have a lot of people running blazing fast Windows systems that have been stripped to the bone to just the essential systems. Excuse me, I digress. WinPE gives Windows systems the ability to reside as an image in a folder that gets downloaded and then on the next reboot begins to run as if its always been there on the client system. Think of it as a Hibernation image on a remoted server.
The relevance to Debbie (the Debian Home Server) is that while she's running Samba, she looks like just any other Windoze server to a box that booted up running WinPE. That's because WinPE's default security model is just NTLanManager, something that Samba handles quite nicely. WinPE can't operate as a server but it can read and write NTFS, and FAT-anything partitions. It can also sit in its own partition and be an option to boot up. It can connect to a server and read and write to a shared folder there as well. What's even nicer is that it will work for saving and restoring all versions of Windows. There is a freeware version called BartPE that works similar to WINPE without the licensing issues.
Schedule BartPE to run by putting it in its own partition, do a file swap on the file boot.ini in the root of the Windows system partition and do a reboot. The system boots up running BartPE, it follows a script, copies the system partiton and what other partitions desired to a folder on Debbie in the folder for the restore images. So I've found my bare-metal restore solution for Windows systems on Debbie.
Now I have to figure out how to do something similar to a Debian system. Being able to format a drive and then just copy files onto it to re-create a system beats even running a Live CD and doing an install. You eliminate all the Internet downloading and program installation issues.
For Linux for certain, a couple of other items are necessary. A DHCP server because BartPE (and WinPE) running on a PXE NIC need the IP address and and subnet mask so that it can connect to Debbie. Debbie is running a DHCP server so that's taken care of. Then a means of doing a PXE serve like a thin client that can download and store an image. Then formatting the drive and replacing the Linux image and then rebooting into the restored image. So I do have some more work to figure those steps out.
I am still leveraging what I know about Windows systems and looking for analogs in the Linux world. Thin clients however is not anything I've done using either Linux, Windows or Citrix. Yes I know there are thin client solutions running that can work using Linux that will do what I need here. I'm going to my friend Google and do some research this weekend.
The FREE website? Well I was wondering if I could log onto it with a Debian Linux system and attempt to manage it using Iceweasel (Firefox), OpenOffice 2.0 and Bluefish. Nope no go. Its all Active Pages and dotNet stuff and it hangs almost immediately. I'll bet I can't log on with Win 2K either. FREE in this case means you have to buy Windows XP or Vista-something-or-other! It reminded me almost immediately of my experience with Kraken, the Windows Home Server that only works with XP SP2 and Vista systems. If you want to see what it looks like so far: http://xwindowsjunkie.com
The webpage itself was created using their “free” website software using a template. You can look at it you just can't log onto the management portal and fiddle with the site. I haven't actually tried to delete the entire format and push my own into the page. My guess is that I won't be able to delete all the active stuff out.
If you want to see Iceweasel or Firefox 2.0 hang up, click on the Office-whatever logo