Notes on Migrating to Fedora Core x86_64
Two scary things happened while running the Fedora installer to perform the upgrade. First, it said that I was trying to install i386 architecture on an x86_64 system and it wasn't likely to work. What scared me most about the message is that it got it exactly backwards. I didn't find the message itself too scary, it was probably just noting the architecture mismatch between what was currently installed and what I was trying to do. The fact it was backwards, however, suggested I was doing something that wasn't well tested.
The second concern is that it said that it couldn't understand my boot loader installation, and it would have to do a new one. I proceeded, because it would be fine if it replaced the boot loader with a fresh installatoin. It even quizzed me on what to do, and I confirmed the default (install Grub on the MBR of the first disk).
Then the upgrade began. It went fine. It took about half an hour and required use of all four Fedora CDs.
Somewhere during the upgrade process I lost my mouse. The installer simply stopped recognizing it. I had been switching console screens (CTRL-ALT-Fn) to peer in on the system status, and I suspect it got lost while activating-deactivating X. Fortunately, from that point on, the only interaction needed with the installer was striking ENTER after loading a CD.
The upgrade finished, the final disc ejected, and the system was ready to reboot. That's where the troubles began.
The system couldn't even start the boot loader. All it did was endlessly fill the screen with GRUB GRUB GRUB.
(Note: below, when I specify commands that I typed, I'm doing so from memory. Please double-check these instructions, as there are sure to be errors of recollection.)
I inserted the Fedora disc and booted into rescue mode (type: linux rescue). I switched to the hard disc root (type: chroot /mnt/sysimage) and re-ran grub (type: /sbin/grub) to re-install the Grub boot loader. I pretty much followed the steps in the manual:
grub> root (hd0,0) grub> find /grub/stage1 grub> setup (hd0)
When I rebooted, Grub ran fine. It saw my Linux installation and started booting it. Very early in the boot, however, things went awry. It complained about being unable to load certain modules, and failed to start certain systems such as LVM, and finally paniced while trying to mount the hard disk root.
I realized the problem must be with the initrd (initial ram disk filesystem) that the system loads at initialization. This system uses SATA drives and LVM, which are all things that need to be setup before the hard disk can be accessed. My guess was that somehow the upgrade failed to build me a proper initrd.
I rebooted to rescue mode again, did the chroot onto the hard disk, and ran:
/sbin/mkinitrd /boot/initrd-2.6.9-1.667.img 2.6.9-1.667
Now, when rebooting, everything came up fine. The system completely booted, I was able to log in, and start up an X session. Some programs, however, are not working correctly. There appears to be a lot of confusion between the 32-bit and 64-bit libraries.
One of the broken commands is yum, which is used to do package updates. If I try to run it, it says:
Traceback (most recent call last): File "/usr/bin/yum", line 6, in ? import yummain File "/usr/share/yum-cli/yummain.py", line 23, in ? import yum File "/usr/lib/python2.3/site-packages/yum/__init__.py", line 33, in ? import groups File "/usr/lib/python2.3/site-packages/yum/groups.py", line 3, in ? import comps File "/usr/lib/python2.3/site-packages/yum/comps.py", line 5, in ? import libxml2 File "/usr/lib/python2.3/site-packages/libxml2.py", line 1, in ? import libxml2mod ImportError: /usr/lib/python2.3/site-packages/libxml2mod.so: cannot open sharedobject file: No such file or directory
The libxml2mod.so file is there. I think the problem is that it is an "ELF 32-bit LSB" library, but python2.3 is an "AMD x86-64" program.
So, this weekend I need to sort out the confusion over the libraries. (If I find the answer I'll post an update. If anybody knows the answer please post a comment.)
The next problem after that will be to figure out how to get Firefox running. It too is complaining about libraries, and I'm having to use an older version of Mozilla. (Yeah ... poor, poor pitiful me.)