[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previaÚltima revisiónAmbos lados, revisión siguiente | ||
es:slackbook:linux_kernel [2019/02/17 12:26 (UTC)] – serloz | es:slackbook:linux_kernel [2019/03/06 16:02 (UTC)] – [Compilar un kernel y por qué hacerlo así] serloz | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
<!-- Add your text below. We strongly advise to start with a Headline (see button bar above). --> | <!-- Add your text below. We strongly advise to start with a Headline (see button bar above). --> | ||
- | ====== El kernel de Linux ====== | + | ====== El núcleo (kernel) de Linux ====== |
Línea 20: | Línea 20: | ||
La complejidad de un kernel de Linux actual es asombrosa. El código fuente | La complejidad de un kernel de Linux actual es asombrosa. El código fuente | ||
- | para el kernel pesa casi 400 MB sin comprimir. Hay miles de desarrolladores, | + | para el kernel pesa casi 400MB sin comprimir. Hay miles de desarrolladores, |
construido junto, el kernel pronto pasaría los 100MB de tamaño. Con el fin de mantener el tamaño del kernel bajo (así como la cantidad de RAM | construido junto, el kernel pronto pasaría los 100MB de tamaño. Con el fin de mantener el tamaño del kernel bajo (así como la cantidad de RAM | ||
necesaria para el kernel), la mayoría de las opciones del kernel se construyen como | necesaria para el kernel), la mayoría de las opciones del kernel se construyen como | ||
- | módulos. Usted puede pensar en estos módulos como drivers de dispositivo que pueden ser | + | módulos. Usted puede pensar en estos módulos como controladores (drivers) de dispositivo que pueden ser |
insertados o eliminados de un kernel en ejecución cuando uno quiera. Verdaderamente, | insertados o eliminados de un kernel en ejecución cuando uno quiera. Verdaderamente, | ||
no son drivers de dispositivo en absoluto, pero contienen soporte para cosas tales | no son drivers de dispositivo en absoluto, pero contienen soporte para cosas tales | ||
Línea 78: | Línea 78: | ||
programas para eliminarlos: | programas para eliminarlos: | ||
**// | **// | ||
- | modprobe, | + | modprobe, |
Línea 88: | Línea 88: | ||
===== Compilar un kernel y por qué hacerlo así ===== | ===== Compilar un kernel y por qué hacerlo así ===== | ||
- | La mayoría de los usuarios de Slackware nunca necesitarán compilar un kernel. Los kernels gigante y genérico contienen prácticamente todo el soporte que necesitará. | + | La mayoría de los usuarios de Slackware nunca necesitarán compilar un kernel. Los kernels gigante |
Línea 111: | Línea 111: | ||
''/ | ''/ | ||
apunta a la versión específica del kernel utilizada, pero esto no está de ninguna manera | apunta a la versión específica del kernel utilizada, pero esto no está de ninguna manera | ||
- | grabado en piedra. | + | grabado en piedra. |
- | without encountering any problems. | + | sin tener problemas. |
Línea 122: | Línea 122: | ||
- | The most difficult part of any kernel | + | La parte más difícil de cualquier compilación del kernel |
- | configuration. There are hundreds of options, many of which can | + | ser compiladas opcionalmente en módulos. Esto significa que hay miles de |
- | optionally be compiled into modules. This means there are thousands of | + | formas de configurar un kernel. |
- | ways to configure a kernel. | + | que pueden mantenerle |
- | that can keep you from running into too much trouble. | + | es '' |
- | configuration file is '' | + | |
- | brave, you can manually edit this file with a text editor, | + | |
- | recommend you use the kernel's built-in tools for manipulating | + | |
'' | '' | ||
- | Unless you are very familiar with configuring | + | A menos que esté muy familiarizado con la configuración de kernels, |
- | always start with a solid base configuration and modify it. This | + | siempre empezar con una sólida |
- | prevents you from skipping an important option that might force you to | + | le impide omitir una opción importante que podría obligarlo a |
- | compile the kernel | + | compilar el kernel |
- | kernel | + | por los kernels predeterminados de Slackware. |
- | by Slackware's default kernels. You can find them on your Slackware | + | o en su espejo (mirror) favorito en el directorio |
- | install disks or at your favorite | + | '' |
- | '' | + | |
Línea 153: | Línea 149: | ||
- | You can replace the default | + | Puede reemplazar el archivo |
- | copying or downloading the '' | + | copiando o descargando el archivo |
- | kernel you wish to use as a base. Here I am using Slackware' | + | que desea utilizar como base. En este caso estoy usando el kernel |
- | recommended | + | recomendado para una base, pero es posible que desee utilizar el |
- | huge.s | + | archivo de configuración |
- | and thus creates a smaller | + | huge.s. |
- | use of an initrd. | + | y así crea una imagen del kernel |
+ | uso de un initrd. | ||
Línea 168: | Línea 165: | ||
<note important> | <note important> | ||
- | The Slackware | + | El archivo del kernel |
- | includes it. If you forget, or simply copy the | + | lo incluye. Si olvida, o simplemente copia el |
- | '' | + | '' |
- | ''/ | + | ''/ |
- | '' | + | se usará el archivo |
- | instead. | + | en su lugar. |
</ | </ | ||
- | If you want to use the configuration for the currently running | + | Si desea utilizar la configuración para el kernel |
- | as your base, you may be able to locate it at | + | como su base, usted puede ser capaz de encontrarlo en |
- | ''/ | + | ''/ |
- | file that includes the entire | + | que incluye la configuración completa del kernel |
- | format and requires that your kernel | + | y requiere que su kernel |
Línea 188: | Línea 185: | ||
- | Now that we've created a solid base configuration, it's time to make | + | Ahora que hemos creado una configuración de base sólida, es hora de hacer |
- | any configuration changes we want. The entire | + | cualquier cambio de configuración que queramos. Todo el proceso de compilación del kernel |
- | configuration to compilation is performed with the | + | la configuración de la compilación se realiza con el comando |
- | **// | + | **// |
- | Each argument performs a different function. | + | Cada argumento realiza una función diferente. |
- | If you are upgrading to a newer kernel | + | Si está actualizando |
- | want to use the // | + | querrá usar el argumento |
- | your base '' | + | lo que normalmente indica que la nueva versión del kernel |
- | that usually indicates that the new kernel | + | esto es generalmente algo bueno que hacer. |
- | options. Since options are added at virtually every kernel | + | |
- | this is generally a good thing to do. | + | |
Línea 223: | Línea 218: | ||
- | Here you can see that the new kernel I am compiling has added support | + | Aquí puede ver que el nuevo núcleo que estoy compilando ha añadido soporte para un nuevo sistema de ficheros: ext4. // |
- | for a new filesystem: ext4. // | + | |
- | original | + | |
- | set, and prompted | + | |
- | safe to choose the default option, but you may wish change this. | + | |
- | // | + | |
- | new configuration options, making it ideal for users who simply have to | + | |
- | try out the latest | + | |
- | For more serious configuration tasks, there are a multitude of options. | + | Para tareas de configuración más serias, hay múltiples opciones. |
- | The linux kernel | + | El kernel |
- | // | + | // |
- | one and ask what you would like to do. This is so tedious that hardly | + | y le preguntará qué le gustaría hacer. Esto es tan tedioso que apenas |
- | anyone ever uses it anymore. | + | alguien lo usa ya. |
Línea 255: | Línea 243: | ||
</ | </ | ||
- | Fortunately, there are two much easier ways to configure your kernel, | + | Afortunadamente, hay dos maneras mucho más fáciles de configurar su kernel, |
- | // | + | // |
- | menu-driven program that lets you select and de-select options without | + | |
- | having to step through each one. // | + | |
- | commonly used method, and the one I recommend. // | + | |
- | only useful if you are attempting to compile the kernel | + | |
- | graphical user interface within | + | |
- | so similar however, that we are only going to document | + | |
- | // | + | |
- | Running | + | Ejecutando |
- | present you with the friendly | + | Cada sección del núcleo tiene su propio submenú, y puede navegar con |
- | Each kernel section is given its own submenu, and you can navigate with | + | las teclas de dirección. |
- | the arrow keys. | + | |
Línea 276: | Línea 256: | ||
<note warning> | <note warning> | ||
| | ||
- | If you are compiling a kernel | + | Si está compilando un kernel |
- | stock Slackware | + | |
- | option. This is found on the //" | + | |
- | set this will result in your kernel | + | |
- | modules used by the stock kernels. | + | |
- | system unbootable. | + | |
</ | </ | ||
- | Once you've finished configuring the kernel, | + | Una vez que haya terminado de configurar el kernel, |
- | compiling it. There are many different methods for this, but the most | + | compilarlo. Hay muchos métodos diferentes para esto, pero el más |
- | reliable is to use // | + | fiable es utilizar |
- | **// | + | **// |
- | you will see lots of data scroll through the terminal until either the | + | verá muchos datos desplazarse |
- | compile process is complete or a fatal error is encountered. | + | |
Línea 307: | Línea 281: | ||
- | If the process ends in an error, | + | Si el proceso termina en un error, |
- | configuration first. Compile errors are usually caused by a fault | + | en primer lugar. Los errores de compilación normalmente son causados por un error |
- | '' | + | del archivo |
- | we're still not entirely finished, as we need to build the modules. | + | aún no hemos terminado del todo, ya que tenemos que construir los módulos. |
Línea 325: | Línea 299: | ||
- | If both the kernel | + | Si tanto el kernel |
- | ready to install them. The kernel | + | listos para instalarlos. La imagen del kernel |
- | location, typically the ''/ | + | debería darle un nombre único para evitar sobrescribir cualquier otra imagen del núcleo |
- | should give it a unique name to avoid overwriting any other kernel | + | situada allí. Tradicionalmente las imágenes del kernel |
- | images located there. Traditionaly | + | '' |
- | '' | + | añadida. |
- | appended. | + | |
Línea 341: | Línea 314: | ||
- | Once these steps have been completed, you will have a new kernel | + | Una vez completados estos pasos, tendrá una nueva imagen del kernel |
- | located under ''/ | + | situada debajo de ''/ |
- | directory under ''/ | + | situados debajo del directorio |
- | this new kernel, | + | este nuevo kernel, |
- | create an initrd | + | crear un initrd |
- | kernel's modules to boot), and run **// | + | módulos del kernel |
- | update the boot loader. When you reboot, if all went according to plan, | + | actualizar el cargador de arranque. Cuando reinicie, si todo sale según el plan, |
- | you should have an option to boot with your newly compiled | + | debería tener la opción de arrancar con su kernel |
- | something went wrong, you may be spending some time fixing the problem. | + | algo saliese mal, puede ser que pase algún tiempo arreglando el problema. |
- | ====== | + | ====== |
- | **Previous Chapter: [[slackbook: | + | **Capítulo anterior: [[es:slackbook: |
- | ====== | + | ====== |
<!-- If you copy information from another source, then specify that source --> | <!-- If you copy information from another source, then specify that source --> | ||
- | * Original source: [[http:// | + | * Fuente original: [[http:// |
<!-- Authors are allowed to give credit to themselves! --> | <!-- Authors are allowed to give credit to themselves! --> | ||
- | * Originally written by Alan Hicks, Chris Lumens, David Cantrell, Logan Johnson | + | * Escrito originalmente por Alan Hicks, Chris Lumens, David Cantrell, Logan Johnson |
<!-- * Contrbutions by [[wiki: | <!-- * Contrbutions by [[wiki: | ||
+ | * Traducido por [[wiki: | ||
<!-- Please do not modify anything below, except adding new tags.--> | <!-- Please do not modify anything below, except adding new tags.--> | ||
<!-- You must also remove the tag-word " | <!-- You must also remove the tag-word " | ||
{{tag> | {{tag> |