Differences

This shows you the differences between two versions of the page.

Link to this comparison view

openbsd:maj_kernel_userland [2010/01/12 13:29] (current)
Line 1: Line 1:
 +Convention de ce document;
  
 +#  ==  root shell
 +
 +$  ==  user shell
 +
 +Il va sans dire, que vous avez votre /usr/src a jour.
 +Repportez vous aux differents tips existant.
 +
 +Attaquons nous deja a la configuration du noyau.
 +Deux fichiers generique (dont un specifique a l'​architecture)
 +se trouvemt respectivement dans /​usr/​src/​sys/​conf/​GENERIQUE & /​usr/​src/​sys/​arch/​$ARCH/​conf/​GENERIQUE
 +
 +Creer un repertoire qui nous servira pour la compilation.
 +
 +  $ mkdir compile_dir
 +
 +cd dans ce repertoite.
 +Modifier les deux fichiers afin que ces derniers correspondent a vos besoins. Il est a noter qu'il est possible
 +de modifier le nombre de pseudo-device a la volee par un config(8). Vous trouverez toute la documentation correspondantes aux variables de configuration dans les FAQ. 
 +
 +Sauvegardez vos modifications,​ puis lancez la configuration et la compilation du nouveau kernel par un:
 +  $ config -s /​usr/​src/​sys -b . VOTRE_FICHIER_DE_CONF && make clean && make depend && make
 +
 +Sauvegarde votre ancien noyau par un
 +  # mv /bsd /​bsd.old ​
 +et installer le nouveau:
 +  # cp compile_dir/​bsd /bsd && chown root:wheel /bsd
 +Pour attribuer les bons droits.
 +
 +En enlevant tout ce qui etait supperflux a ma gateway, je suis passe d'un kernel de 4.7Mo a une version allegee de 1.7Mo ;)
 +
 +Passons maintenant a la recompilation du userland.
 +  # rm -rf /usr/obj && mkdir /​usr/​obj ​
 +Pour enlever tous les anciens fichier objet 0:-)
 +  # cd /usr/obj ; make obj
 +Pour les compiler a partir des sources mise a jour ...
 +  # make build 
 +compilera le nouvel userland.
 +
 +Le probleme maintenant, c'est que les fichiers de configuration residant dans /etc ne sont pas mis a jour automatiquement,​ il va donc falloir les "​merger"​ a la main.
 +Il en va de meme pour /dev (openbsd n'​utilisant pas devfs)
 +
 +  # cd /dev && cp /​usr/​src/​etc/​etc.i386/​MAKEDEV .
 +  # ./MAKEDEV all
 +
 +Pour les fichiers de configuration,​ c'est plus long et fastidieux puisqu'​il faut comparer a coup de diff les fichiers residant dans /etc et les nouveaux que vous trouverez dans /​usr/​src/​etc.
 +Pour ce faire creer un repertoire temporaire ou les nouveaux fichiers seront installes.
 +  $ mkdir tmp_etc && export DESTDIR=/​home/​$USER/​tmp_etc
 +Devenez root, par exemple avec un 'sudo -s'
 +  # cd /​usr/​src/​etc & make distribution-etc-root-var ​  
 +puis comparez les.
 +
 +Enfin, le moment venu, on reboot en croisant les doigts ;D
 +et on admire le resultat, voila vous avez merite un bol de cafe ;)
 +
 +/Olivier (aka daffy)
openbsd/maj_kernel_userland.txt ยท Last modified: 2010/01/12 13:29 (external edit)