Yellow Dog Linux on the iMac
First, a disclaimer: I'm not a fanatic Macintosh guy. I got a Macintosh late in my computing career, just last year in fact—an iMac. I was working on a cross-platform Tcl/Tk project, and I was getting pretty involved in fine-tuning the GUI for Mac OS, Windows and Linux. I decided it was too much to rely on feedback from the users, so I opted to buy a cheap Mac on which to test the application. I ended up with one of the Revision B iMacs, which is a decent machine, and my wife likes it too.
Well, wouldn't you know it: I soon discovered that folks were running Linux on these things, so I just had to try that out. Linux on a Mac has now come of age, with about half-dozen vendors offering distributions for PowerPC processors.
Yellow Dog Linux is one of these vendors, and they offer a number of packages targeted at different levels of usage. Champion Server is just like the name sounds: a package targeted for server applications, but it also works well as an individual workstation. Yellow Dog also has a Gone Home edition in the works, originally targeted for home users, but now their vision has changed and Yellow Dog says Gone Home will be “a revolution in the way Linux is installed and experienced”.
Yellow Dog Linux put much thought into the packaging of their product, offering anything from plain CDs to binders to a full nylon zippered notebook sporting the Yellow Dog “Labrador” logo. The package Linux Journal gave me to evaluate was the zippered notebook (see Figure 1), which also included some Yellow Dog bumper stickers to help you show the world you're an avid Yellow Dog fan. Both bound versions have the CDs in plastic jackets in the notebook and a nicely done manual. If you opt to go the download route, YDL offers image files of the install CDs on their web site and mirrors. (Do yourself a favor, though, and buy a CD, or go in with a group to buy a set and burn your own copies. It's not that much money ($24.95 US), and you won't be consuming the bandwidth for that 700MB download.) There are three CDs total: the “Install”, “Source” and a “Tasty Morsels” CD. Tasty Morsels contains additional games and applications, including some that do not fall under the GNU license. It also contains KDE2 and the Linux 2.3.49 source tree. Interesting to me was pcb, a basic printed circuit-board layout program, because I am a printed circuit-board designer.
Champion Server, like many distributions these days, is based on Red Hat Linux, using RPMs and the text-based Red Hat installer. To begin the install, insert the install CD in your CD drive with the power off, then power up the system holding down the “C” key, and you will be presented with a yaboot prompt. yaboot is a boot loader along the lines of the familiar LILO on x86 machines. At the prompt, type install and soon you will see the ever-present Tux and the Red Hat text-mode installer. There is no mouse at this point, so use the arrow keys, TAB and space bar to select and acknowledge the prompts. You are asked to select a language and keyboard type, which defaulted to English and mac-us-std, respectively, for me. You are then prompted for the installation media (CD-ROM for me).
The iMac uses USB (universal serial bus) for all its peripherals, including the keyboard, so the first thing you need to do is identify the keyboard and language so you'll be able to use the keyboard during the install. I had a problem with this—my keyboard worked at the yaboot level, but not in the Red Hat installer. After some trial and error, I found that putting my Belkin Hub on the USB chain was the root of the problem, and my keyboard worked after removing the hub. (USB is still a little shaky, in my opinion. Half the time, my mouse does not work in Mac OS until I unplug/replug it in.)
The first thing you must do is set up your partition table. The installer takes you into this step, offering to use either disk-druid or pdisk. I believe pdisk is the only true option for a Mac OS-partitioned drive, so this is your best bet. pdisk is much like fdisk for Intel Linux, a text-based program where you use letter commands to create and name your partitions of various types. I opted to create a single Linux partition of about 1.4GB and a 20MB swap partition, because I had another working Champion Server setup that I wasn't ready to sacrifice just yet. In many cases, it's a good idea to create separate partitions for /, /var, /usr and /home. If you want to upgrade later, you can then opt to leave /home alone and reformat the other partitions and still retain your personal files and settings. It's important to remember to reboot after setting up and writing the partition table to ensure the changes take effect. I've seen a number of people encounter problems (not just with Champion Server) when they did not reboot. The install appears to go fine, although very quickly; yet upon booting, they find many things missing or not functioning properly. (It would be nice if the installer gave you a graceful way to reboot, rather than having to press CRTL-OPT-POWER. It would also be nice if, after the reboot, the installer could resume where it left off.) One thing I should mention is that the prompts show fdisk, but you are actually using pdisk. If you have already set up Linux partitions, as I did, you can skip the reboot.
I should also mention most Linux vendors recommend you do a clean install, not an upgrade to your existing install. If you have a separate /home partition where you keep your personal files, they will be kept during the install, provided you don't format that partition. Many people have a lot of problems trying to upgrade a Linux system. The safe bet is to make a full backup and start clean, then pull the things you need from your backup. You may find you don't miss much from your old installation.
The installer gives you a default set of packages to install that is fairly complete, and you can fine-tune this by category and individual package. If you attempt to install a package that depends on another, the installer will warn you and offer to install the necessary packages. I hand-picked what I installed, giving myself enough to get a feel for what the distribution had to offer, but omitting some pieces due to my limited partition size.
The installer takes a few minutes to install the packages, then detects your mouse, letting you fine-tune the selection, and then offers to set up networking. I have a network setup at home with my primary box running Linux serving as a server/Internet gateway for the rest of the network. I assigned a fixed IP address to the iMac, the same as used in Mac OS, and set up the main box as the gateway, with DNS addresses for my ISP. The installer then asks you to choose your time zone, which it also correctly detected as US/Eastern for me. You are also given a list of dæmons/processes to start automatically at boot, and you can enable or disable them as you see fit. (These are programs such as Apache, Sendmail and NFS.)
Next, you are asked if you would like to configure printing. Again, my printers are all networked and power-controlled by X10 controllers from the server. I opted to pass print jobs through this queue.
You have the opportunity at this point of setting the root password and choosing whether to use shadow passwords. You are then instructed on which partition you should enter in BootX, and the installer goes on to identify your video card.
The proper X server is configured. A message tells you to start X on your new system using startx, and if you have problems, to run Xconfigurator.
You are then congratulated on your install, and the system reboots.
Free DevOps eBooks, Videos, and more!
Regardless of where you are in your DevOps process, Linux Journal can help!
We offer here the DEFINITIVE DevOps for Dummies, a mobile Application Development Primer, and advice & help from the expert sources like:
- Linux Journal
- Users, Permissions and Multitenant Sites
- New Products
- Flexible Access Control with Squid Proxy
- Security in Three Ds: Detect, Decide and Deny
- High-Availability Storage with HA-LVM
- DevOps: Everything You Need to Know
- Tighten Up SSH
- Solving ODEs on Linux
- Non-Linux FOSS: MenuMeters
- March 2015 Issue of Linux Journal: System Administration