Slashdot Mirror


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?"

8 of 39 comments (clear)

  1. Fedora 7 by groovebot · · Score: 5, Informative

    Check out Fedora 7 which has tool to make easy "respins."

    --
    ~
    ~
    :wq
    1. Re:Fedora 7 by fishybell · · Score: 4, Informative
      It's been easy to make a reformed version of Fedora, and the various Redhats, for some time. There hasn't been a GUI tool for it before, and they haven't called it a respin, but they've been there.


      See here for example. It tells how to generate new ISO images from the original ISOs and updated RPMs. I've personally used the tools to build stripped down versions of Redhat/Fedora that include everything I need, but on a single CD. You can also include a kickstart file on the CD so that you can give a "linux ks=cdrom" at the initial install prompt to run a fully automated install. I don't think Redhat would have ever been as useful to corporations had it not had this option. Why install old RPMs? Install the OS with the latest, greatest everything.

      --
      ><));>
    2. Re:Fedora 7 by Anonymous Coward · · Score: 3, Informative

      Fedora Unity have been doing respins for quite a while. The Revisor tool makes it possible to this with hardly any trouble at all.

      PCtech used revisor to create an 11CD install set because although Fedora 7 could be obtained as an installable LiveCD and then packages added over the network, some people didn't have the bandwidth or a DVD, so needed the CDs.

  2. try autoyast by jcgam69 · · Score: 2, Informative

    "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."

  3. Knoppix. by pla · · Score: 4, Informative

    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.

    1. Re:Knoppix. by pla · · Score: 2, Insightful

      I didn't have a lot of patience with what I removed or included, but once, due to dependencies, it started to remove some really base packages, and I got fed up.

      I find that, for the most part, apt will warn you if you try to remove something important... But not always. When in doubt about one of the packages it shows, try checking what it does with something like:
      dpkg-query -W --showformat='${Installed-Size} ${Package} ${Description} ${Status}' packagenamegoeshere
      You should also run deborphan every few removals to see if you can throw away another library or three.


      Also, with Knoppix, you'll eventually notice you have three un(easily)removeable sets of rather large files installed on your system - apt-get itself, locales, and kernel modules.

      As one of your very last steps, delete your dpkg and apt caches (the size of those will depend on how much you installed, but can really add up if you make a lot of changes), and then just rm -rf your /var/lib/apt/lists for a whopping 85MB or so (this won't even break apt, amazingly enough! You'll just need to do an apt-get update to repair it if you ever need it again).

      For the locales, put only the locale(s) you want in "/etc/locales.gen" (probably only "en_US ISO-8859-1" if you live in the US) and running "locale-gen". This will drop your /usr/lib/locale/locale-archive from 15MB to around 1MB, and then you can manually delete all the useless ones from /usr/share/locales to save another 27-29MB.

      Do you want to keep 65MB worth of kernel modules around for things like ISDN/ATM/IPX/Appletalk, any FS other than EXT2/Reiser/CIFS, and support for ancient ISA cards? Most likely you plan to target a single system; boot to it and see what modules get loaded. Keep a few extra really common ones if you want, but you can easily throw away 90% of them with zero loss of functionality.


      You can also find some significant savings by removing your manpages and documentation; and if you need X, do you really need the latest-and-greatest 3d accelerated drivers just to scroll your MP3 playlist, or would the relatively tiny framebuffer driver suffice? Deleting all your useless timezones helps too, but that will only buy you an extra 5MB (though as you noticed, once you pass the 100MB mark, every byte helps). You should also make friends with "strip", though at that point you really do start saving only a few KB per use. And at the tightest end of the spectrum of space-saving, a statically-linked BusyBox can singlehandledly save you 10-30MB of binaries and assorted libraries.



      Finally, keep in mind that the "c" in "cloop" stands for "compressed"... Getting the FS down to around 400MB (pre-compression) means it should fit comfortably on a mini-cdr, and DSL (v3.3) itself weighs in at 124MB uncompressed. This might not so much matter if you want to do a "real" HDD-like install onto a small USB or flash drive, but if you plan to boot from readonly media, even using the "toram" option, only the compressed size matters (with enough RAM, of course).

  4. I've used a few approaches, including systemimager by cblack · · Score: 2, Informative

    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.

  5. Re:Take a look at these two? by cblack · · Score: 4, Informative

    Note that the Ubuntu Customization Kit you mentioned is aimed at creating custom ISOs for LIVE CDs, not for actual installation. A good place to get info on creating install cds is https://help.ubuntu.com/community/InstallCDCustomi zation