Cet article explique comment reconstruire le pilote du noyau pour les MACC noyaux Linux non pris en charge.
Important : Cet outil d’auto-assistance n’est
pas destiné à être utilisé avec
RHEL8 et
Oracle 7 UEKR5 les systèmes.
Pour obtenir la liste des noyaux pris en charge, voir
KB91985-Linux kernel support for Application et Change Control 6.x.
Si vous devez procéder à l’installation MACC sur un noyau qui n’est pas répertorié dans la base de connaissances (KB), vous pouvez effectuer l’une des tâches suivantes :
- Créez un fichier build pour le noyau cible sur un banc essai et déployez manuellement le build sur d’autres postes clients de production.
- Envoyez un Unsupported Kernel Request support via.
Nouvelles directives de prise en charge du noyau et disponibilité attendue
- MACC suit les canaux de distribution standard pour la prise en charge du noyau et peut prendre jusqu’à 60 jours pour prendre en charge les nouveaux noyaux. En attendant, utilisez le vérificateur de compatibilité du noyau (KCC) sur les noyaux plus récents pour leur permettre d’être automatiquement pris en charge le jour zéro dans 80 à 90% des cas.
- Si vous demandez un noyau qui n’est pas répertorié dans les canaux standard pour les systèmes d’exploitation pris en charge, il est entendu que MACC le noyau ne prend vraisemblablement pas en charge le noyau.
- Sur les noyaux non standard: Si vous envoyez les fichiers sources de noyau requis avec votre demande de noyau non prise en charge avec justification métier et le nombre total de systèmes pris en charge, la prise en charge peut être considérée bien que les résultats attendus soient limités aux canaux de distribution de noyau non standard.
Quels sont les scénarios de déploiement possibles ?
Le workflow d’installation sur le système d’exploitation Linux varie selon que le noyau cible est pris en charge ou non. voir KB91985 et vérifiez si la prise en charge est déjà disponible pour la version du noyau requis.
Comment procéder à l’installation lorsque le noyau cible est pris en charge ?
Requête
|
Réponse
|
Est-ce que quelque chose a changé depuis la version précédente ?
|
Non.Si le noyau cible est pris en charge, l’installation directe a lieu sur le noyau.
|
Ai-je besoin de prendre en charge les conditions requises ?
|
Non.
|
Comment puis-je procéder à l’installation ?
|
Suivez la procédure décrite dans l' "installer dans la section Linux plate-forme" du Guide d’installation.
|
Comment procéder à l’installation lorsque le noyau cible n’est pas pris en charge ?
La possibilité de créer des modules de noyau pour les cibles a été mise à jour dans la MACC6.3.0 version 714 (juillet 2019). Vous pouvez créer les build nécessaires sur un banc essai et déployer manuellement le module kernel sur les postes clients exécutant le même noyau.
Pour créer un module kernel package pour un noyau non pris en charge localement :
- Exécutez l’outil build inclus dans le package d’installation : build_target.sh .
Cette script tente de télécharger toutes les dépendances nécessaires et de recompiler les MACC sources du module kernel en fonction de la version du noyau que vous souhaitez prendre en charge. Une fois le nouveau module du noyau package correctement créé, exécutez à nouveau le programme d’installation maître script.
- Exécutez à nouveau le programme d’installation principal script mapkg_install.sh, . Cette étape installe le nouveau module kernel package et les packages pris en charge dans la version actuelle MACC .
Remarque : Le MACC pilote package du nouveau noyau est généré une seule fois, puis distribué entre les postes clients. Le système ou banc essai sur lequel la prise en charge du noyau doit être effectué doit être autorisé à installer des packages de développement à partir des référentiels de distribution Linux. Cela s’explique par le fait qu’une recompilation complète du module kernel est nécessaire pour cette méthode.
Création du nouveau module kernel
Si le noyau actuel n’est pas pris en charge, l’exécution du programme d’installation principal sur le système cible échoue avec l’erreur ci-dessous. Le noyau actuel est le noyau qui s’exécute sur le système sur lequel l’installation est effectuée.
# ./mapkg_install.sh
Installing build solidifier-kmod-6.3.0-724.LSES12.x86_64.rpm...
Could not find built-in support for kernel 4.4.73-5-default.
Run ‘./build_target.sh’ to configure your system for rebuilding the kernel module including support for kernel 4.4.73-5-default.
Comme l’indique le message, le noyau actuel n’est pas inclus dans le MACC Package. La recompilation du module kernel, y compris la prise en charge du noyau actuel, peut résoudre ce problème.
Exécutez le build_target.sh script :
# sh ./build_target.sh
Cette script :
- Télécharger les outils de développement pour effectuer une compilation de module de noyau
- Télécharge les packages de développement de noyau et les fichiers sources de code (noyau en cours d’exécution)
- MACCPrépare les sources de pilote pour la recompilation
- Reconstruit MACC le pilote avec la prise en charge du nouveau noyau
- Crée un rpm/deb fichier contenant les actifs du module de noyau compilés récemment
Redistribution vers d’autres postes clients
Pour le moment, la distribution des modules de noyau automatiquement pris en charge n’est pas automatisée. Le dossier qui en résulte MACC , y compris le module rpm/deb kernel nouvellement créé, doit être compressé manuellement et redistribué aux postes clients de l’entreprise. Au niveau des postes clients de l’entreprise, le programme d’installation maître script doit être exécuté pour exécuter l’installation. Si la dernière MACC version est installée et qu’elle fournit une prise en charge autonome pour un nouveau noyau, vous devez d’abord désinstaller la version actuelle. La réinstallation au-dessus de la même version n’est pas prise en charge.
McAfee continue d’ajouter régulièrement la prise en charge du noyau et de fournir une prise en charge intégrée des nouvelles versions du noyau. Finalement, vous pouvez effectuer une mise à jour vers une version plus récente MACC Linux, y compris les versions de noyau impliquées, de la manière habituelle.
Exemple :
Comment Build un noyau non pris en charge :
- Connectez-vous à l’ordinateur virtuel à l’aide du noyau que vous souhaitez exécuter.
- Téléchargez le fichier ZIP du programme d’installation manuel sur le nouveau système :
SOLIDCOR641-135_LNX.zip
- Extrayez ou décompressez le fichier ZIP du programme d’installation manuel téléchargé :
sudo unzip SOLIDCOR641-135_LNX.zip
- Modifiez les autorisations sur build_target.sh et mapkg_install.sh :
- sudo chmod 700 build_target.sh
- sudo chmod 700 mapkg_install.sh
- Exécutez la build sur la cible :
sudo ./build_target.sh
- Si la build est réussie, récupérez les fichiers à partir de /usr/local/mcafee/Solidcore/dks :
- solidifier-ksrc-6.4.1-135.tgz
- solidifier-kmod-6.4.1-135.LEL7.x86_64.rpm
- solidifier-kmod-6.4.1-135.LEL7.3.10.0-1062.9.1.el7.x86_64.x86_64.rpm
- Si le build échoue, Télécharger kernel src et copier manuellement dans /usr/src , puis réexécuter buid_target. sh
- Une fois build_target script terminée, réexécutez :
sudo mapkg_install.sh
Pour valider votre installation
- Créez une nouvelle installation de Centos7 :
Essayez d’utiliser le noyau de base : Kernel – 3.10.0-327.el7.x86_64 (verify by running "uname -r" after you log on)
- Install the kernel that you created the install from the first section:
Example: sudo yum install kernel-3.10.0-1062.9.1.el7
- Reboot and select the kernel that you just installed.
- Download the manual installer zip to the new system:
SOLIDCOR641-135_LNX.zip
- Extract or unzip the downloaded manual installer ZIP file:
sudo unzip SOLIDCOR641-135_LNX.zip
- Copiez les trois packages de votre système de travail dans le dossier de programme d’installation extrait :
- solidifier-kmod-6.4.1-135.LEL7.3.10.0-1062.9.1.el7.x86_64.x86_64.rpm
- solidifier-kmod-6.4.1-135.LEL7.x86_64.rpm
- solidifier-ksrc-6.4.1-135.tgz
- Change permissions to execute mapkg_install.sh:
sudo chmod 700 mapkg_install.sh
- Run the installer as root:
sudo ./mapkg_install.sh
- Verify the status:
sadmin status
Dépannage du processus de prise en charge du noyau
L’auto-prise en charge des nouveaux noyaux implique la compilation d’un module de noyau et un ensemble précis de dépendances pour fonctionner. En cas d’échec du processus de compilation, contactez Support technique pour obtenir de l’aide. Exécutez l' build_target.sh outil, collectez la sortie de compilation et partagez-la avec support technique. Exécutez cette commande :
# sudo sh ./build_target.sh 2>&1 | tee build_target.log
Si l’un des problèmes suivants est rencontré, exécutez les commandes recommandées et essayez de reconstruire le processus cible :
- Red Hat systèmes peuvent nécessiter l’activation de plus de référentiels pour installer les dépendances nécessaires : optional-rpms and sources-rpms.
Exemple : sur un serveur RHEL 7, sources-rpms les optional-rpms référentiels peuvent être activés comme suit :
# subscription-manager repos --enable rhel-7-server-optional-rpms
# subscription-manager repos --enable rhel-7-server-sources-rpms
- Red Hat 6 systèmes sont peut-être manquants rpm Build outils. Vous pouvez les installer manuellement en exécutant la commande suivante :
# sudo yum install rpm-build
- Il se peut que certains systèmes basés sur YUM ne disposent pas de l' yumdownloader utilitaire par défaut. Cet utilitaire est nécessaire pour télécharger les packages requis. Vous pouvez l’installer en exécutant la commande suivante :
# sudo yum install yum-utils
Pour télécharger les sources de noyau pour l’outil BTT :
Pour LEL6 :
- Installez le kernel-devel Package :
# yum -y install kernel-devel-`uname -r`
- Exécuter à nouveau l’outil cible généré
Pour UEK6 :
- Télécharger et installer la source rpm:
# cd ~/
# yumdownloader --source kernel-uek-`uname -r`
de noyau
Ou téléchargez-le manuellement :
# KERNEL_VERSION=`uname -r | awk 'BEGIN{FS=OFS="."}{$NF=""; NF--; print}'`
# rpm -i kernel-uek-"$KERNEL_VERSION".src.rpm 2>&1 | grep -v exist
- Exécutez à nouveau l’outil cible généré.
Pour LEL7 :
- Télécharger et installer la source rpm:
# cd ~/
# yumdownloader --source kernel-`uname -r`
de noyau
Ou téléchargez-le manuellement :
# KERNEL_VERSION=`uname -r | awk 'BEGIN{FS=OFS="."}{$NF=""; NF--; print}'`
# rpm -i kernel-"$KERNEL_VERSION".src.rpm 2>&1 | grep -v exist
- Exécutez à nouveau l’outil cible généré.
Pour UEK7 :
- Télécharger et installer la source rpm:
# cd ~/
# yumdownloader --source kernel-uek-`uname -r`
de noyau
Ou téléchargez-le manuellement :
# KERNEL_VERSION=`uname -r | awk 'BEGIN{FS=OFS="."}{$NF=""; NF--; print}'`
# rpm -i kernel-uek-"$KERNEL_VERSION".src.rpm 2>&1 | grep -v exist
- Exécutez à nouveau l’outil cible généré.
Pour LEL8 :
- Télécharger et installer la source rpm:
# mkdir -p /tmp/mcafee (if /tmp/mcafee already exists delete the /tmp/mcafee dir)
# cd /tmp/mcafee
# cd ~/
# yumdownloader --source kernel-`uname -r`
de noyau
Ou téléchargez-le manuellement :
# KERNEL_VERSION=`uname -r | awk 'BEGIN{FS=OFS="."}{$NF=""; NF--; print}'`
# rpm -i kernel-"$KERNEL_VERSION".src.rpm 2>&1 | grep -v exist
- Exécutez à nouveau l’outil cible généré.
Si le déploiement échoue ou que le service ne démarre pas, voir
KB87443 et Validate.