Upgrade to Fedora Core 3, Part 2
Before we begin, here are a couple of pre-installation notes. First, If you want to keep your installed applications and any data you've kept in the /win tree, back it up (if you haven't already). Second, you're reinstalling Win4Lin and then Windows from Win4Lin, so the process is basically the same as the original installation. Third and most important: Any user information on /home/username/win (including installed programs) will be trashed when the directory is replaced in the course of the Windows installation.
To get started, find your Windows registration key and the installation disk. Find your Win4Lin software registration key—if you downloaded yours, your registration key is probably in your e-mail directories somewhere. Also find the Win4Lin setup program on the drive, or the installation CD if you bought a physical package. Registration keys where required are part of the user documentation in Linux as well as in Windows or any other OS.
To start the Win4Lin installation process:
# cd [wherever win4lin-setup is] # win4lin-setup
When the Win4Lin installer asks for permission to update the installer or Win4Lin itself, select Yes. Enter the registration information and key. Insert the Windows installation disk when it tells you to. Next, write your /username/win directory back if you need to. If you copied it from a working Win4Lin installation to begin with, you should be able to write it right back without a problem. This beats reinstalling all the Windows software, which is presumably the reason you're running Win4Lin/Windows to begin with. I've had just one problem with this FC3/Win4Lin upgrade: audio playback from within Windows programs. There's a random interruption and weird echo in the sound, though the video seems fine. While I think the audio is fixable, for me, it's not worth fixing. My multimedia playback in FC3 is good enough, so there isn't any reason to use Windows Media Player or Apple Quicktime. Since my system was up and running, I've seen only one or two files the Linux multimedia playback couldn't handle.
Updating the Installation# yum upgradePart 1 of this Recipe $ rpm "qi
This dumps the content of the installed RPM descriptions to the terminal. From the terminal (I'm using KDE Konsole) menu: Edit > Save History As > filename (/path/to/filename whatever convenient). Then scroll through the file looking for files that are over 10 MB, and ask yourself whether you need them. If you don't, open a text editor and list the files you don't want upgraded. When up2date produces a list of files to upgrade, uncheck the corresponding application entries. But if you don't understand what a listed program does, don't change it! You might accidentally delete a file critical to the operation of the OS, or part of an application you might really, really miss.
One of the few compensations of upgrading this way is that you might discover programs you never knew you had. For instance, I discovered my Linux distribution included speech-synthesizer software.
I revisited up2date and realized the problem was a repository conflict with the version of yum I installed. Note the bottom line in the Warning prompt, shown in the screenshot below. I simply unchecked yum, meaning "do not upgrade," and the problem disappeared.
To run it yourself, do this: Start > System Tools > RedHatNetwork (System Update). It'll open a root password prompt and put you into a wizard. By default, up2date won't try to update/replace a newly installed kernel, like the one you just patched and installed for Win4Lin.
When run, up2date will go through the list of installed rpms, then compare that list to the list available on the update servers listed in the up2date configuration file. Then it will download and install the programs that match both lists. The configuration can be modified to add other upgrade servers; the default is fedora/fedora-extras. To avoid repository conflict issues, I suggest leaving it that way.
Backups and Drive Configuration
There are problems with the drive device autoconfiguration feature of FC3. This shows how to turn it off and manually configure the drive devices, should you need to do so.
* Mirror drive: If you did your backup setup as an exact mirror drive according to the instructions in Cloning a Linux Hard Drive or the earlier Back Up Linux Workstations -- Without Tears, Fedora Core 3 will crash during boot. That's because the new auto-detection system for drive-type devices does not tolerate identical drive names. If you didn't set up a drive mirror, you can skip the rest of this section. Otherwise, read on.
The OS generally needs to be told about a drive-type device—for example, hard drive, USB mass storage as used in a digital camera, or C/DVD drive—when you install it. But since that is relatively infrequent, there's no reason not to turn it off. If you need to turn it off to make a drive mirror work, you can add entries to the fstab file that defines available drives. Or you can use the mount command to temporarily mount a device. But first, you'll have to tell the new hal drive configuration daemon not to update fstab. The basic command is:
ln -s /bin/false /etc/hal/device.d/50-fstab-sync.hal
If that fails, follow along with my root terminal session below, and do what I did:
ln: `/etc/hal/device.d/50-fstab-sync.hal': File exists [root@terrarium ~]# ls -al /etc/hal/device.d/50-fstab-sync.hal lrwxrwxrwx 1 root root 20 Apr 13 01:24 /etc/hal/device.d/50-fstab-sync.hal -> /usr/sbin/fstab-sync [root@terrarium ~]# rm /etc/hal/device.d/50-fstab-sync.hal rm: remove symbolic link `/etc/hal/device.d/50-fstab-sync.hal'? y [root@terrarium ~]# ln -s /bin/false /etc/hal/device.d/50-fstab-sync.hal
Then, you'll have to change fstab to map to device names instead of to LABEL. In the fstab configuration file, a sample is shown below. It's unlikely that your setup will match mine, given that my Windows drive was left in its original /dev/hda location. I boot to it so rarely that I simply select it from the BIOS, as it wasn't worth the trouble to put it in grub.conf. My Linux primary drive is /dev/hdb, my DVD burner is /dev/hdc, and the mirror drive is /dev/hdd. Open the fstab file with a text editor as root, and save a copy of the original as fstab-old. Then change the fstab HD entries to match your system's drive mapping as necessary, and save it back to fstab. The first file is from my fstab-old configuration file. It shows where the problem is.
# This file is edited by fstab-sync - see 'man fstab-sync' for details LABEL=/ / ext3 defaults 1 1 LABEL=/boot /boot ext3 defaults 1 2
The second file is my current fstab. If you have a mirror drive, change the top two lines from LABEL to the physical device name, as shown here:
# This file is edited by fstab-sync - see 'man fstab-sync' for details /dev/hdb2 / ext3 defaults 1 1 /dev/hdb1 boot ext3 defaults 1 2 none /dev/pts devpts gid=5,mode=620 0 0 none /dev/shm tmpfs defaults 0 0 none /proc proc defaults 0 0 none /sys sysfs defaults 0 0 /dev/hdb3 swap swap defaults 0 0 /dev/hda1 /mnt/windows vfat defaults 0 0 /dev/hdd1 /mnt/linux_backup ext3 noauto,users 0 0 /dev/hdc /media/cdrecorder auto pamconsole,ro,exec,noauto,managed 0 0
Note that each entry between the device name on the left and the two digits at the right (usually 0 0) is a separate line, no matter how the lines got wrapped on this page. Upgrading Programs
The following takes you through the programs you'll need to upgrade separately.
- Scanner: Update the back-end for your scanner via:
# yum upgrade sane-backends.
- You're still going to have to unplug and replug the scanner before scan programs like xsane or Vuescan will recognize it.
- DVD backup via dar: The old script works unchanged. However, you'll have to make sure your DVD burning software is FC3-compatible.
- CD/DVD burning software, K3b: You must upgrade this software separately, as it comes from a repository that wasn't covered in the earlier update steps. Don't use the downloadable rpm instead of repairing it manually—even though you'll want to let yum fix for you using its automated resolution of dependencies. (It finds programs the program you want to install depends on to run, downloads them, installs them, then installs the program you'd intended to install.) You'll have to add a new repository entry from the xcyb repository site so yum can upgrade this for you. Do this by following these four steps:
- Open a text editor as root.
- Cut and paste into it:
[xcyb-stable]
name=Fedora Core 3 ( xcyborg / stable )
baseurl=http://rpms.xcyb.org/fedora/3/stable/
[xcyb-bleeding]
name=Fedora Core 3 ( xcyborg / bleeding )
baseurl=http://rpms.xcyb.org/fedora/3/bleeding/
-
- Save to
/etc/yum.repos.d/xcyb.repo
-
- Then type:
# yum upgrade k3b
- When you copy a C/DVD, you may find that the C/DVD burner won't pop out the disc automatically when it's time to replace the media you're recording from. You may also find that the eject screen button fails, or that the eject on the drive itself fails. If so, use the eject program from a terminal to pop out the disc. Invoke the eject program by opening a terminal as root and: # eject. Presumably, as long as the disc pops out, you won't care about the error messages.
- Palm PDA: If you got the pilot-link back-end program correctly and JPilot working via build-from-source with --libusb configured, PDA synchronization with JPilot works just fine in FC3. The external flash card should work the same way that it did in FC2, too. Unfortunately, if you installed pilot-link using visor module hotplugging, I can't help you. I spent weeks trying to make it work on FC2, to no avail.
- USB mass storage cameras: You should be able to simply plug it in and have camera software automatically opened—assuming you use gphoto2, digikam, etc., with your current camera, and that your program of choice worked in FC2. If it doesn't work, upgrade these camera interface programs via yum. Otherwise, you should be able to mount your camera as follows:
# mount "t /dev/sda1 /mnt/camera
- This assumes that you have already created a /mnt/camera directory. But if you haven't, do this:
# cd /mnt
# mkdir camera
- Fast Shutdown: This saves time when first logging out to a login screen and then shutting down from there. Here's what you should do:
- Create a root icon for /sbin/poweroff. First create an applications icon on screen by right-clicking the desktop and selecting Create New > File > Link to Application .
- Enter shutdown into the text box in the Properties box. This will be the text label on the icon when you've finished creating it.
- Enter the poweroff command into "Commands" in the Applications tab.
- Push the Advanced Options button.
- Click on User - "Run as a different user."
- Enter root.
- Click OK.
Next time you want to shut down, click the icon, enter the password, watch an inaccessible terminal screen flash briefly "system is going down NOW!"—and the computer will shut down in a few seconds. Make sure you've saved whatever you were doing. Once you've entered the password, you're irretrievably committed to shutdown. Since this is a clean shutdown, you won't see the system tell you there's a filesystem problem and offer to run e2fsck on your next startup. If this doesn't work for you, try: Start > KDE Control Center > Session Manager > Default Shutdown Option > Turn off computer radio button. If KDE isn't your window manager, open a terminal and read the poweroff man file:
$ man poweroff
At this point, you should have a working and debugged Fedora Core 3 installation with all upgrades available in place. If you or your users have had stability problems relating to Fedora Core 2 or installed applications on Fedora Core 2, they should be gone.
SIDEBAR: The Future for Fedora Core and Windows Virtualization
While I'm relatively happy with the Fedora Core distributions, this is the last time around for me with Win4Lin.
Win4Lin 9.x works extremely well as a virtual Windows environment, but customer support is inadequate, and they're about to stop selling it anyway. This is sold as a product intended to make the transition from Windows to Linux simple. A product that's supposed to be intended for Windows users making the transition to Linux should not require installation by a Linux expert! Further, Win4Lin has stopped supporting distribution-specific kernels. Paying customers have been told to figure out how to patch their kernels, and that their problems will be solved if they upgrade to the more expensive yet functionally inferior Win4Lin Pro.
If Win4Lin were an open source product, I might be willing to spend several hours patching a kernel every six-month (or less) Linux distro upgrade cycle. However, since it is a commercial product, this doesn't make sense.
One of the biggest advantages of running Linux and Windows applications at the same time is the ability to use the clipboard to pass information between Linux and Windows apps. This is the most important difference between using the old Win4Lin and a dual-boot system. In fact, this persuaded me that I could finally put together a Linux environment that would usefully integrate my legacy Windows software. It's really too bad that Win4Lin Pro doesn't support this. In fact, it's a deal killer for me. Plus, it has other less important problems; read about them in Win4Lin Pro 2.7 release notes. But at this point, I don't care if they ever get solved; my patience has run out.
In future, I'll be looking at VMware. The company's VMware Player is freeware and will run certain pre-built OS host configurations, including FC4, FC5, and most major current Linux distributions, as well as most versions of Windows (as guest OSes, with kernel modifications provided by VMware). Of course, it also supports clipboard cut/paste between host OS and guest OS applications.
You can find a brief discussion of one user's experiences with VMware Player and Windows 2000 in the form of a Slashdot post. If I'd been aware of this before I wrote this Recipe, I might have tried to upgrade this way instead. The main difference between VMware Player and the full version is that the full versions allow creation of virtual environments. Also, the Player requires modules created on the full version.
I suspect I'll actually put off Fedora Core upgrades until the next-generation CPUs and motherboards arrive, providing hardware support for Xen virtualization—including supporting a Windows session—in the consumer price range. Otherwise, I hope that by the time I get my next motherboard/next-gen CPU with hardware virtualization support, Fedora Core 7 or 8 will have this in place, right out of the box. Or, less likely, professional quality Linux graphics applications and a Eudora for Linux mail client will at last become available, making Windows emulation a permanent non-issue. By then, I hope to see better GUI installers enabled by default and a great many more available peripheral drivers. (Perhaps it's time for IBM to start leaning on vendors?)
It's worth noting that over the last year, I have intentionally demonstrated with my series of TechBuilder Recipes that one can do practically anything with a Linux workstation that a typical user would want to do—as long as one has either detailed instructions or the willingness to do a lot of research. These apps include full multimedia access, a Windows emulator to run legacy programs, and a printer running that can't be run out of the box either with bundled software or with the CUPS software included with my Linux distro. I've even got a Palm desktop running.
I hope I'm not the only person who realizes that desktop Linux will never become a mainstream product until it is as easy to install as Windows. An OS that requires extensive work at the command line and massive research to make it work is beyond the scope of most users. Well, here's to hoping.
Additional Resources
To get more information on setting up FC3 the way you want it, check out these additional resources:
- The Unofficial Fedora FC3 FAQ: Here you'll find general information about Fedora Core 3.
- Personal Fedora Core 3 Installation Guide: A good site for detailed explanations on a specific FC3 configuration.
- Fedora Core 3 Release Notes: Red Hat's official page on FC3 release updates and news.
This is part 2 of a two-part Recipe. Part 1 shows how to upgrade Linux systems and enable these systems to also run Windows applications.
A. LIZARD is an Internet consultant in the San Francisco Bay Area. He has been writing for technology magazines and Web sites since 1987.