4. Installation de la base

Cette étape est l'étape la plus délicate, mais si vous faites des erreurs ici, vous ne perdrez pas trop de temps à vous corriger.

4.1. Installation initiale

Le but est d'installer le paquet basesystem et ses dépendances. urpmi basesystem marcherait à merveille pour ceux qui connaissent mandrake. Mais urpmi n'est pas installé, et on va s'en passer tant que la base n'est pas installée.

L'idée est donc de taper une longue ligne de commande du style rpm -Uvh basesystem-9.0-3mdk.i586.rpm filesystem-2.1.3-8mdk.noarch.rpm console-tools-0.2.3-42mdk.i586.rpm [...] grep-2.5-7mdk.i586.rpm. Démarrez cette ligne de commande, validez. Rpm vous affichera les dépendances manquantes. Ajoutez les paquets au fur et à mesure, validez au fur et à mesure, et à force, vous devrez faire augmenter puis diminuer le nombre de dépendances manquantes, jusqu'à arriver à ce que rpm fonctionne. Lors de l'installation de ma Mandrake-9.1, j'ai compté 103 paquets (en espérant ne pas m'être trompé en comptant). Cette installation peut générer des erreurs, ce n'est pas trop grave, tant que les fichiers sont installés. Il s'agit ici d'installer les fichiers. Nous n'avons que faire de la base des dépendances pour l'instant. Gardez la liste de ces paquets bien au chaud: elle servira encore.

4.2. Remplissage de la base de données rpm

Suivant la distribution qui vous sert de base, ou plutôt la version de rpm que vous avez utilisée jusqu'ici, il est fort probable qu'il y ait une différence de versions, rendant le rpm que l'on a utilisé incompatible avec celui de la Mandrake que l'on installe. Sur une Debian, il y a effectivement incompatibilité. Rien de grave à cela. Vérifiez juste que vous utilisez maintenant le bon rpm de la Mandrake, celui que vous venez juste d'installer (pour une Mandrake-9.1):

	# rpm --version
	RPM version 4.0.4
	

Le numéro de version a changé donc tout va bien. Vous pouvez d'ailleurs supprimer le binaire rpm qui vous a servi s'il n'a pas été écrasé. Sur une Debian, on l'avait dans /usr/bin, et sur la Mandrake il est dans /bin, donc on peut supprimer celui de /usr/bin.

Le changement de version peut poser problème avec la base de données rpm, donc on va la convertir. Le plus simple, le plus facile et peut-être bien le plus propre est de repartir à zéro:

	# cd /var/lib
	# rm -rf rpm
	# mkdir rpm
	# rpm --initdb
	

Cela nous oblige à insérer dans la base les rpms qui sont déjà installés. Pour chaque RPM, voici ce que vous pouvez faire:

	# rpm -Uvh --force --replacefiles --nodeps basesystem-9.0-3mdk.i586.rpm
	# rpm -Uvh --force --replacefiles --nodeps filesystem-2.1.3-8mdk.noarch.rpm
	

... et ainsi de suite pour tous les paquets qui ont déjà été installés. Mais surtout pas d'autres. Lorsque c'est fait, rpm -qa vous permet de valider que cela a bien marché. A la moindre erreur, n'hésitez pas à refaire ce que vous venez de faire. Il n'y a à priori aucun mal à cela jusqu'ici.

4.3. Nettoyage

Il est probable que des fichiers *rpmnew se soient installés. Pour les trouver: find / -name "*rpmnew". Il est préférable de les garder et de jeter les anciens:

	# for i in `find / -name '*rpmnew' | sed -e 's/.rpmnew$//'`; do mv $i.rpmnew $i; done
	
création est mise à disposition sous un contrat Creative Commons