Here's the latest on upgrading Linux systems while enabling them to run Windows applications.

InformationWeek Staff, Contributor

June 24, 2006

4 Min Read

Updating yum

The first thing you'll want to fix is the yum automated installer program, which will stop working after the FC3 installation. The specific problem is the config file. The new distribution splits the file into the configuration file itself at /etc/yum.conf and the /etc/yum.repos.d/ repository directory; each repository gets a separate configuration file in the new directory. A repository in the Linux context means a site in which applications are kept in a format that a specific automated installer can download the applications and sufficient data. This way, dependencies can be analyzed and then downloaded from the repository, along with the application one intended to install.

You may have to do some things to clear out the deadwood and persuade the yum program to properly pull the information it requires to do the upgrades from the repository sites. To start with, if your installer kept the old yum.conf, replace it with this:



[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=fedora-release
tolerant=1
exactarch=0
# Added this because some mirrors go down and then retying takes forever.
retries=1
timeout=300
# Basic Repos are in /etc/yum.repos.d/ 

In FC2, the repository information was part of the yum.conf file; each repository had its own section below the [main] section in the above yum.conf file. In FC3, each repository section has its own file in the /etc/yum.repos.d directory. The following is a sample section:


[base]
name=Fedora Core $releasever - $basearch - Base
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/$releasever/$basearch/os/
mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-$releasever
enabled=1
gpgcheck=1

Take each section from yum.conf describing a specific repository and copy/paste it into a separate repository file in /etc/yum.repos.d/. In the case of the above section, one would paste it into the new file /etc/yum.repos.d/fedora.repo. After you've fixed the configuration and repository files:


#yum clean all

Clean out: If you get "file does not match checksum error:" for a particular repository, use the wget command line non-interactive file downloading utility to grab the following files:


# wget --cache=off http://apt.sw.be/fedora/3/en/i386/dag/repodata/filelists.xml.gz
# wget --cache=off http://apt.sw.be/fedora/3/en/i386/dag/repodata/primary.xml.gz
% wget --cache=off http://apt.sw.be/fedora/3/en/i386/dag/repodata/repomd.xml

Each wget is one line up to the filename at the repository (in this case, apt.sw.be) site. If you have problems with other repositories, find the corresponding files for your distro at the repository site and grab them the same way. Note: RPM keys are cryptographic site keys that permit manual or automated verification of the program content. This ensures that the program you're installing is, in fact, a legitimate download from the repository you downloaded the file from, rather than malware added to the site. In this case, one adds them to the yum environment so that yum will do the automatic verification. Next, here's how to add the rpm keys:


# rpm --import http://download.fedora.redhat.com/pub/fedora/linux/extras/RPM-GPG-KEY-Fedora-Extras

The above is one line starting with rpm. If that's not what you see, the line wrapped in your web browser. Repeat as necessary for any other repository keys you need from any sites/directories you don't have. For example:


# rpm --import http://rpm.livna.org/RPM-LIVNA-GPG-KEY
# rpm --import http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt

While I've read warnings for years about "mixing repositories" between Fedora/Livna and dag/atrpms, I had to mix them anyway. Each has apps the other didn't. I have had no significant problems so far as a result. Your mileage may vary. The basic "mixing repositories" problem is that there are two Fedora Core developer communities. One maintains fedora / fedora extras repositories (default installations), and the other maintains the dag and atrpms repositories. They are largely duplicate, but as I said, each has applications the other doesn't. The main problem this causes for users is that applications / dependencies from the two are not guaranteed to be interoperable (even though they mostly are). It's an unnecessary nuisance for users caused by developer-community politics. If you do have a problem, with mixed repositories you can disable a repository like so:


# yum --disablerepo=repo_name_here

Once you've finished fixing yum, upgrade udev to the latest version. Udev is the program in FC3 that manages communications with external devices. Do it like this:


# yum update udev

Congratulations, you've completed a Fedora Core 3 installation—with the major program components that broke during the upgrade all fixed. You also have a Win4Lin-prepared kernel installed.

This is Part 1 of a two-part Recipe. Part 2 will show how to install Win4Lin/ Windows over FC3, update the FC3 installation, and finish the post-installation cleanup. A. LIZARD is an Internet consultant in the San Francisco Bay Area. He has been writing for technology magazines and Web sites since 1987.

Never Miss a Beat: Get a snapshot of the issues affecting the IT industry straight to your inbox.

You May Also Like


More Insights