Warning: | |
---|---|
I am not responsible for anything that goes wrong or any damages that may occur to your system!!! And please, please, please, for the sake of your sanitiy, read this through completely, backup all your vital data, and think hard if you really want to upgrade. ;-) |
Well, warnings aside, let's begin.
As you all know Test1 is out and has been for a few weeks. I have waited a while for things to settle down and all the gotchas to surface, before doing an upgrade. So here is MY method of upgrading from Fedora Core 1 > Fedora Core 2 - Test1.
Download the following packages:
rpm -Fvh *.rpm
Now, move onto "Choosing your repositories for optimum downloads:"
From a mailing list post mentioned in this months newsletter, it becomes clear that you can also rebuild the apt RPM, which is the way I did it. Don't ask me why ;-)
So, grab the apt src.rpm from the official Fedora repository, and then issue:
rpmbuild --rebuild /path/to/the/rpm/apt-0.5.15cnc5-0.fdr.10.1.90.src.rpm
This will take a while depending on your setup etc.
Once recompiled, simply install it with:
rpm -Uvh apt*.rpm
Note: | |
---|---|
For more info about the wealth of RPM commands, see Alexandre's RPM page. |
Keep an eye out for any files in /etc/apt/ with *.rpmnew extensions, as these will be from the new apt install. Move them as appropriate e.g:
mv /etc/apt/rpmpriorities /etc/apt/rpmpriorities.old mv /etc/apt/rpmpriorities.rpmnew /etc/apt/rpmpriorities
If there are any conflicts with the apt RPM package upgrade, then simply:
apt-get remove packagename
Or:
rpm -e packagename
Note: | |
---|---|
Keep a record of the names you remove, so that you can reinstall them later, if needed. |
All that's left is adding your sources.
The first time you run apt-get nowadays, due to the nice new features, you get a text menu asking which sources you want etc., much like Debians apt. Answer the questions by hitting the right numbers, then continue — 'c'.
Note: | |
---|---|
I had to switch off GPG-signature checking with apt, as for some reason, even after importing the Testing key, which you can download here, it didn't like the signatures. Edit /etc/apt/apt.conf and uncomment this line: GPG-Check "false"; |
The quickest way to do this is:
apt-get mirror-select
Help: | |
---|---|
We would like to find more fedora.us mirrors. So if you find any, please let me, Warren Togami or Panu Matilainen know. |
I picked a good one close to the UK.
Your /etc/apt/sources.list should look something like this:
# Please choose the nearest mirror http://www.fedora.us/wiki/FedoraMirrorList #Fedora 2 Test1 stable - Official #rpm http://download.fedora.us fedora/fedora/1.90/i386 os stable testing unstable #rpm-src http://download.fedora.us fedora/fedora/1.90/i386 os stable testing updates #Fedora 2 Test1 - Spanish mirror, due to UK one slow updating. rpm http://sunsite.rediris.es/mirror/fedora.us fedora/fedora/1.90/i386 os stable testing unstable rpm-src http://sunsite.rediris.es/mirror/fedora.us fedora/fedora/1.90/i386 os stable testing unstable
Once you have picked a good one, issue:
apt-get update
Then:
apt-get dist-upgrade
Any duplicate packages or any other gotchas, like duplicate packages, can be handled by editing or uninstalling them ;-)
/etc/apt/apt.conf
Issuing for detailed options:
man apt.conf
When I issued a: apt-get dist-upgrade
I got:
So 632mb of downloads, not bad :-). This works out to around 3hrs download time for someone on ADSL/Broadband.
Commom Error: | |
---|---|
After much heartache it appears that my router isn't fully compliant with RFCxxx standards. After upgrading, I didn't get any external network connectivity due to the router not supporting ECN (short for Explicit Congestion Notification). The purpose of ECN is to improve throughput on the internet by allowing individual routers to signal that they are very busy at that time. All routers should support this proposal by now and unfortunately some sites/routers still actually drop the ECN-enabled network packets. This feature was proposed in 2001!!!. |
To fix, add this into /etc/sysctl.conf
net.ipv4.tcp_ecn = 0
And then either:
sysctl -p
Or:
echo 0 > /proc/sys/net/ipv4/tcp_ecn
The rest of my problems were a few package upgrade glitches, so manual upgrading of some may be required.
Well, that's it for now. For any comments or corrections, please e-mail me.