How to Easily Make Custom Linux Install ISOs?
Jason Tilke asks: "I recently read an article which discusses HP's LinuxCOE v4. We've been wanting a system to make rolling out custom but standardized systems (in terms of package selection) and LinuxCOE seems to fit the bill. Are there any alternative that'll spit out custom ISOs which our non-technical staff can use to install a complete Linux system? Has anyone had any positive/negative experience with LinuxCOE? Are there any precautions/steps we should take to prevent us from tripping over our new changes?"
Check out Fedora 7 which has tool to make easy "respins."
~
~
Instalinux may meet some of your needs. I haven't looked at it in a long time, though, so I'm not sure exactly what sort of customization they're offering these days.
"AutoYaST allows unattended and automated installation. With AutoYaST, administrators can create a consistent baseline configuration for new installations in large or expanding deployments. In addition to AutoYaST, other installation methods include PXE Boot, CD-ROM, NFS, CIFS/SMB, HTTP, FTP, and the Service Location Protocol (SLP), which allows autodetection of install servers."
Have someone do it for you.
Seriously, package integration (or removal) is NOT easy, in general, and trying to get it foolproofed is a major headache. What do you do if someone wants to "easily" remove some useless stuff he never uses (expat) but not the programs that depend on it?
You will eventually reinvent all the huge and occasionally buggy installers everyone's got, or something equivalent.
It's not going to be easy. It might be worth it, but think about it first; do you really need that level of customization? Why?
My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
Are there any alternative that'll spit out custom ISOs which our non-technical staff can use to install a complete Linux system?
Take a look at Knoppix Remastering.
In a former life, I used to build custom embedded Linux distros as the base platform for other company projects; Knoppix makes it so easy, if I hadn't already moved on from that job, it would have sent me to the unemployment line.
Actually, I exagerate a tad there - Knoppix makes it almost trivial to get a customized Debian-based system down to the 40-50MB range; On my most challenging project, I managed to get a stable system running custom builds of X and Mozilla to fit on a 16MB flash disk. But presuming you don't have quite such minimalistic hardware requirements, Knoppix makes the task a breeze. Just unpack it, chroot into it, "apt-get remove" whatever you don't want and build whatever else you do, and roll it back into a cloop'd iso. C'est fini.
For comparison, I usually prefer to run Slackware as my normal Linux distro, and looked into Slax before Knoppix. For some tasks you might find it easier to work with, as it uses a more modular approach, but I found that far more limiting and inconvenient if you want to make fine-grained tweaks or even just alter configuration details without swapping out whole packages.
The Ubuntu Customization Kit (some old version here, with screenshots) looks useful, and Linux Live looks even more general.
I've done this a few different ways over the years. At first I used a system called systemimager that allows you to have minimal install media (small iso or floppy) and pull the image from a server during install. This is nice in that it catches EVERYTHING on the filesystem, but can be a pain to admin/update later and doesn't work without a server available. It also doesn't let you drop to the installer's UI for allowing the user to choose options such as partitioning as that needs to be in the script as well. I have since moved to managing machines using custom install processes/ISOs and local package repositories and like it much better.
I've also used SuSE's autoyast which records package selection and config settings that you can then use as input for subsequent installs. This is well documented. I also used RedHat's kickstart awhile ago but didn't do too much with it.
Most recently I've created custom ISOs for Ubuntu using the preseed mechanism. This requires editing a few text files specifying such settings as network config, default desktop, etc. There is a way to put your extra packages right on the CD but I just have a firstboot script that updates from a local repository using a list of package names to install. Metapackages are also useful here as you can make a metapackage that just depends on all the packages you want and update that whenever you wish all the existing or new machines to get new packages.
All of these options are fairly well documented but may take some trial and error work to get things the way you want. It really depends on the distro you are using.
I've never used the package you reference. However, I have been fairly successful in rebuilding Ubuntu ISO's with my own package selection. Try this page if you decide to look at Ubuntu for your Custom Installer. https://help.ubuntu.com/community/InstallCDCustomi zation
http://custom.nimblex.net/
NimbleX is based on Slackware...
Politics is Treachery, Religion is Brainwashing
It took me a bit to find the docs the first time around, so here are some direct links for anyone interested:i zationi zation/Scriptsi zation/PreseedExamples
https://help.ubuntu.com/community/InstallCDCustom
https://help.ubuntu.com/community/InstallCDCustom
https://help.ubuntu.com/community/InstallCDCustom
Enjoy!
3 words. Fully Automatic Install
http://www.informatik.uni-koeln.de/fai/
-P
I've never used 'em, but gNewSense is based on some scripts that are supposed to let you roll your own Ubuntu Dapper variant. See: http://www.gnewsense.org/Builder/HowToCreateYourOw nGNULinuxDistribution
Use apt-show-versions to get a list of your installed packages. Then apt-get them.
Give me Classic Slashdot or give me death!
For a large scale roll out this tool is ideal. It is not easy or idiot proof on the admin side, but once you make your custom ISOs, it will be painless on the user side.
From their site: http://www.gentoo.org/proj/en/releng/catalyst/
After that just make a fake package that depends on all of them and includes the relevant customisation. Not very difficult. It has one disadvantage - it does not make the install fully automatic. You have to answer questions which may lead to inconsistency.
Unfortunately, debian still does not read everything in every package out of the debconf database so even prepopulating it will not always help. So unless you are doing 50+ it is cheaper to make a custom package, but still hire someone to press enter and type in Y/N where necessary.
Baker's Law: Misery no longer loves company. Nowadays it insists on it
http://www.sigsegv.cx/
Linux From Scratch guides you through making your own 'distro' from sources.
Its very interesting since it shows how different things work in Linux. However it can be practical for making a minimal system...
For your purpose, Knoppix seems very practical (based on Debian with the easy package management). "Knoppix Hacks" from O'Reilly contains a chapter on remastering the ISO
Really simple 6 step method:
1) on master machine, 'dpkg --get-selections > packages.txt'
2) do a base install on new machine
3) move packages.txt over to new machine
4) 'dpkg --set-selections < packages.txt' on new machine
6) on new machine, 'dselect install'
7) follow prompts
HTH
...Rob
The American Dream isn't an SUV and a house in the suburbs; it's Don't Tread On Me.
I've done some of this for Edubuntu CDs: http://blog.technomancy.org/2007/04/09/automating- an-edubuntu-install-cd/
You can get a program for Ubuntu called "Reconstructor", which makes it literally drag-and-drop to make ISOs of custom Ubuntu systems. You just optionally specify a desktop theme and startup picture, make a list of packages you want it to come with, and it gives you a nice ISO. The alternate install CD of Ubuntu is supposed to make it easier to rollout systems but I'm not sure how.
I haven't used rPath or any of the other Conary-based systems, but I think this is what they're designed for... basically creating custom distributions with a web-based package management system.
I'm seeing some comments saying "this is hard and will always be hard" or suggestions to use this-or-that third party tool. But I'd really, really encourage you to take a look at Revisor from the Fedora Project.
a rchives/70-Fedora-7-Custom-Spins-with-Revisor.html
Fedora doesn't really produce a Linux distribution anymore -- they produce a well-integrated Linux repository and the tools to make distribution media "spins" (live disc, installation disc, repository subset) from that repository or to do installations directly from that repository. The Fedora 7 ISO images are really just sample spins.
Revisor is the GUI frontend to the tools for producing spins (which are pungi and livecd-creator). It enables point-and-click selection of the software set for installation with full dependency resolution. A few more clicks and you have your ISO image ready to burn.
http://dailypackage.fedorabook.com/index.php?url=