¿Cómo compilar el código fuente del kernel de Linux? ¿Dónde está el código fuente de Ubuntu?
1. Instale el kernel
Si el kernel ya está instalado (hay un subdirectorio de Linux en el directorio /usr/src/), omítalo . Si no está instalado, coloque el CD de instalación de Linux en la unidad de CD-ROM y busque el archivo kernel-source-2.xx.xx.rpm (xx representa un número, que indica el número de versión del kernel, por ejemplo). El directorio RPMS de RedHat Linux es el directorio /RedHat/RPMS/ y luego use el comando rpm -ivh kernel-source-2.xx.xx.rpm para instalar el kernel. Si no tiene un disco de instalación, puede descargarlo desde el sitio web de cada fabricante de Linux o desde www.kernel.org.
2. Borre los archivos .o y las asociaciones innecesarias que quedaron al compilar el kernel la última vez
cd /usr/src/linux
make mrproper
3. Configure el kernel y modifique los parámetros relacionados, consulte otra información
En la interfaz gráfica, cree xconfig en el menú de configuración del kernel de caracteres, configure las opciones del kernel correctamente, guarde y salga;
4. Configurar correctamente los archivos relacionados
make dep
5. Compile el kernel
Para kernels grandes (por ejemplo, esos. que requieren soporte SCSI Kernel),
6. Se requiere soporte SCSI), utilice make bzImage
Para núcleos pequeños, utilice make zImage
6. Compilar módulo
hacer módulos
7. Instalar módulos
hacer módulos_install
8. > En /usr/src Coloque el nuevo kernel en el directorio /linux/arch/i386 /boot/ y copie el archivo del kernel recién generado bzImage/zImage al directorio /boot, luego modifique el archivo /etc/lilo.conf y agregue el nuevo kernel bzImage/zImage para iniciar las opciones de inicio. El formato es el siguiente:
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
rompt
timeout=50
linear
default= linux-new ### Dile a lilo que use el nuevo kernel para iniciar Linux de forma predeterminada ###
append="mem=256M"
image=/boot/vmlinuz-2.2.14-5.0
label=linux
solo lectura
root=/dev/hda5
image=/boot/bzImage(zImage)
label=linux-new
solo lectura
root=/dev/hda5
Mantenga las opciones de arranque antiguas. Esto garantiza que si el nuevo kernel no arranca, aún se pueda acceder a Linux para otras operaciones. Después de guardar y salir, no olvide el paso más importante: ejecute /sbin/lilo para que los cambios surtan efecto.
9. Regenerar el disco RAM
Si su sistema no utiliza la opción de disco RAM initrd en /etc/lilo.conf, omita este paso.
Si /etc/lilo.conf en el sistema usa la opción de disco ram initrd, use los comandos mkinitrd initrd-kernel version number y kernel version number para regenerar el archivo del disco ram, por ejemplo, en mi Redhat 6.2:
mkinitrd initrd-2.2.14-5.0 2.2.2 .14-5.0
Después de eso, apunte el initrd en /etc/lilo.conf al archivo initrd-2.2.14-5.0 recién generado. : p>
initrd=/boot/initrd-2.2.14-5.0
El disco de memoria optimiza el sistema para obtener el máximo rendimiento. Vea el archivo /usr/src/linux/Documents/initrd.txt
10, reinicie, ¡OK!