Kernel header & modules
De BlaxWiki
Révision datée du 15 mars 2011 à 17:39 par Admin (discussion | contributions)
1. Ceci explique comment récuperer les header d'un kernel Centos, lorsqu'on en a besoin pour compiler quelque chose
Pour la carte raid LSI SAS1068E Fusion-MPT SAS 6ir, elle ne fonctionne pas avec megacli. Il faut donc compiler mpt-status (qui est utilisé par la sonde vision raid MPT_SAS_RAID). On peut faire l'installation manuellement ou récuperer le binaire sur un des 2 autres serveurs (sql-mysqld1.mmhk.ubi.com & sql-mgt1.mmhk.ubi.com) Récupérer les sources de mpt-status : wget http://www.drugphish.ch/~ratz/mpt-status/mpt-status-1.2.0.tar.gz Récupérer les sources du kernel présent sur le serveur : wget http://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/SRPMS/kernel-2.6.xxxx.src.rpm (nécessaire à la compilation de mpt-status). Puis : rpm -ivh kernel-2.6.xxxx.src.rpm rpmbuild -bp --target=$(uname -m) /usr/src/redhat/SPECS/kernel-2.6.spec Il faudra peut être installer des dependances manquantes pour le rpmbuid via yum. On peut alors détarer les sources de mpt-status. Il faut éditer le fichiert mpt-status.h : Changer la ligne #include linux/compiler.h en #include </usr/src/redhat/BUILD/kernel-2.6.xxxx/linux-2.6.xxxx/include/linux/compiler.h> et faire le make (il faudra peut etre aussi changer la ligne KERNEL_PATH dans le Makefile) Cela va générer un binaire mpt-status qu il faudra copier dans /usr/bin
2. Compilation de modules complémentaires
Pour compiler des modules supplémentaire, il faut installer les kernel-devel. Sur Centos, ils vont etre mis dans /usr/src/kernels/versiodukernel; faire un lien symbolique : ln -s /usr/src/kernels /usr/src/linux Puis vérifier que l'on a bien [root@wimo01 kernels]# ll /lib/modules/2.6.18-194.11.1.el5/ total 1344 lrwxrwxrwx 1 root root 51 Aug 31 10:00 build -> ../../../usr/src/kernels/2.6.18-194.11.1.el5-x86_64