Mark's Mega Multi-Boot Computer
After I started going to computer conferences, I realized I needed to be able to demonstrate Linux working with other operating systems as well as different distributions of Linux. Having one computer for each operating system seemed a bit much, so it became important to have a multi-boot computer to reduce the number of computers I would need. The goal was to put several distributions of Linux, along with other operating systems, onto the computer and be able to choose which operating system I wanted when I turned on the computer. The other operating systems were Windows 98, Windows NT, DOS and FreeBSD.
The computer was originally configured on an IDE system as follows:
Primary Partition 1: Windows 98 (2GB)
Primary Partition 2: 100MB of Linux swap space
Primary Partition 3: Red Hat Linux 5.2 (> 1GB)
Extended Partition 4
Logical Partition 5: Windows NT 4.0 (2GB)
The goal was to install more distributions of Linux and FreeBSD onto this computer. The problem was, all the disk space was used up. It was going to be hard to add more systems. A crazy solution had to be used, and this was where the beauty of Linux shone forth.
When the kernel for Linux starts, it doesn't have to reside on the same partition it will use for the “root” partition. The root partition for Linux is just like the root partition for UNIX systems: it contains all files and directories for the operating system to use after the kernel gets started. That is, the kernel can reside on a different partition than the one used for its files and directories after it starts.
So, put every non-Linux operating system on the first hard drive, as well as one small Linux installation. Then, install all other distributions of Linux onto a second hard drive. The small Linux installation on the first hard drive will contain the kernels for each of the Linux installations (including its own) that reside on the second hard drive. In addition, the small installation on the first hard drive will configure LILO, so that you can choose which version of Linux you want (off of the second hard drive) when the computer starts. The trick is, LILO will be configured to grab a kernel from the small installation on the first hard drive, then switch to the second hard drive and use the appropriate partition for that kernel.
In order to install FreeBSD and a small Linux installation on the first hard drive, both the original swap and Linux partition on the first hard drive must be deleted. In place of the swap partition, install a 100MB installation of Red Hat. In place of the original Linux partition, install FreeBSD. Now the configuration should look like this:
Primary Partition 1: Windows 98
Primary Partition 2: Red Hat Linux 5.2 (using only 100MB of space)
Primary Partition 3: FreeBSD
Extended Partition 4
Logical Partition 5: Windows NT 4.0
Listing 1 is the configuration of LILO in /etc/lilo.conf within the Linux partition.
Now, two steps are needed to install the rest of the Linux distributions on the second hard drive. First, all Linux distributions need to be installed without modifying how the computer boots up. The partition table on the second hard drive is set up as shown below. My second hard drive was an IDE hard drive set to be the master on the secondary IDE channel (which becomes “/dev/hdc” in Linux).
Primary Partition 1: spare Linux partition (unused)
Primary Partition 2: Red Hat 6.0 Linux
Primary Partition 3: Debian Linux
Extended Partition 4
Logical Partition 5: Linux swap (usable by all Linux distributions)
Logical Partition 6: Slackware Linux
Logical Partition 7: Caldera OpenLinux
Logical Partition 8: SuSE Linux
Logical Partition 9: Mandrake Linux
Logical Partition 10: shared partition among all Linux distributions located at /Shared.
After each of these Linux distributions is installed on the second hard drive, the hardest part is setting it up so that any of these operating systems or Linux distributions can be chosen at boot time. Next, do the following:
Turn on the computer and choose the small installation of Linux by typing in linux when the LILO prompt appears.
Copy each kernel or /boot directory from each Linux installation to a directory under /lilo.
Edit the /etc/lilo.conf file. Add each kernel for each Linux distribution to the file, including the option to change to the appropriate partition for the root directory after the kernel starts.
Execute the command lilo.
Because LILO was installed, when the computer reboots the LILO prompt will come up. From here, pressing the TAB key gives a list of the various options from which to choose. Typing in one of the following will start the corresponding operating system: “linux”, “linuxkernels”, “MicroSoft”, “FreeBSD”, “Debian”, “Slackware”, “Caldera”, “SUSE” or “Mandrake”. Choosing nothing would mean that the first option “linux” would be chosen. Also, if “MicroSoft” is chosen, another menu will pop up which will let you choose “Windows98” or “WindowsNT”. This other menu is the NT Boot Loader.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- Paranoid Penguin - Building a Secure Squid Web Proxy, Part IV
- SUSE LLC's SUSE Manager
- Google's SwiftShader Released
- Managing Linux Using Puppet
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- My +1 Sword of Productivity
- Non-Linux FOSS: Caffeine!
- SuperTuxKart 0.9.2 Released
- Parsing an RSS News Feed with a Bash Script
- Doing for User Space What We Did for Kernel Space
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide