I recently upgraded my laptop, a Dell Inspiron 8200, to Fedora Core 3. Fedora Core 3 is a widely used Linux distribution that is the successor to RedHat Linux. If you are unfamiliar with Fedora, you can learn more at the following URLs:
This article is a review of Fedora Core 3, and takes the form of a description of my experiences upgrading my laptop machine. The experiences described here actually took place over the course of several days, but I will not always present an exact chronological sequence of events, but will instead smooth out the narrative some for the sake of clarity, while still giving you a fair sense of how long each stage took.
The big drama in this event was my desire to actually get a number of devices up and running on a laptop so that I could write this review. You should understand that Linux was originally a server OS, not a desktop OS. Furthermore, laptops present more challenges that do desktops. As a result, I was setting the bar high by asking Linux to perform not as a server, but as a multimedia workstation, and to run not on a desktop machine, but on a laptop.
In the past, I will confess that I often relied on Windows to perform certain tasks. For instance, if I couldn’t burn a CD, rip CDs, or play music on Linux, well, there was always a Windows machine around somewhere for those tasks. I just used the Linux desktop for programming and creating documents, tasks for which it was well suited. But my goal here was to write a review of Fedora Core 3 as a multimedia workstation, which meant I had to actually get my multimedia tools up and running on a Linux laptop.
Further impetus was provided by the fact that I also have been using my Linux laptop at work, where I really only have good access to one machine at a time. That meant my laptop was playing a larger role in my life than it had before. In other words, there was no Windows machine to turn to at work if things weren’t working for me.
The one final note I should add is that I am the sole Linux user in a very hardcore Windows shop. I had absolutely no one to turn to for advice. I had to figure everything out by taking strange and unusual steps like reading manuals and browsing the web.
So all bets were off this time. I was going to dedicate some time to seeing if I could get my laptop into a truly functional state using Linux, and Linux alone. As you will see, I ended up having a fair amount of success, but the price I paid was high. In short, I could do what I wanted to do, but it wasn’t easy.
Linux has always been a better server and networking platform than Windows. It has always been faster and more stable than Windows. For several years now it has had OpenOffice, a tool that opens, edits and saves Microsoft Office files and that competes reasonably well with Microsoft Office in terms of functionality. In the browser world, both Mozilla and Firefox are well ahead of Microsoft’s Internet Explorer. Just these features alone represent reason enough to leave Microsoft Windows and switch to Linux.
But my goals were not to test the tried and true features, but to push the envelope with the multimedia features. As a result, I don’t spend much time in this article talking about reliable, well tested features such as networking, OpenOffice and Mozilla, all of which work beautifully without any tweaking on the user’s part. Instead, I’m going to focus on the parts of Linux that still need work.
I should also add, that I was working with a machine that had limited disk space. As a result, I did not elect to install everything during the initial setup. This meant that there were some things that I had to install manually that the Fedora Anaconda installer might have done for me automatically. However, taking a similar step on Windows would not have been nearly as time consuming.
Some features that will interest many readers are not tested in this review. I think the most important omissions are wireless networking and scanning. Basic USB functionality is flawless with the new kernel, and I had no trouble using a USB mouse.
Because of disk space issues, I wanted to repartition my laptop. As a result, I began the process by creating a huge tarball of my entire user directory, wrapping up all of /home/charlie into one compressed file. I then used SSH to copy that file to another system. (An alternate technique would have been to to use NSF to connect two machines and then iteratively copy the home directory to the second machine, but it is generally simpler to create a big tarball.)
Once I had backed up my home directory, I downloaded the latest Fedora Core 3 ISO files from http://www.linuxiso.org. There was a DVD image of Fedora Core 3 on the site, but I do not have a DVD burner, so I opted to download all 4 CD images. I started the copy before I went to sleep and woke up in the morning to find all CD images had been downloaded to my Windows machine. I then used tools on my Windows box to burn all four ISO images to CD, and popped the first one in the CD ROM drive of my laptop and rebooted.
My system came back up automatically into the Fedora Core 3 install program welcome screen. More out of habit than any real need, I ran the install program in text mode. It has been years since I have had any trouble running a Linux install in graphics mode, but habit led me to type in the word text at the prompt on the first screen, and to then press enter to enter the install process proper in text mode.
I ran across my first problem when I ran the media check on the first CD. It came back reporting that there was something wrong with the CD. I tried it again, and got the same result. So I downloaded the MD5 SUM value for the CD image I had downloaded and used md5summer.exe to confirm that I had downloaded a valid image. The image was okay, so I assumed the problem was in the burn of the CD. To fix the problem, I burned the CD a second time, but when I tested the new CD I found that I had the same problem. By that point I was out of patience, and so I elected to go ahead with the install, regardless of the report on the CD image. Since the install then proceeded flawlessly, I suspect that there may be a bug in the CD media check application.
Because I wanted to repartition, I completely reformatted my hard drive, and installed an entirely new image. The process went smoothly, and in 30 or 40 minutes I was up and running with Fedora Core 3. I then copied back the tarball of my home directory, and restored most of it. This allowed me to preserve all my settings for things like my email and web browser. As a result, I was up and running in a fully functional state in a very short order.
First Impressions and Updating
My first impression was good. When I first signed in, the Gnome desktop was active. I still prefer KDE, though the differences have become much less stark. So I ran SwitchDesk from the shell prompt to switch over to KDE. I booted up smoothly into KDE with everything looking fine.
The next step was to make sure everything was up to date. To update the system, I found it simplest to go to the command line and and use yum:
Of course, before running update you should download an up to date yum.conf file. I got mine by heading first to http://www.fedorafaq.org/, where I found a link pointing to the latest yum.conf file, which I copied over the existing one in my /etc directory. This process was eased considerably by the presence of FireFox as the default browser. FireFox has a fantastic facility for searching through the contents of a web site. The little search prompt that appears on a status bar at the bottom of the browser offers a significant improvement over the search dialogs in Mozilla, or in the Evil Empire’s browser.
Taking a Look Around
With the system installed and updated, I was ready to take a look around. I soon found out that all my major apps were running perfectly. The browser and mail settings were preserved perfectly. OpenOffice ran smoothly. Compilers such as gcc and Python were installed and in perfect working order. In short, were I not trying to use the machine as a multimedia desktop, I would have been happily up and running in very short order. The Linux install and the basic desktop functionality was in perfect working order. If you left the multimedia business out of it, Linux and Windows were on a par in terms of ease of use and functionality.
The next thing I noticed was that there was a nice little icon on the system tray showing the state of the battery for my laptop. For some reason, this gave me a sense of comfort, as if there were thoughtful programmers working somewhere who had actually considered the possibility that users might be running Linux on a laptop.
Beneath the battery icon was a tool called KwikDisk. From inside this tool, I could launch KDiskFree, a tool that enabled me to get a graphical report on free disk space and also to mount floppies and cdroms.
The whole process of mounting floppies and cdroms on Fedora Core 3 confused me, since their mount point is no longer /mnt/floppy and /mnt/cdrom, but /media/floppy and /media/cdrecorder. This seems like a simple enough change on the surface, but it was very confusing to me when I went to the /mnt and found only an empty directory, with no familiar floppy and cdrom subdirectories. It seems like a small thing, but I was stumped at first, and had done silly things like issuing arcane mount commands such as: mount /dev/hdb /mnt/cdrom. This worked well enough, but it was not a very satisfying experience. Now that I had found KwikDisk, this mystery was resolved, and I found it easy to use floppies and CDROMS and to work from the /media rather than the /mnt directory.
The next step was to pop in a CDROM and see if I could play some music. I put in the Garden State soundtrack, and a moment later I was listening to ColdPlay sing Don’t Panic. Looking around a bit more, I saw that there was a tool under the Sound & Video menu called Sound Juicer. A few moments later I was using Sound Juicer to rip the CD to the default OGG file format. There were also options to rip to MP3.
If you want to play MP3 files in xmms (Sound & Video | Audio Player), enter the following command:
yum install xmms-mp3
I also installed mplayer so that I could watch Quicktime movies and listen to music stored in Microsoft formats. Finally I added the Linux version of RealPlayer10, which allowed me to view yet more movies and listen to yet more online music. You can also use the Package Management tool to install the HelixPlayer, which is nearly identical to, and which forms the basis for, RealPlayer10. You can access the Package Management tool through the System Settings | Add Remove Applications menu.
All of the steps described here took time to perform, but none of them were particularly troublesome. As a rule, I was able to perform each task for the first time in under 15 minutes. This is much longer than it would have been in Windows, but not particularly painful. Probably the most complicated single step was installing mplayer. After doing some research, I went to the command prompt, became root, and typed:
yum install mplayer-gui
yum install mplayerplug-in
After doing that, I went to the following site and watched a video:
I was also able to listen to music streamed for the Microsoft Media player. For instance, I could listen to the short previews you find for CD tracks on Amazon. In general, I found that mplayer worked, and provided a valuable service, but that it was a bit unstable when shown in a browser. In particular, attempting to move off a web page while mplayer was running tended to result in nearly disabling my GUI for a period of several minutes. After a time, I was able to kill the browser, and everything returned to normal. However, I found that it was wisest to open a browser in its own desktop when using mplayer. That way the browser did not get hidden behind other windows, and I could more easily kill it if it locked up. When run in standalone mode, mplayer was more stable, but still not as efficient as other Linux tools, such as Rhythmbox or xmms. However, it does provide a very valuable service in terms of giving you access to a wide range of multimedia content.
As a final step, I successfully and quickly installed FlashPlayer 7. I will not detail that process as it has been working smoothly on Linux for years.
After testing multimedia features such as streaming, video and playing music, the next logical step would have been to see if I could burn a CD. However, I just wasn’t mentally ready for that yet, so instead I set about updating my graphics capability. This should have been a simple step, but there was considerable drama awaiting me in this area.
High Performance Graphics
The trouble I had with my graphics card was the most extreme that I encountered while working with Fedora Core. I had no problem with graphics at home, after my initial install. Nor do I have trouble with graphics on my desktop (non-laptop) FC2 and Mandrake machines. But I did have problems when I took my laptop to work. There I had trouble plugging into an emachines monitor (eview 171). There was no trouble if I wanted to use my LCD screen only, but trying to switch over to the emachines’ monitor after working with my Sylvania F97 monitor at home sent my screen output into blurry or pattern strewn fits.
As mentioned before, my laptop uses an Nvidia video card. As many readers know, Nvidia has not released the specs for their card. As a result, the drivers for Nvidia cards are supplied separately, and in binary form only, by Nvidia. This breaks the whole open source Linux philosophy, and means that the problems outlined here are due to the proprietary nature of Nvidia’s license, and not to problems with Linux itself. Nevertheless, the problems do exist, and many users encounter them.
I struggled with my monitor problems off and on for about two weeks, and fairly quickly found a painful, but effective work around. But a workaround is not a real solution. The real fix was to install the Nvidia drivers, a step which did not work properly for me on Fedora Core 2 when I downloaded the drivers directly from the Nvidia web site and attempted to install them using their easy to use custom install utility. In that case the install went smoothly, but the problem was not fixed. This time I avoided the Nvidia website and instead used Yum to update the drivers, issuing the following command:
yum install kernel-module-nvidia-2.6.9-1.681_FC3
Installing the drivers this way solved my problems. I was able to type startx and bring up X11 (the xorg version) with no troubles both at home and at work. If you are working with a different kernel, or if you have a different type of machine, you can type the following command to get a hint as to what you want to download:
yum info kernel-module-nvidia*
At this point, I thought all my troubles were past. But I got an error when I booted back up into KDE and tried to run tuxracer. When I tried to run tuxracer from the menu, the application closed suddenly without explaining what was wrong. I could not see the error message until I ran tuxracer from the command prompt. The error explained that I needed to read the following file:
cat /usr/share/doc/nvidia-glx-1.0.6629/README | less
Inside that file I learned I must edit this file:
In particular, console.perms contains the following line which needs to be deleted:
Finally, I needed to issue the following commands:
chmod 0666 /dev/nvidia*
chown root /dev/nvidia*
The end result was that I was able to switch back and forth between my two monitors, and I was able to run high performance 3D games such as TuxRacer.
Though I was now up and running, I still had troubles logging into my machine as myself, rather than as root. The best solution I could find was to restore the console.perms to original state, but to run the following command as root before accessing any high performance graphcs applications such as tuxracer:
chmod 0666 /dev/nvidia*
This means that with my machine in its current state I can log in and use both monitors with no trouble, but I have to run the chmod command once if I want to play any games that use high performance graphics. Hopefully this issue will be resolved soon. If it is, I will post a solution.
Burning a CD
I had never burned a CD from a LinuxBox before, and I approached this step with considerable trepidation, which turned out to be fully warranted.
I began by making sure that K3b, the excellent GUI front end for cdrecorder, was installed. If K3b is not available on your system, you can use the Add/Remove Applications tool from System Settings menu to install it, or else type the following command as root:
yum install k3b-mp3
To make a very long story short, K3b is easy to use, but it did not work on my system because the underlying cdrecorder application that ships with FC3 was broken on my machine. I fixed the problem by downloading the original version of cdrecorder by author Jorg Schilling from his site. The version that ships with Fedora has the word Clone in its version number:
Schilling’s version, however, does not:
Cdrecord 2.0 (i686-pc-linux-gnu) Copyright (C) 1995-2002 J�g Schilling
Unfortunately, Schilling’s version did not work correctly with K3b. This meant I had to do my work from the command line. To proceed, I first created an ISO image of the files I wanted to burn to my CD. I did this with the mkisofs program:
mkisofs -r -o GardenState.iso Garden_State/*
This produced a file called GardenState.iso. This file contained an image of the directory containing all my OGG files from the Garden State soundtrack.
I then mounted the iso file to be sure that it actually did, in point of fact, contain the OGG files from my Garden State CD:
mount -t iso9660 -o ro,loop=/dev/loop0 GardenState.iso bar/
I then ran the following command to burn my CD:
cdrecord -v speed=4 dev=/dev/hdb -data GardenState.iso
To my utter surprise, this worked flawlessly. I burned all the OGG files to my CD as data files. I then mounted the CD and played the songs successfully. You could have knocked me over with a feather.
Networking: Samba and NSF
I haven’t used Samba in years, and had trouble with it in FC2, so I was hesitant to test this functionality. Figuring that I had to make an effort for this review, I first went to the command line, and typed:
smbclient -L 192.168.1.7
I was then prompted for a password, entered it, and immediately got a list of shares from my local Windows machine. Emboldened by this success, I brought up the well designed Konquerer, and typed smb://192.168.1.7 in the address field. I was immediately presented with a hierarchical view of the shares on my Windows machine. Browsing through the shared folders was fast and simple. For instance, there was no perceptible delay from the time I pressed the plus next to the word SharedDocs and the time when I saw a list of folders and files in the SharedDocs directory.
I then proceeded to copy a file from my Windows machine to my Linux laptop, and to copy a file from my Linux laptop to a share on my Windows machine that allowed writing. I did all of this with a series of right clicks and copy and paste operations between two convenient tabs in Konquerer. In Figure 1 you can see the tabs which allowed my to move back and forth between a view of my home Linux directory (charlie) and the Windows shares (smb://192.168.1.7).
Next I wanted to test NFS, the file system that allows one of several methods of sharing data between Linux machines. I opened my /etc/exports file and typed in the following:
/home -r 192.168.1.61
The command shown here states that I want to share my /home directory in read only mode with any machine that has the IP address 192.168.1.61. Then I started my NFS service, which I normally keep shutdown because of security reasons:
Finally, I went to the System Settings menu and opened my easy to use GUI based Security Level tool and turned off my firewall.
I then went to my Linux machine with IP address 192.168.1.61, and typed:
mount 192.168.1.62:/home /mnt/share
I was immediately connected to the share on my remote Linux machine. Acting as a user with the same UID as the shared user directory on my FC3 machine, I was able to access the files on my FC3 machine and copy some of them to the local machine. Because I had set permissions to read only (-r), I was not able to copy files back.
Satisfied that all was working correctly, I unmounted the shared drive, turned the firewall back on, and stopped the NFS service.
I won’t detail the process here, but I also had success when using the much more secure SSH protocol to move files back and forth between machines. In general, for security reasons, I much prefer to use SSH rather than NFS.
Obviously I have included this section to remind everyone that the non-multimedia features in Linux usually work smoothly out of the box. Even many of the multimedia features run smoothly out of the box. The problem I was facing was getting them to run smoothly on a laptop.
In the end I have mixed feelings about Fedora Core 3. I’m very pleased that I can have easy access to a powerful office suite like OpenOffice, and to all of Linux’s advanced networking capability, to its astounding stability, to its fine browsers and to its mail servers and clients. The addition of yum to the Fedora Core distribution has also been a major breakthrough. Many troubling install problems are now resolved quickly and easily with yum.
I am also amazed that I am finally able to watch movies, listen to music, and burn CDs on my Linux box. This is a huge accomplishment.
Unfortunately, I believe that the key multimedia features in Fedora Core 3 still need work. A non-technical person would have little chance of getting them up and running, and even a talented user from the Windows world would find it a challenging and time consuming process. I’ve been working with Linux for years, and it took me well over eight hours to get the right movie clients, music clients, and video drivers installed. Better problem solving skills would have helped me, as would more experience with Linux, yet still this is not a good situation. I am well aware that my experiences should help make the process much easier the next time through, but the first time through was a bit of a challenge.
The bottom line is this: if you are a power user, or a developer, you will be able to get Fedora Core 3 and everything you want. If you want to watch movies, rip CDs, listen to music, browse the web, create documents, or develop software, then you will find all the tools you need on Fedora Core 3. There is no longer any need to feel that you have to stick to Windows just to get the full range of features from your computer. However, Fedora Core 3 is still not ready for the mass market. In that world, computers are a commodity, and they are expected to work smoothly out of the box. An experienced user can get Fedora Core 3 to run smoothly, but it doesn’t occur automatically just out of the box.