2024-01-07 13:23:37 +00:00
|
|
|
|
# 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
|
|
|
|
|
|
2024-02-10 20:23:59 +00:00
|
|
|
|
- Hyperviseur Proxmox
|
|
|
|
|
- Machine hôte avec processeur Intel
|
|
|
|
|
- Système d’exploitation pour VM sous Debian
|
|
|
|
|
- Disposer du fichier de configuration noyeau de type Cloud
|
2024-01-07 13:23:37 +00:00
|
|
|
|
|
|
|
|
|
## Usage
|
|
|
|
|
|
2024-03-02 12:24:31 +00:00
|
|
|
|
```bash
|
2024-01-07 13:23:37 +00:00
|
|
|
|
sudo bash kernel.sh [branch] [version] [compile]
|
|
|
|
|
```
|
|
|
|
|
|
2024-02-10 20:23:59 +00:00
|
|
|
|
- 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
|
2024-01-07 13:23:37 +00:00
|
|
|
|
|
|
|
|
|
Exemple :
|
|
|
|
|
|
2024-03-02 12:24:31 +00:00
|
|
|
|
```bash
|
2024-03-19 14:06:34 +00:00
|
|
|
|
sudo bash kernel.sh 6.x 6.8.1
|
2024-01-07 13:23:37 +00:00
|
|
|
|
```
|
|
|
|
|
|
2024-01-07 13:30:36 +00:00
|
|
|
|
## Résultats
|
|
|
|
|
|
2024-03-16 12:06:18 +00:00
|
|
|
|
- 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
|
2024-01-07 13:30:36 +00:00
|
|
|
|
|
2024-01-07 13:23:37 +00:00
|
|
|
|
## TODO
|
|
|
|
|
|
2024-02-10 20:23:59 +00:00
|
|
|
|
- ~~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
|
2024-01-07 13:23:37 +00:00
|
|
|
|
|
|
|
|
|
## CHANGELOG
|
|
|
|
|
|
2024-05-07 13:17:54 +00:00
|
|
|
|
### 2024-05-07
|
|
|
|
|
|
|
|
|
|
- Ajout de CONFIG_MULTIUSER, CONFIG_TASKSTATS et CONFIG_TASK_XACCT pour Victoria Metrics
|
|
|
|
|
|
2024-05-06 18:18:45 +00:00
|
|
|
|
### 2024-05-06
|
|
|
|
|
|
|
|
|
|
- Ajout de CONFIG_TASK_IO_ACCOUNTING pour Victoria Metrics
|
|
|
|
|
|
2024-04-29 06:24:04 +00:00
|
|
|
|
### 2024-04-29
|
|
|
|
|
|
2024-04-29 06:37:23 +00:00
|
|
|
|
- Corrections bug de copier/coller (manque d'appel de doDownload & doUncompress)
|
2024-04-29 06:24:04 +00:00
|
|
|
|
- Suppression du paramètre STEPS
|
|
|
|
|
- Ajout du paramètre TARGET (afin de spécifier une distribution cible, ex: debian)
|
|
|
|
|
- Cibles de compilation: debian, ubuntu
|
2024-05-06 18:18:45 +00:00
|
|
|
|
- Corrections pour la compilation à destination d'Ubuntu
|
2024-04-29 06:24:04 +00:00
|
|
|
|
|
2024-04-25 23:33:59 +00:00
|
|
|
|
### 2024-04-26
|
|
|
|
|
|
|
|
|
|
- Gestion des versions du kernel
|
|
|
|
|
- Tag dans le nom du kernel définissant sécurisé/non sécurisé
|
|
|
|
|
|
2024-04-19 13:59:15 +00:00
|
|
|
|
### 2024-04-19
|
|
|
|
|
|
|
|
|
|
- Ajustements de la configuration RCU
|
|
|
|
|
- Ajustement des options de sécurité
|
|
|
|
|
|
2024-04-09 20:24:09 +00:00
|
|
|
|
### 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 11:46:07 +00:00
|
|
|
|
### 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)_
|
2024-03-20 11:51:39 +00:00
|
|
|
|
- Corrections de chemins
|
2024-03-20 11:46:07 +00:00
|
|
|
|
|
2024-03-19 14:06:34 +00:00
|
|
|
|
### 2024-03-19
|
|
|
|
|
|
|
|
|
|
- Corrections mineures
|
|
|
|
|
- Déplacement du dépôt
|
|
|
|
|
- Modification du répertoire de contruction (build)
|
|
|
|
|
|
2024-03-16 12:06:18 +00:00
|
|
|
|
### 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 19:52:03 +00:00
|
|
|
|
### 2024-03-11
|
|
|
|
|
|
|
|
|
|
- Mise à jour Kernel 6.8
|
|
|
|
|
- Mise à jour de la configuration du patch 'more uarch' (6.8-rc4+)
|
|
|
|
|
|
2024-03-02 12:24:31 +00:00
|
|
|
|
### 2024-03-02
|
|
|
|
|
|
|
|
|
|
- Modularisation des options par variable de conditionnement
|
2024-03-16 12:06:18 +00:00
|
|
|
|
- Ajout du 'Fast Kernel Headers' _(désactivé pour le moment)_
|
2024-03-11 19:52:03 +00:00
|
|
|
|
- Ajustment des options permettant l'installation de pilote Nvidia
|
2024-03-02 16:29:24 +00:00
|
|
|
|
- IPv6 remis (sinon certains conteneurs déconnent)
|
2024-03-02 12:24:31 +00:00
|
|
|
|
|
2024-02-23 11:52:55 +00:00
|
|
|
|
### 2024-02-23
|
|
|
|
|
|
|
|
|
|
- Correction de problèmes de configuration produisant un kernel défaillant
|
|
|
|
|
|
2024-02-22 12:03:53 +00:00
|
|
|
|
### 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 20:23:59 +00:00
|
|
|
|
### 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 13:23:37 +00:00
|
|
|
|
### 2024-01-07
|
|
|
|
|
|
2024-02-10 20:23:59 +00:00
|
|
|
|
- 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
|
2024-01-07 13:23:37 +00:00
|
|
|
|
|
|
|
|
|
### 2023-11-30
|
|
|
|
|
|
2024-02-10 20:23:59 +00:00
|
|
|
|
- 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...)_
|
2024-01-07 13:23:37 +00:00
|
|
|
|
|
|
|
|
|
### 2023-11-24
|
|
|
|
|
|
2024-02-10 20:23:59 +00:00
|
|
|
|
- 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
|
2024-01-07 13:23:37 +00:00
|
|
|
|
|
|
|
|
|
### 2023-11-22
|
|
|
|
|
|
2024-02-10 20:23:59 +00:00
|
|
|
|
- Commit initial
|