Upgrading Mandriva Linux from 2010 to 2011
From Mandriva Community Wiki
The following instruction DOES NOT guarantee fully working system after upgrading AT ALL. It will break your system.
UPDATE: working upgrade script from 2010 to 2011, beta-version, must be executed from root. Needs lots of free space in /var (unknown, how much). If it stops running, run it again. Use it at your own risk.
Before we start
Before migrating to the exciting new Mandriva 2011 you need to update your currently running system with the help of urpmi:
[root@localhost ~]# urpmi --auto-update
Also it is possible to use the standard Mandriva Update applet for this purpose:
Before doing anything you MUST carefully read the Mandriva 2011 Release Notes , that contain a bunch of useful information about the features of the new Mandriva. Careful reading of the Release Notes can save you from many possible problems :).
Next, make sure you have enough free space on your hard drive. All packages will be downloaded during upgrade process to the directory /var/cache/urpmi. The total amount of downloaded packages depends on the amount of installed software on your system, and urpmi will show this before actually downloading packages. Normally, this value is 4 to 7 GB. If your /var filesystem has not enough disk space don't care too much about it. In urpmi, you can specify an alternative path for downloading packages (see below).
So, if you had successfully completed the previous steps, it's time to fire up the upgrade process. Unfortunately, due to many changes in Mandriva 2011, migration from older versions of Mandriva can not be performed through the graphical tools. So below you will see a set of commands that can help you upgrade system to shiny new Mandriva release with help of the command line.
It is the time to open a terminal and change your user to root. You can do it or by simply running Konsole (or your other favorite terminal emulator) from KDE menu, or by selecting "Open a console as a administrator» in the utility "Configure Your Computer» :
The first thing to do - remove the old repositories from your currently running system. You can do it with the command below:
[root@localhost ~]# urpmi.removemedia -a
Then add to the urpmi repository information for the release to which we want to update (in an example below there is a system updated from Russian Yandex mirror - you can choose your own favorite and nearest to you). So, the command for 32-bit systems:
[root@localhost ~]# urpmi.addmedia --distrib --mirrorlist http://mirror.yandex.ru/mandriva/official/2011/i586
And for 64-bit systems:
[root@localhost ~]# urpmi.addmedia --distrib --mirrorlist http://mirror.yandex.ru/mandriva/official/2011/x86_64/
This command will add all the needed repositories. Next command magically upgrade your system to a new release:
[root@localhost ~]# urpmi --wget --download-all --auto-update
Option --wget tell urpmi to use wget to download packages. By default, urpmi uses aria2 that is not always works correctly.
When you use --download-all option urpmi will download all the packages first and then begins to install all of them. It is strongly recommended option for migration to a new release with urpmi. It is used to provide reliable update, you need to download and update a lot of packages. If you do not use this option and during update process you face Internet connection problems, you will get a very bad situation when only part of system will be updated, that will result in problems with correct system working.
If you wish only to download updates and not install them (for example, to upgrade system later), you need to add the option --no-install.
When you run the update process, the first thing that will be performed by urpmi, is updating itself with all the dependencies and the package management stack (perl-related packages and a new version of rpm). In Mandriva 2011 version system has migrated to the rpm5 package management utility. After installation of new package management tools, special scripts will start that automagically convert your rpm database to the new format.
If all went well - urpmi restarts itself and prompts you to upgrade the rest of the packages. It will show you a series of questions for packages upgrades. For example, it would be the name of the package with the latest kernel version, variants of Java-machine (OpenJDK or Sun Java) etc. urpmi also displays information about system packages that will be removed (it's okay during upgrade from one distro release to another). If you agree with urpmi and continue to upgrade, you will see a list of packages that need updating, the total number and the amount of disk space that would be necessary for them to download. You should once again make sure that you have this amount of free disk space in /var/cache/urpmi. If you don't have enough disk space in the /var filesystem, you can use any other filesystem to store the downloaded packages. This can be done using the following command:
[root@localhost ~]# urpmi --wget --auto-update --download-all /path/to/download/folder
The latter operation (downloading packages and their subsequent installation) will take a long time, so only cross your fingers, pray your God for good luck and wait, wait, wait ...
After completion of this very long process you must restart the system, and if all of this goes well - you will see K Display Manager screen with a new design. Select your account, type your password and log into your new updated system. Congratulations! You have upgraded to Mandriva 2011!
Known issues after system upgrade
There are several post-upgrage issues:
- during system upgrade urpmi doess not replace sysvinit with systemd and its dependencies. The new system still uses sysvinit for booting.
Solution: set up packages of systemd and systemd-sysvinit via urpmi (or drakrpm)
- Old network applet is used instead of NetworkManager.
Solution (if you want to use NetworkManager):
- set up plasma-applet-networkmanagement package
- add a line NM_CONTROLLED=yes into the file /etc/sysconfig/network-scripts/ifcfg-<name_of_interface> (ifcfg-eth0, for example). It should be done for all interfaces, that are given under control of NetworkManager.
The same can be done via graphical tools:
- run «Configure Your Computer», select «Network & Internet», then — network adjustment module («Network Center»):
- Push the button «Configure» for choosen network interface and set an index against «Allow interface to be controlled by NetworkManager»
- add NetworkManager to autorun by command:
[root@localhost ~]# systemctl enable networkmanager.service.
For notebooks also it's better to turn off standard modules of network control via systemd (it can slightly speed up system boot):
[root@localhost ~]# systemctl disable network.service && systemctl disable network-up.service
Or via graphical tools:
- In «Configure Your Computer» on bookmark «System» choose «Manage system services by enabling or disabling them» module
- Select an index against «On boot» against «networkmanager» and (optionally) remove it from «network» and «network-up»
- Complete installation of all the necessary to networkmanager modules for interaction with VPN, PPTP etc.
- Add widget «Network Management» to panel via KDE standard dialog:
- to configure hostname (when using systemd) put a necessary name in the file /etc/hostname:
[root@localhost ~]# cat /etc/hostname myprettynewhostname
- remove package drakx-net-applet.
- Packages rosa-icons, rosa-elementary-theme, qgtklstylealt will not be installed during system upgrade. Solution — install these packages and customize desktop via KDE module «System Settings».