These pages are about my experience with the Linux Fedora Test Cores. I hope to show some of the problems I had with these test releases and how I overcame them, or at least tried to make them workable. I am not a hardcore Linux user, so some of the things here are going to appear pretty basic to those who are. This isn't a complete tutorial on Linux - I'm only going to cover the bits that interest me and there are plenty of websites that explain and explore Linux far better than I ever could.
Why Fedora Linux?
Fedora is a project sponsored by RedHat. I'd been toying with the idea of trying a version of Linux for a while and a friend of mine, Andy Lawrence, first introduced me to Fedora. Being a new user of Linux, using an OS that is still evolving probably wasn't the most sensible thing in the world and I was warned repeatedly by the more experienced users in the Fedora Forums that there would be problems. They were right, but it's been worth it.
What a mess! Linux is so picky. The version of Fedora I installed was Core 4, build 2.6.11-1.1226 which comes on 5 CDs. I tried three different computers of mine to try this on, two of them simple wouldn't load the software. Admittedly the machines aren't the best in the world but even Windows 2000 loads on these computers. A worrying part of the installation was that some of the back / forward buttons wouldn't appear on the screen until the mouse was moved over the area on the screen they were supposed to be on (the bottom right hand corner). A bit worrying because if something as simple as this wouldn't work then what would the rest of it be like?
I'm used to Windows, so the disk partitioning screen was a bit daunting so I let Linux automatically format the disk for me. When asked for what files to install, because I want the computer to replace the "Server in the Cellar" and need things like the HTTP and FTP server I chose to install everything. After that it was just a matter of feeding it the disks until it reboots into Linux.
The first thing that Linux does is to load GRUB (Grand Unified Bootloader) this is a program that controls what OS you're going to use and what version of that OS. When you do updates to the system, each version is listed in Grub and so if you find a new version fails, you can always reboot into an earlier version, which hopefully will work.
When you boot Linux you can see most of the services starting and whether it was a success or a failure. I was surprised to find that there were two main failures, one was "Router Discovery" and the other was "CLVMD". Linux looks for routers on a local subnet, for some reason the daemon fails. A daemon is a service or background process, you can even write your own. CLVMD is the Cluster Logical volume Manger Daemon and I think it's job is to check for disk integrity. Neither, apparently are nothing to worry about. Most routers for SOHO use don't identify themselves properly to Linux
The next thing that happens is that you'll see a login screen. One choice it gives you is the called Session. Linux can boot into a command line, or into one of several WIMP (windows, icons, menus and pointing device) interfaces. I've got Gnome and KDE loaded. I like the Gnome GUI better of the two.
The Linux Gnome GUI
The login is something that caught me by surprise, you can use one of the usernames you created during the installation, but to gain full system control you need to enter "root" (without the quotes). This gives you the same rights as Administrator on a Windows machine. Like on Windows machines you shouldn't run the computer as "root" for day to day purposes but make a new username and use that.
The desktop then loads. One thing that is really nice about Linux is that it, unlike Windows, comes with a full set of productivity programs like Open Office, the free Linux equivalent to Microsoft's Office and GIMP a full featured image editor.
When I started using it, Fedora Core 4 was in the process of being developed. The CDs I used to first load the OS was version 2.6.11-1.1226_FC4, Linux has several different ways of doing the same thing, you can use whatever method you use find easiest.
In the top right of the screenshot above you can see a red circle with an exclamation mark in it. This is UP2DATE, Red Hat's updater GUI. My first use of it didn't work, looking around in some of the Linux forums, other people couldn't either. It's supposed to check the OS for files that need updating, except, for me at any rate, it didn't actually do anything or else just stopped working. This was later fixed in a later update - one of the problems of using beta software! So I now I've gotten used to using YUM from a command prompt.
YUM stands for Yellow Dog Updater, Modified and to run it you need to open a command prompt, or in the Linux world the Command Lne Interface or CLI. This is done by going to Applications > System Tools > Terminal. You can also open a full screen terminal by pressing CTRL + ALT + a F key from F1 to F6. To get back to the GUI from this full screen terminal use CTRL + Alt + F7.
I found I had to edit a line in the yum configuration file, yum.conf, which is in the /etc folder. I had to change gpgcheck=1 to gpgcheck=0. What the GPGCheck does is to identify the downloaded packages as being signed by the distributors. I think that changing the line is not a particularly safe thing to do, but I couldn't get it to work unless this was done.
To update the OS, at the command prompt type...
To automatically answer "yes" to all questions concerning the update process type...
yum -y update
I found I had a couple of problems using yum too. It complained of missing dependencies. One, struts11, took a time to solve and so I excluded it from the updates by typing...
yum -y --exclude=struts11 update
I eventually solved the error by uninstalling both struts11 and tomcat then reinstalling them.
Whilst I was poking around with the file system I managed to mess a couple of files up. Yum can remove and install new programs. One of the files I ruined was httpd.conf - the configuration file for the Apache web server. In Linux, this is actually called HTTPD (HTTP daemon). As I wanted to see how to completely uninstall and install programs anyway, I typed...
yum remove httpd
To reinstall it as well as python, webalizer and php I used
yum install httpd webalizer python php
All four programs were found on the servers, downloaded and installed flawlessly.
If you look at the yum.conf file there is a line at the bottom that says you can either type the servers that yum connects to at the bottom of that file or place text files named .repo in the /etc/yum/repos.d folder Looking at this folder you can see how the server information for yum to work is set out.
Up2date can also be started from the command prompt or CLI.
Once the updates are completed there is usually no need to restart the machine unless the kernel has changed.
If you're feeling adventurous and want to try the development software and new kernels then navigate to /etc/yum.repos.d and you should find 6 files in that directory. Three, fedora-extras.repo, fedora.repo and fedora-updates.repo, are enable by default. The other three, fedora-devel.repo, fedora-extras-devel.repo and fedora-updates-testing.repo aren't.
To enable these three files open them and change the line enabled=0 to enabled=1
Be sure to read the files, they include important information about how these repositories contain test software and may adversely affect your machine.
You may also want to get Fedora files from other depositories, such as DAG, FreshRPMS or Livna. These all can be used like the official Fedora depositories using YUM. Another good source of RPMs is PBone but I don't think this can be used like the others using YUM.
Try to use just one of the depositories as well as the official Fedora ones. File version numbers are not always consistent and some of the packages have been compiled with different options which may give more dependancy errors. I use Livna, which has some advantages, for example, Audacity from them is compiled with MP3 support and installing Xine is a lot easier than trying to sort out the dependancies yourself.
Using a new version of any OS can be problematic and Fedora is no exception. For example, after one update the network services refused to start. There are several ways to get around these problems.
1) Try rebooting into a previous kernel
2) Look through the yum log at var/log/yum.log and see which files were last updated. If, as in the example above, it is a network problem then you're looking for files that may affect that function. Once you have a possible offender(s) then you can look for and download a slighter older or newer version.
One confusing error occurred after an update when the error message
error: unpacking of archive failed
was seen. On investigation, this was caused because the disk drive was out of room. Usually when this happens the error message
Transaction Check Error: installing package xxxxxxxx needs xxMB on the /xxxxxxxx filesystem
However, the files in the hidden Trash system are not counted so the drive isn't technically out of space. The solution is to simply empty the Trash.
Command Line Interface - CLI
One very nice thing about using the command line is that Linux remembers the commands you last typed. You can access these by using the up and down arrow keys.
Linux has a huge number of programs that can be used from the CLI. Once you get used to them, I'm pretty sure that you'll remember the commands and switches - I did 20 years ago for DOS, and I still write batch files and use QBasic on Windows machines and the Linux commands aren't too different.
There is a good command called apropos. What this does is look through the file description of the various files and so gives a list of commands that are appropriate for what you want do. Suppose you want to look at the commands that list directories. Then you'd enter...
apropos "list directory"
If what you're looking for only contains one word, or even part of a word, then there is no need to use quotes. To find calendar functions, for example, then you can just use...
Apropos queries can also contain wild cards.
You can always look up more detailed information about what a particular command does by looking at the manual or help pages. To look at the manual page for a command then use...
to look at the help for any command use...
to look at a brief description of what a command does use...
This is one of the worst parts of using Linux. There simply aren't the drivers available for lots of hardware devices. It's also one of the main reasons I won't be giving up Windows on my PCs just yet. However, the purpose of this machine is to act as a web server, so I'm not worried about that.
This page created 20th June 2005, last modified 30th October 2005