kernel/README.md

126 lines
3.6 KiB
Markdown
Raw Normal View History

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 dexploitation pour VM sous Debian
- Disposer du fichier de configuration noyeau de type Cloud
2024-01-07 13:23:37 +00:00
## Usage
```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 :
```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-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
- 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
- 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-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