Script de compilation du Kernel pour VM Debian https://infos.zogg.fr/tags/kernel/
Go to file
Olivier 13de882436 timestamp 2024-05-07 15:19:48 +02:00
certs fix pour Ubuntu 2024-04-29 13:17:51 +02:00
configs Remise en forme du code, déplacement des options dans des fichiers et remise en forme du code 2024-04-09 22:24:09 +02:00
options Ajout de CONFIG_MULTIUSER, CONFIG_TASKSTATS et CONFIG_TASK_XACCT 2024-05-07 15:17:54 +02:00
patches Remise en forme du code, déplacement des options dans des fichiers et remise en forme du code 2024-04-09 22:24:09 +02:00
.gitignore updates 2024-03-19 14:05:19 +01:00
LICENSE Initial commit 2023-11-22 10:24:20 +01:00
README.md Ajout de CONFIG_MULTIUSER, CONFIG_TASKSTATS et CONFIG_TASK_XACCT 2024-05-07 15:17:54 +02:00
kernel.sh timestamp 2024-05-07 15:19:48 +02:00

README.md

Compilation de kernel pour VM Debian avec processeur Intel

Récupération, décompression des sources du Kernel linux sur kernel.org, optimisation des réglages pour utilisation dans une VM.

Prérequis

  • Hyperviseur Proxmox
  • Machine hôte avec processeur Intel
  • Système dexploitation pour VM sous Debian
  • Disposer du fichier de configuration noyeau de type Cloud

Usage

sudo bash kernel.sh [branch] [version] [compile]
  • branch : la branche majeur du kernel
  • version : la version du kernel à utiliser
  • compile : optionnel, utilisé pour passer la récupération des sources et leur décompression

Exemple :

sudo bash kernel.sh 6.x 6.8.1

Résultats

  • linux-headers-6.8.1-clang-amd64_6.8.1-1_amd64.deb : 8.5 Mo
  • linux-image-6.8.1-clang-amd64-dbg_6.8.1-1_amd64.deb : 194 Mo
  • linux-image-6.8.1-clang-amd64_6.8.1-1_amd64.deb : 22 Mo
  • linux-libc-dev_6.8.1-1_amd64.deb : 1.3 Mo

TODO

  • voir s'il est possible d'optimiser encore plus les disable/enable en restant stable
  • trouver comment rendre compatible le kernel pour une VM avec drivers Nvidia
  • ajouter le test de la signature du kernel après téléchargement

CHANGELOG

2024-05-07

  • Ajout de CONFIG_MULTIUSER, CONFIG_TASKSTATS et CONFIG_TASK_XACCT pour Victoria Metrics

2024-05-06

  • Ajout de CONFIG_TASK_IO_ACCOUNTING pour Victoria Metrics

2024-04-29

  • Corrections bug de copier/coller (manque d'appel de doDownload & doUncompress)
  • Suppression du paramètre STEPS
  • Ajout du paramètre TARGET (afin de spécifier une distribution cible, ex: debian)
  • Cibles de compilation: debian, ubuntu
  • Corrections pour la compilation à destination d'Ubuntu

2024-04-26

  • Gestion des versions du kernel
  • Tag dans le nom du kernel définissant sécurisé/non sécurisé

2024-04-19

  • Ajustements de la configuration RCU
  • Ajustement des options de sécurité

2024-04-09

  • Mise en place de dossiers spécifiques (configs, options, patches)
  • Renommage de 'more uarch' et 'cloud-amd64'
  • Déplacement des options dans des fichiers spécifiques (lisibilité du code et maintenance)
  • Corrections cosmétiques (indentations, espaces...)

2024-03-20

  • Suppression du 'Fast Kernel Headers' (provoque de nombreuses erreurs de compilation)
  • Corrections de flags (empêchant notamement l'exécution de dmesg)
  • Corrections de chemins

2024-03-19

  • Corrections mineures
  • Déplacement du dépôt
  • Modification du répertoire de contruction (build)

2024-03-16

  • Mise à jour Kernel 6.8.1
  • Utilisation par défaut de Clang (fonctionnel y compris pour Nvidia)
  • Désactication des mitigations par défaut

2024-03-11

  • Mise à jour Kernel 6.8
  • Mise à jour de la configuration du patch 'more uarch' (6.8-rc4+)

2024-03-02

  • Modularisation des options par variable de conditionnement
  • Ajout du 'Fast Kernel Headers' (désactivé pour le moment)
  • Ajustment des options permettant l'installation de pilote Nvidia
  • IPv6 remis (sinon certains conteneurs déconnent)

2024-02-23

  • Correction de problèmes de configuration produisant un kernel défaillant

2024-02-22

  • Mise à jour de la configuration du patch 'more uarch' (6.1.79-6.8-rc3)
  • Compilation en modules par défaut

2024-02-10

  • Mise à jour de la configuration cloud du kernel (config-cloud-amd64 v6.6.9)
  • Retour au compilateur GCC par défaut (compatibilité)
  • Correction de bugs liés aux _ACL et _XATTR (réactivation des options)
  • Intégration des crypto dans le kernel

2024-01-07

  • Mise à jour de la configuration cloud du kernel (config-cloud-amd64 v6.5.13)
  • Mise à jour du patch pour ajouter des configurations processeurs (more-uarches-for-kernel.patch)
  • Mise à jour et optimisation du script (kernel.sh)
  • Passage de GCC à CLang pour les compilations

2023-11-30

  • Amélioration des sélections dans les options (enable/disable)
  • Ajout d'un flag TESTING conditionnant l'appel de la fonction doDefaultsTesting (pour tester d'autres options...)

2023-11-24

  • Correction de bugs liés aux disable/enable (options du .config)
  • Test ok avec v6.6.1 et v6.6.2 du kernel sur VM Debian sous Proxmox

2023-11-22

  • Commit initial