I've just finished upgrading a test Linode to Fedora Core 4 without problems, so here goes the instructions.
This was attempted with a Fedora Core 3 system upgraded from a fresh Fedora Core 2 image.
Warning
This procedure is being posted in the Xen Public Beta forum because
Fedora Core 4 does not work inside UML.
From this version of the system onwards NPTL is required, and UML doesn't support that.
Procedure
1) Install the
fedora-release-4 package from a Fedora Core 4
base repository.
This package will conflict with the
legacy-yumconf-3 package from Fedora Legacy; you can safely remove it now you're upgrading your system.
This step will configure yum to use the repositories for Fedora Core 4.
2) Optionally, disable the fedora-extras repository.
You must do it by setting the parameter
enabled to 0 in the fedora-extras.repo configuration file.
The Fedora Extras repository is huge, and parsing it makes yum consume a huge amount of memory, with consequent swapping and all the badnass that brings.
3) Check extra software and pay attention to upgraded interfaces.
Read the updated Relase Notes:
http://fedora.redhat.com/docs/release-notes/fc4/errata/
Fedora Core 4 upgrades db4 from 4.2 to 4.3. Prepare yourself by dumping databases to reload them later.
Check for the dependencies of your extra packages -- this is a system upgrade, and interfaces will be upgraded -- Fedora Core 4 upgrades python to 2.4, MySQL to 4.1, etc.
4) Issue the yum upgrade.
Do
not upgrade the system in parts. Fedora Core 4 software is NPTL-based; mixing NPTL-based components and LinuxThreads-based components may not work.
In my first attempt at this procedure I followed the exact same steps I gave in my "Fedora Core 2 to Fedora Core 3" tutorial; that upgraded rpm and db4 but not glibc; rpm became then unusable due to NPTL functions not being present in the system library.
Epilogue
Fedora Core 4 runs smoothly in NPTL emulation mode under Xen. I suppose there is nothing to stop another upgrade to Fedora Core 5 using this same procedure -- maybe I'll try that in a few months.
Included in the distribution are domU kernels and related tools; so we can expect every Fedora Core release from now on to work normally as a Xen guest.
It also seems SELinux works somewhat; with some more community study, this can become a great tool to secure Xennodes.