Network And Automated OS Installation?
nneul asks: "What options are there for automated network O/S installation? It seems like very few Linux distributions have reasonable facilities for this, whereas many other commercial unices and O/S's do. Does anyone have information or other approaches to doing automated network installations?" Automated install options for most OSes is described in detail, in the full article.
"As far as overall, I've seen:
- Solaris: JumpStart, no floppy, just 'boot net', works on any NFS server, but does have to have a machine on same subnet as installed machine.
- HP-UX: Either NetInstall or Ignite-UX, both are boot off network as well, requires an HP to use as install server
- IRIX: Also has a network boot/configure. Slightly more pre-configuration when you initially boot, but once it's started, pretty much proceeds automatically, any nfs server.
- AIX: Haven't used in ages, but even the old 3.2 had a way of installing a system image for installs, and the 4.x has some sort of network install utility.
- NT/Win2k: You can automate most of the base O/S install for these, but will require either using old DOS lanman boot disks or netware boot disks.
- Red Hat: KickStart, one standard floppy, everything configured on network, well documented, any NFS or FTP server can be used.
- Mandrake: Apparently includes kickstart since RH based, but has no documentation, and I sure wouldn't trust them to not break it, given that they make no mention of it anywhere.
- Debian: Doesn't appear to have anything other other than the base install, and very little to no automation
- Ghosted/Disk image/etc: Yeah, this works, but you gotta have pretty equivalent hardware and partitioning. Forget it if you want to be able to autoinstall to lots of different boxes."
hire a flunky to install everything by hand, then take the rest of the day off and enjoy some golf.
The entire front-end is web driven. You are presented with a web page with 6 categories (Disk, Hardware, Network, etc.). You configure each of these categories based on the type of machine you will be installing. When you are finished with your preferences, you click Finish and the program spits out configuration files to install your system with. You can use either your standard install cd, or an NFS server to do the actual install. Pop in your floppy, and 10 minutes later you have a perfectly configured system.
The entire system is XML driven so if you want to customize anything in the default preferences file or the resulting config file, go right ahead. AND all of it will be GPL'd! What a deal! Seriously, this is a really nice system and will easily beat most other offerings.
The new server product should be out within the next month, so grab a copy and check it out when it's released. You can use it with the server product, but it will also install eDesktop (2.4) systems too. It's really going to be nice.
Yeah, had forgotten about Slackware. Used to use it a while back. The tag files worked pretty well.
I'll take a look at SuSE.
Right now, I've got a server set up that we use to install HP-UX 10.20, 11.00, Solaris 2.6, Solaris 2.7, RedHat 6.2 (customized to be reiserfs based), and Irix 6.5. Adding SuSE probably would be easy enough.
Well, when can others test/use/beta the software? I have a fair number of machines at my house in the home data center (13 machines and growing). I would love to be able to do automatic installs via a boot floppy to start the system. It would save me and my roommate a ton of time doing installs. It would have to support Debian for my needs, my roommate is a red hat guy so he could always use kickstart. If you need a beta tester, let me know.
Scott
C{E,F,O,T}O
sboss dot net
email: scott@sboss.net
I am 39.0% slashdot pure
Scott
janitor
sdn website family
email: scott at sboss dot net
Some friends of mine and I have been working on a system to netboot Linux. It turns out that it's not that difficult - a combination of TFTP for a kernel, NFS for a root filesystem, and some custom code to pull all of the stuff over. Think Solaris JumpStart meets Linux.
It's actually surprisingly clean. Right now, it actually works without requiring NFS, so after a little bit of preconfiguration on the server side, you can configure a shockingly large number of systems just by putting a floppy or CD in the drive and booting. (The NFS is planned, mostly for completeness, since the system at large can actually work without.)
- A.P.
--
* CmdrTaco is an idiot.
"Remember when the U.S. had a drug problem, and then we declared a War On Drugs, and now you can't buy drugs anymore?"
Do the base install on one machine. tar all of
the installed partitions and dump them onto an
NFS mount. Run "dpkg --get-selections > packages".
Copy packages file to NFS mounts. Get a boot
floppy that supports NFS(tomsrbt?). On each
yet-to-be-installed machine, partition disk and
untar the partitions dumps that live on the NFS
mount onto the local drive. Run lilo on newly
cloned machine. reboot. Run
"dpkg --get-selections
Most of that can be scripted in sh. I just wrote
it out so that the process is clear. It's really
easy to clone Debian machines quickly.
To try out SuSE, I'd recommend grabbing the directory from ftp://ftp.gwdg.de/linux/suse/7.0 to an install server so that you get all the good crypto stuff. SSH is now a default, finally.
I'd also like to point out the fact that I completely forgot about VA Systemimager, which I have been investigating. From what I've seen, it looks really good, especially with ReiserFS support.
If you're working with Linux/*BSD, the hardware configurations don't have to be close. I use one Linux image for vastly different boxen. You have to go through a fair bit of trouble generating the initial image, if you wish it to work 100% of the time with no mods, however. I happen to keep seperate copies of the kernel and of XF86Config which are installed on demand, that simplifies the image tweaking I have to do. Also, you need to keep a seperate base image for each arch (Ultra, x86, Alpha, etc).
For installing the images, I use a simple floppy that mounts a known export on a known IP, and executes a script on the export to do it's work. You can change the contents of the script far easier than you can re-work the boot floppy. A slightly hacked cfdisk does the initial partitioning, and then the contents of the image are usually just copied/dd'd over, along with a kernel and a Xf86 config.
.sig: Now legally binding!
In my setup, I would make a very minimal setup on the workstation (use old 386's or 486 machines) and make the main server a pretty kickbutt machine, and have another server with the Red Hat packages on it. Do the install over NFS. In the workstation, all I would have is a kernel, X-windows, inetd and a few other things that might be useful (fsck and other basic utilities). Mount the home directories off of the server, as well as /usr. Run EVERYTHING on the server, if you can. I am sure it could be even easier. Just setup the box with a floppy only, no harddisk, and everything else and pass out floppies to boot everything off of thr network. Or, you can also put a small harddisk, no floppy and put the floppy image on the harddisk. Man there are MILLIONS of ways to do it and they are all fairly easy. It's just a matter of doing it.
Gorkman
See this month's issue of the Linux Journal. There is a relatively lengthy article describing the installation of Linux on ~60 machines that covers many topics similar to this question. I don't have my copy handy or else I'd post the title and page number(s).
--
News for Geeks in Austin, TX
I set up a server at work for installing SuSE and Slackware. It's quite simple.
With Slackware you can make custom package selection files and install over NFS.
With SuSE, you can save you package selections to a floppy and use it on many machines. You can install over FTP or NFS. Only drawback is no DHCP, just BOOTP or manual network configuration. The real advantage is being able to install via a 100MB network...
There's a new tool with SuSE 7 called ALICE. I haven't looked into it yet but I hear it's really powerful for doing automatic installs.
Also, SuSE's YaST2 allows you to graphically install to a machine over a serial cable, which is really neat for installing servers using a laptop to control it.