Accueil Astuces et Informations Compiler un Kernel : ¿Cómo hacerlo sobre una Distro base Debian ?

Compiler un Kernel : ¿Cómo hacerlo sobre una Distro base Debian ?

4
1
Compilar un Kernel: ¿Cómo hacerlo sobre una Distro base Debian?

Compiler un Kernel : ¿Cómo hacerlo sobre una Distro base Debian ?

En nuestra entrée antérieurelamada “El Kernel de Linux: Lo basique sobre el núcleo” abordamos algunas bases teóricas esenciales sobre los Kerneles de los Sistemas Operativos, en général; y el Noyau de Linuxen particulier.

Y como expresamos en la misma, en esta, estaremos completando dichas bases teóricas esenciales avec d’autres concepts et informations supplémentairesademás de mostrar el procedimiento actual para lograr « compiler un noyau » de Linux desde cero, sobre una Distribution Debian GNU/Linux 11 (Bullseye) o basada en ella.

Le noyau de Linux : la base du noyau

Le noyau de Linux : la base du noyau

Y, antes de iniciar la lectura de este post sobre « compiler un noyau » de Linux en général, dejaremos unos enlace un anteriores publicaciones relacionadas para su posterior lecture :

Le noyau de Linux : Todo sobre el núcleo del Sistema Operativo libre

Article lié :

Le noyau de Linux : la base du noyau

vulnérabilité

Article lié :

En lo que va del mes ya se dieron a conocer varias vulnerabilidades encontradas in el kernel de Linux

Compiler un Kernel : Tutoriel de compilation

Compiler un Kernel : Tutoriel de compilation

¿Qué significa compilar un programa?

Básicamente, este proceso técnico (también llamado empaquetamiento) consiste en lograr la conversion del código fuente de un programa o porción de un software, desde su origen (lenguaje de programación usado para escribirse) hasta un producto lisible (lenguaje de programación de alto nivel interpretable ) par un ordenador.

Es decir, lograr su transformación desde su código fuente hasta volverlo un programa ejecutable y funcional, mediante el uso de un procesador (software compilador) para la conversion del lenguaje de programación utilizado hacia un código de tipo binario y ensamblador.

Ventajas et desventajas de compilar de cero un Kernel de Linux

Cuando compilamos y configuramos personalizadamente, desde cero, un Kernel específico para un determinado ordenador, podemos obtener las siguientes ventajas :

  • Lograr un meilleur rendement et une consommation mineure de CPU.
  • Obtenez une meilleure optimisation et une consommation mineure de mémoire RAM.
  • Améliorer la capacité d’adaptation et la compatibilité du système opérationnel.
  • Augmenter l’efficacité et la productivité du système opérationnel.

Mientras que, por el contrario, pudiéramos generar las siguientes Desventajas :

  • Fallas de operatividad y disponibilidad de los recursos y servicios deseados sobre el ordenador empleado, debido a malas configuraciones y problemas ocasionados duringe la compilación.
  • Un trabajo constant, largo y tedioso al principio para generarlo, y luego a posteriori, para mantenerlo actualizado de forma manual. El cual puede ir, desde minutos a horas, dependiendo del hardware empleado.
  • Largas horas de estudio y pruebasya que, se necesita un alto nivel de conocimiento tanto sobre las opciones de configuración disponibles en el Kernel como del ordenador (hardware final), donde se ejecutará.

Catégories de noyaux disponibles

Catégories de noyaux disponibles

Para compiler un noyau, lo primero que debemos saber es qué Kernel escoger. Para ello, debemos ir al site web officiel de los Kerneles, y escoger uno entre les catégories existantes. Las cuales son las suivantes:

  • Línea principal de desarrollo (Mainline): Esta categoría incluye aquellos Kerneles en etapa de desarrollo, por lo que, contienen nuevas características y funciones que deben probarse antes de que se puedan poner en una versión estable. Estos son mantenidos y liberados directamente por Linus Torvalds, y suelen publicarse cada 2 o 3 meses en promedio.
  • Stable (Stable): Esta categoría incluye a aquellos Kerneles que, luego de pasar las pruebas del largo proceso de desarrollo, se convierten en estables, por lo que, solo están sujetos a correcciones a través de un mantenedor oficial designado. Además, solo tienen pocas versiones de correction d’erreurs hasta que el siguiente Mainline est disponible.
  • Largo plazo (long terme): Esta categoría incluye a aquellos Kerneles que, luego de pasar las pruebas del largo proceso de desarrollo, se convierten en estables, pero cuentan con un soporte de corrections de errores y mantenimiento por un tiempo sumamente largo (años). Razón por la cual, se le aplican correcciones de errores importantes, las cuales pueden llegar a ser muy frecuentes.

Comment compiler un noyau et une distribution GNU/Linux Debian Bullseye ?

Comment compiler un noyau et une distribution GNU/Linux Debian Bullseye ?

Habiendo elegido una version spécifique de Kernelen la web oficial, y ya conociendo (copiando) su route de déchargement a través del boton Tarball de la misma, solo queda realizar el siguiente procedimiento, el cual mostraremos tomando como ejemplo, el Kernel de Linux version 6.0.8 stable:

Etapa 1

cd /usr/src
wget -c https://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/linux-6.0.8.tar.xz
sudo unxz linux-6.0.8.tar.xz
sudo tar xvf linux-6.0.8.tar
sudo ln -s linux-6.0.8 linux
cd /usr/src/linux
sudo make clean && make mrproper
sudo cp /boot/config-`uname -r`* .config
make menuconfig

Al ejecutar este último comando, se inicia el « Menu de configuration du noyau »donde se podrá configurer (personnaliser) les paramètres de sa préférence ou de sa nécessité. Además, aquí es fondamental no olvidar que, es necesario marquer ou masquer l’option du noyau 64 bits, dependiendo de lo que se desee o requiera. Y aussi, luego de haber realizado todos los cambios hechos, se debe presionar el Botón Salvar (Enregistrer) y luego el Botón Salir (Sortie).

Menu de configuration du noyau

Etapa 2

Llegado a este punto quedan 2 chemins possibles un tomar :

Installation individuelle du noyau
sudo make
sudo make modules_install
sudo make install
sudo update-grub; sudo update-grub2; sudo update-initramfs -u
sudo apt clean; sudo apt autoclean; sudo apt autoremove; sudo apt remove; sudo apt purge

Installation du noyau et génération d'archives .deb

Installation du noyau et génération d’archives .deb

Para ejecutar este paso, es relevante contar con la instalación del paquete llamado Kernel-package. Pour cela, la procédure est la suivante et commence la suivante sous la forme suivante :

sudo wget -c http://ftp.us.debian.org/debian/pool/main/k/kernel-package/kernel-package_13.018+nmu1~bpo9+1_all.deb
sudo apt install ./kernel-package_13.018+nmu1~bpo9+1_all.deb
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers
cd /usr/src
sudo dpkg -i *.deb

En cas de que, durante el proceso de compilation, se obtenga un erreur relacionado con los certificados del Kernelqueda como opción el poder ejecutar la suivante orden de comando para solucionarlo automatizadamente:

sed -i '/CONFIG_SYSTEM_TRUSTED_KEYS/s/^/#/g' .config

Sí, todo ha terminado bien, solo queda reiniciar nuestro ordenador y probar como levanta nuestro sistema operativo con el nuevo Kernel. Tal como se muestra él antes y después, en los siguientes pantallazos :

Antes de l’installation du noyau

Antes de l'installation

Après l’installation du noyau

Après l'installation

Article lié :

Fast Kernel Headers, un joint de parches qui accélère la compilation du Kernel en un 50-80%

Article lié :

Kerla : un nouveau noyau écrit en Rust et compatible avec l’ABI de Linux

Résumé : Bannière post 2021

CV

En resumen, esperamos que este tutorial sea de mucha utilidad, tanto para utilisateurs avancés viens un Desarrolladores de Distros ou Respines. Los cuales, suelen requerir « compiler un noyau » especifico sobre un Sistema Operativo GNU/Linux actualmente instalado o uno que se esté generando desde cero, para lograr incorporar, un mejor rendimiento y optimización sobre un hardware específico. Majormente, con el objetivo de lograr, un petite consommation de CPU et de mémoire RAM.

Aunque, si alguno conoce alguna otra útil forma de realizar dicho procedimiento o conoce alguna suggestion, recommandation ou correction a lo aquí aportado, bienvenido es a hacerlo a través de los comentarios. Y sí, simplemente te ha gustado esta publicación, no dejes de commentarla y de compartirla con otros. Además, recuerda visitar nuestra « page d’accueil » para explorar más noticias, además de unirte a nuestro canal oficial de Télégramme de DesdeLinuxo este groupe para más información sobre el tema de hoy.