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

The Package

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.

Figure 1. Yellow Dog Package

Installing Yellow Dog Linux

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.

Comment viewing options

I'm no linux expert by far but for Yellow Dog, I don't even know the commands to determine the software level. Something like the oslevel command for AIX. Can someone please send me a cheat sheet with some of these commands?

Good article but I have been informed that you cannot port Linux to a Mac without first partitioning the hard drive and thus losing all your files. Later you would reinstall Mac OS along with Linux. This article makes no mention of this fact -- is the writer assuming that the disk is already partitioned? Or am I misinformed? Or did I read incorrectly?

Yes, it's a whole OS and needs its own space. Coming from the PC world I'm used to leaving free space or expendable partitions for future expansion or upgrade...so I cut the disk in half from the start and when Linux came along I installed it to the unused space (2nd partition). What might work better if you just want to test drive things is what I did at work. Just add another hard disk and install it to that disk. My G3 at work had plenty of bays so I slapped an IDE drive in, picked it in the YD install procedure, and works great. You might be able to do that with an external drive too. (firewire or USB.) The bootloader that was included with YD didn't seem to work...but with the G4 I just hold down option and it lets me select which device (Linux or Mac) that it's going to boot from.

For the PC there are some utilities that will re-size or partition the disk without data loss...not sure if the same exists for the Mac.

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.