Si vous demandez si vous pouvez simplement installer ou mettre à niveau un noyau "sur" un système existant sans installer un tas d'autres programmes?
Le noyau Linux est un fichier binaire généralement nommé vmlinuz-x.x.x-x-name
dans le boot
répertoire (qui est généralement une petite partition séparée au début du disque dur) où les x sont un numéro de version. "nom" est juste un nom choisi pour le noyau qui peut être défini lors de la compilation, vous pouvez l'utiliser pour identifier le type de machine ou d'architecture pour laquelle le noyau est utilisé, ou pour toute autre raison.
Il est chargé à l'heure de démarrage par un chargeur de démarrage, GRUB
qui est généralement appelé par le code de démarrage du MBR appelé par la ROM du BIOS. Une fois chargé, il n'est ni "tenu ouvert" ni protégé spécialement. Vous pouvez donc remplacer ce fichier par un autre noyau actif. Mais, GRUB
a une fonctionnalité intéressante qui vous permet de sélectionner plusieurs noyaux à partir desquels démarrer. Il est donc très judicieux d’ajouter votre noyau supplémentaire à cette liste, tout en conservant le noyau en fonctionnement connu au cas où tout irait mal.
Je pense que presque toutes les distributions font un noyau "modulaire" dans lequel les pilotes de périphérique sont dans des fichiers séparés. La plupart des noyaux ont donc besoin d’un système de fichiers contenant les pilotes disponibles au démarrage, c’est à quoi sert un "initrd" (disque RAM initial) ou "initramfs". GRUB
chargera le noyau à un emplacement en mémoire et l'initrd à un autre emplacement, puis sautera au noyau pour lui dire où se trouve l'initrd, en commençant par Linux.
Les pilotes peuvent également être "intégrés" au noyau et sont donc automatiquement chargés et disponibles lorsque le chargeur de démarrage charge l' vmlinuz
image. Les noyaux censés fonctionner sur divers systèmes (tels que ceux de la plupart des distributions) minimisent généralement ce qui est construit dans le noyau, car le matériel disponible sera analysé ultérieurement dans le processus de démarrage et seuls les modules représentant le matériel actuel seront chargés.
Il existe des outils pour modifier et créer des initrds. Debian a de bons outils et j'imagine que d'autres distributions en ont aussi.
Ainsi, si vous téléchargez un noyau plus récent à partir de kernel.org et le compilez pour créer une nouvelle image binaire du noyau, vous devez créer ou mettre à jour un initrd avec des pilotes fonctionnant avec ce noyau. L'ancien initrd ne fonctionnera pas car les pilotes doivent correspondre à la version du noyau en cours d'exécution.
Le fichier initrd a le initrd.img-x.x.x.x-name
même nom que le noyau et peut être remplacé après le démarrage de la même manière que le noyau. Une bonne pratique vous indiquerait de ne pas supprimer un initrd fonctionnel tant que vous ne savez pas que vous pouvez démarrer avec votre nouveau noyau + initrd avec succès.
J'espère que cela fournit un contexte.
Si vous recherchez une installation Linux "à nu" qui ne comporte que peu ou pas de programmes supplémentaires, mon choix préféré a toujours été d'installer l' netinst
image Debian . En gros, vous ne disposez que des outils les plus élémentaires pour exécuter une console de texte en ligne de commande et nano
un éditeur de texte.