Normally I don't review very early test releases of software, but the opportunity to test drive Fedora's first distribution based on the 2.6 kernel was too irresistible to pass up.
I run a variety of distributions on my boxen, including Red Hat 7.3, Fedora Core 1, and White Box Enterprise Linux. Red Hat recently released the first test release of Fedora Core 2 and I had to break with tradition and try this one out.
The download via BitTorrent was quick and painless for my DSL connection. I averaged around 80KB/s down for the duration of the download. Once I burned the 4 CDs, I was ready to go. I chose to test both the upgrade path from a stock FC1 box, as well as a fresh install.
Updating from Fedora Core 1
The upgrade installation went quite smoothly. The system correctly detected what programs were already installed and it happily upgraded me with a minimum of questions. One difference from Fedora Core 1: the installation program does not eject the CD when it needs the next one, so you have to push the button yourself. I'm usually working on my laptop during the install, and I listen for the noise of the CD-ROM drive opening to alert me that it is ready for the next disk.
Once the system was upgraded, I rebooted and excitedly watched the new 2.6 kernel bootup messages. Unfortunately, the upgrade didn't go well: FC2t1 didn't correctly update many of my system configurations, viz. XFree86.
I had to manually update XFree86 to point to the new device for my mouse, which was to change from /dev/psaux to /dev/input/mice. Also, the mouse wasn't working with my USB to Bus converter, so I had to plug my USB Mouse directly into the USB port and reconfigure it.
The PC speaker was disabled (I miss my mutt beeping at me when I get new mail) and I was not able to figure out how to re-enable it. Apparantly this is a kernel option (Drivers->Input->Misc->PC Speaker) that Red Hat chose not to enable. I hope they repent of that with the final release.
Although the bitstream-vera-fonts RPM was installed, the fonts were not showing up in X. I had to manually copy over my bitstream-vera fonts from /usr/share/fonts/bitstream-vera/ to /usr/X11R6/lib/X11/fonts/TTF (and run ttmkfdir and restart xfs and X) in order to get them to appear.
My soundcard wasn't working. With the recent change from the old OSS sound system to the new Alsa system, there are many changes to the sound support in the kernel. Red Hat clearly has not made fixing the sound a big priority yet, but I am confident that this will be straightened out in the final FC2.
So, the upgrade having been tested successfully, it was time to see how a fresh install would do. Back to step 1. The installation went well, giving me the usual control that I expect from a modern distribution installation program. I was able to control the disk partitioning, and they gave me a very nice interface to select the applications that will be installed. I chose the desktop option, and then customized it to add my development libraries and various other tools, and then went out to feed the chickens. Came back in, change the CD, and then went and did some gardening. Repeat the step through disk 3. The system needed disk four at the end for less than 30 seconds.
The reboot went well, and when the system first came alive, it walked me through a nice post-install screen in which I added a user and did some last minute customizations to the system. That being done, I was released to a gdm login screen where I logged in as my newly created user and came directly up into GNOME 2.5.
The first thing I noticed was my mouse was working correctly this time, but the screen was at 1024x768 resolution, although my system is capable of 1600x1200. I clicked on the Fedora button, went to System settings, and then clicked on Display. From that GUI I was able to change the resolution to 1600x1200. After an X restart, I was now up in 1600x1200, but the screen was flickering and there were all kinds of distracting artifacts on the screen. I checked the XF86Config file and, sure enough, it was running in 24bpp color, which was stressing my card to the limit. I had some trouble getting X to accept my changes - changing it directly in the XF86Config file was unacceptable; I had to do it via the same Display GUI.
Once X was running in 1600x1200 at 16bpp I was happy and the screen was its usual beautiful self.
As with the upgrade, the fonts weren't working. This time, rather than take the odious path of copying the fonts to some other directory, I simply added /usr/share/fonts/bitstream-fonts/ to /etc/X11/fs/config and restart xfs and X, and my fonts were once again available. They need to make the installation of that RPM automatically add its directory to the xfs config file.
The sound still wasn't working, although Red Hat's soundconfig correctly identified the soundcard but was unable to load the driver. After playing around with it for a while, I had to just give up, as I have no experience with alsa.
One disappointment is that it no longer ships with WindowMaker, which is my preferred window manager. I had to recompile my src.rpm and install, but that wasn't a huge problem.
Time to play
How does the new system, with the 2.6 kernel, do in the performance area? Time for some benchmarks! I took the January logfile from my Apache webserver to use for some heavy calculations. The file is about 600 megs in size, and the command I ran against it was:
$ cat logfile | cut -d" " -f1,13- | sort -u > /dev/null
On this system with White Box Enterprise Linux 3, it took 914 seconds to execute. On the same hardware (with the same disk drive) running Fedora Core 2 test 1, the same command took 816 seconds (112% faster). Additionally, during the former, the swap came into heavy use (even with 1 gigabyte of RAM), but on Fedora Core 2 test 1 the swap was never touched. Not bad!
With Fedora Core 2, Red Hat catches up with Debian and Gentoo by shipping SELinux (Security-Enhanced Linux). On a traditional Linux system, permissions and access control to files and processes are controlled completely by users. root is all powerful, and programs inherit a user's rights, meaning that when a program is compromised, that user is also compromised. In cases of a program run as root, that means the attacker has access to the whole system.
In the new SELinux method, access is provided by a security policy set by the administrator and enforced by the system. There is no "all powerful root user". How Red Hat will be configuring (and causing to be configurable) the SELinux system, however, is currently unknown. I had hoped that this test release would include all their SELinux additions, but it did not.
There was a selinux RPM installed, which contained 16 programs in /bin/, as well as the library /lib/libselinux.so.1. The control files in /etc/security/selinux are completely missing. ps -Z works, but ls -Z says "Sorry, this option can only be used on a SELinux kernel."
So, clearly, SELinux functionality does not appear to be very mature with this test. I'm hopeful that with the new release, I will be able to write a lengthy introduction review of this exciting technology.
When Red Hat announced that it was dropping its free Red Hat Linux and replacing it with Fedora Core, most people in the community wondered about the future of the distribution world. Fedora Core 1 surprised and delighted almost everyone with which I have spoken, and Fedora Core 2 test 1 seems to demonstrate that they are committed to providing another top-notch free distribution. The only thing preventing me from using Fedora Core 2 test 1 on a regular basis is the soundcard driver, but I am certain that this small issue will be resolved and FC2 will become my next full-time desktop distribution. Bravo, Red Hat!