Archive for December 29th, 2011
Upgrade Fedora 15 to Fedora 16
by balleman on Dec.29, 2011, under Linux
The desktop upgrade from Fedora 15 to Fedora 16 was about on par with the upgrade from 14 to 15. Instead of the disaster that is Gnome 3, we’re instead greeted with GRUB 2 and new systemd quirks.
The main portion of the upgrade itself went smoothly. No unexpected surprises from anaconda until the notice that the bootloader didn’t install right.
GRUB 2
So apparently Fedora 16 incorporates GRUB 2. While its error messages seem far friendlier than GRUB classic, I really did not delve into all of its supposed benefits. One downside is that when built with RAID support (which I seem to need since my /boot partition is mirrored), the core.img file ends up >32KiB, and thus does not fit in the post-MBR gap present on my drives.
To address this, I used a gparted live CD and resized and moved the first partition of each drive (which happen to be NTFS drives for my Windows 7 install, one of which was the system volume). This provided a 2MiB gap between the MBR and first partition. Booting back into the Fedora 16 rescue mode and using grub2-install on both drives successfully installed GRUB2 and, following a reboot, allowed Fedora 16 to load.
Unfortunately, these partition table and file system hijinks left Windows 7 with a bit of a problem, seeing as it would not boot. The recommended method of using the Windows 7 installer’s “Startup Repair” feature was unsuccessful. The “bootrec /fixboot” would not fix it, giving an “unsupported filesystem” error. Using diskpart to set the Windows partition to active appears to resolve this, and the fixboot succeeds. Naturally, I ran fixmbr at some point, which wiped out GRUB again, and thus it had to be reinstalled. Success with booting both Windows 7 and Fedora 16 was then achieved.
NFS mount
The machine has one NFS share mounted via /etc/fstab. After the upgrade, this would fail to mount during boot, but would have no difficulty being manually mounted after boot. After researching a variety of wrong paths with various systemctl changes, the one I found to resolve this was “systemctl enable NetworkManager-wait-online.service”.
Update 1/8:
The upgrade of my HTPC wasn’t too painful. Mucked with partitions to make room for GRUB2 ahead of time, had to change my lirc init script to not confuse systemd, disable screensaver in gnome 3 (yes, shouldn’t be using gnome to run mythtv – need to add that to the list), re-enabling services that weren’t automatically figured out from existing init scripts, switched mounts from /dev/md* to UUID-based to get the ordering right in the new boot sequence, mythtv ownership changes, etc, etc.