Noyaux 2.4

UML n'est pas inclu dans le noyau 2.4. Il faut commencer par appliquer un patch, puis il suffit de configurer et compiler le noyau en précisant 'ARCH=um'. Le résultat à utiliser est le fichier "linux".

Exemple avec le noyau 2.4.27 :

  1. téléchargez un patch de la liste des patchs de The User-mode Linux Kernel Home Page (dans cet exemple, on utilise uml-patch-2.4.27-1.bz2)
  2. téléchargez le noyau correspondant à partir de The Linux Kernel Archives (dans cet exemple, on utilise linux-2.4.27.tar.bz2) et décompressez-le (dans /UML/Noyaux, évitez /usr/src/linux)
  3. placez-vous dans le répertoire du noyau (/UML/Noyaux/linux-2.4.27) et appliquez le patch : 'bzcat ~/UML/Noyaux/uml-patch-2.4.27-1.bz2 | patch -p1'
  4. sans changer de répertoire, configurez le noyau en exécutant 'make xconfig ARCH=um' ('make config ARCH=um' ou 'make menuconfig ARCH=um' fonctionnent également). (La configuration par défaut convient, vous pouvez sauver et quitter sans faire de modification.)
  5. exécutez ensuite 'make linux ARCH=um'. Un fichier appelé "linux" est alors créé dans le répertoire, c'est le fichier à invoquer pour lancer la machine UML.

Note : avec certains noyaux (par exemple le 2.4.24), l'erreur suivante apparait au démarrage de la machine UML : I'm tracing myself and I can't get out. Pour résoudre ce problème, avant de compiler le noyau, modifiez le fichier arch/um/os-Linux/process.c :

Cliquez ici pour télécharger mon noyau 2.4.24 modifié pour communiquer avec le simulateur Wifi for UML et cliquez ici pour voir sa configuration.