Linux el grano liberan 2.6.xx
Estos son los apuntes de liberación para la versión 2.6 Linux. Léalos con cuidado,
Como ellos le dicen sobre que esto es todo, explique como instalar el
El grano, y que hacer si algo se equivoca(se estropea,fracasa).
¿CUÁL ES LINUX?
Linux es una reproducción del sistema de operaciones Unix, escrito desde el principio por
Linus Torvalds con la ayuda de un sin apretar - teje el equipo de hackeres a través
La Red. Esto apunta hacia POSIX y el UNIX Solo el cumplimiento de Especificación.
Esto tiene todos los rasgos los que usted esperaría en Unix moderno hecho y derecho,
Inclusión de multiasignación verdadera, memoria virtual, bibliotecas compartidas, demanda
La carga, compartido " la copia sobre escribe " executables, la dirección de memoria apropiada,
E interconexión de multimontón que incluye IPv4 y IPV6.
Esto es distribuido bajo la Licencia de Gran público de ÑU - visto el
Acompañamiento de COPIAR de archivo para más detalles.
¿SOBRE LO QUE HARDWARE ESTO CORRE?
Aunque al principio desarrollado primero para ordenadores personales 32 bites x86-basados (386 o más alto),
Hoy Linux también corre sobre (al menos) la Alfa Compaq AXP, el Sol SPARC
UltraSPARC, Motorola 68000, PowerPC, PowerPC64, BRAZO, Hitachi SuperH,
IBM S/390, MIPS, CV PA-RISC, Intel IA-64, DICIEMBRE VAX, AMD x86-64, EJE CRIS,
Y Renesas M32R arquitecturas.
Linux es fácilmente portátil a lo más de uso general 32-o arquitecturas de 64 bit
Mientras ellos tienen una unidad de dirección de memoria paginada (PMMU) y un puerto de el
ÑU C recopilador (gcc) (parte de la Colección de Recopilador de ÑU, GCC). Linux tiene
También sido puesto a babor a un número de arquitecturas sin un PMMU, aunque
La funcionalidad entonces obviamente algo es limitada.
DOCUMENTACIÓN:
- Hay mucha documentación disponible ambos en la forma electrónica sobre
El Internet y en libros, tanto Linux-específico como pertenecer
Preguntas de UNIX generales. Yo recomendaría por examinar la documentación
Los subdirectorios sobre cualquier FTP Linux ubican para el partido liberal democrático (Linux la Documentación
Proyecto) libros. No significan(piensan) este README para ser la documentación sobre el
Sistema: hay mucho mejores fuentes disponibles.
- Hay varios archivos README en la Documentación / el subdirectorio:
Estos típicamente contienen apuntes de instalación grano específicos para unos
Conductores por ejemplo. Visto Documentation/00-INDEX para una lista de que
Es contenido en cada archivo. Por favor lea el archivo de Cambios, como ello
Contiene la información sobre los problemas, que pueden pasar por la mejora
Su grano.
- El subdirectorio Documentation/DocBook/contiene varias guías para
Reveladores grano y usuarios. Estas guías pueden ser dadas en
Número de formatos: Postdata (.ps), PDF, y HTML, entre otros.
Después de la instalación, " hacen psdocs ", " hacen pdfdocs ", " o hace htmldocs "
Dará la documentación en el formato solicitado.
INSTALACIÓN del grano:
- Si usted instala las fuentes llenas, pone el grano tarball en
El directorio donde usted tiene permisos (eg. su directorio de casa)
Desempaquételo:
Gzip-cd linux-2.6. XX.tar.gz | alquitranan xvf-
Bzip2-dc linux-2.6. XX.tar.bz2 | alquitranan xvf-
Sustituya "XX" por el número de versión del último grano.
¡No use el área/usr/src/linux! Esta área tiene un (por lo general
Incompleto) el juego de los jefes grano que son usados por el jefe de biblioteca
Archivos. Ellos deberían emparejar la biblioteca, y no son estropeados por
Todo lo que el kernel-du-jour pasa de ser.
- Usted también puede mejorar entre 2.6.xx liberaciones por remendando. Los parches son
Distribuido en gzip tradicional y el formato de bzip2 más nuevo.
Instale por remendando, consiga todos los archivos de pedazo más nuevos, entre el
El directorio de nivel superior de la fuente grano (linux-2.6.xx) y ejecuta:
Gzip-cd ../patch-2.6.xx.gz | remiendan-p1
Bzip2-dc ../patch-2.6.xx.bz2 | remiendan-p1
( Repita xx para todas las versiones más grande que la versión de su corriente
El árbol de la fuente, _in_order _) y usted debería ser bien. Usted puede querer quitar
Los archivos de reserva (xxx ~ o xxx.orig), y se aseguran que hay no
Parches fracasados (xxx * o xxx.rej). Si hay, usted o yo tenemos
Hecho un error.
A diferencia de parches para el 2.6.x los granos, remiendan para el 2.6.x.y granos
( También sabido(conocido) como el - granos estables) no son incrementales, pero en cambio se aplican
Directamente a la base 2.6.x grano. Por favor leer
Documentation/applying-patches.txt para más información.
O bien, el grano pedazo(el grano de pedazo) de escritura puede ser usado automatizar esto
Proceso. Esto determina la versión corriente grano y aplica alguno
Parches encontrados.
Linux/scripts/patch-kernel linux
El primer argumento en el mando(la orden) encima es la posición de el
Fuente grano. Los parches son aplicados del directorio corriente, pero
Un directorio alternativo puede ser especificado como el segundo argumento.
- Si usted mejora entre liberaciones que usan los parches de serie estables
( Por ejemplo, el pedazo-2.6.xx.y), note que estas "liberaciones de punto" son
No incremental y debe ser aplicado al 2.6.xx el árbol bajo. Para
El ejemplo, si su grano bajo es 2.6.12 y usted quiere aplicarse el
2.6.12.3 El pedazo, usted no hace y de verdad primero no debe aplicarse el
2.6.12.1 Y 2.6.12.2 parches. Asimismo si usted controla el grano
La versión 2.6.12.2 y quiere brincar a 2.6.12.3, usted debe primero
Invierta el 2.6.12.2 pedazo (es decir remiende-R) _before_ la aplicación
El 2.6.12.3 pedazo.
- Asegurar que usted no tiene ningunos archivos añejos .o y dependencias que mienten(están) alrededor:
Cd linux
Haga mrproper
Usted ahora debería tener las fuentes correctamente instaladas.
EXIGENCIAS DE SOFTWARE
Compilando y controlando el 2.6.xx los granos requieren actualizado
Las versiones de varios paquetes de software. Consultar
Documentación/cambios para los números de versión mínimos requeridos
Y como conseguir modernización para estos paquetes. Tenga cuidado aquella utilización
Las versiones en exceso viejas de estos paquetes pueden causar indirecto
Los errores que son muy difíciles de detectar, entonces no asumen esto
Usted solamente(justo) puede poner al día paquetes cuando problemas obvios surgen durante
Construya o la operación.
CONSTRUYA el directorio para el grano:
Compilando el grano todos los archivos de salida van a por falta ser
Almacenado juntos con el código original grano.
La utilización de la opción " hace O=output/dir " le permiten especificar un suplente
Lugar para los archivos de salida (inclusión .config).
Ejemplo:
Código original grano:/usr/src/linux-2.6. N
Construya el directorio:/home/name/build/kernel
Configurar y construir el empleo grano:
Cd/usr/src/linux-2.6. N
Haga la O =/home/name/build/kernel menuconfig
Haga O =/home/name/build/kernel
Sudo hacen la O =/home/name/build/kernel modules_install instalan
Por favor note: Si la opción 'O=output/dir' es usada entonces debe ser
Usado para todas las invocaciones de hacen.
CONFIGURACIÓN del grano:
No salte este paso incluso si usted sólo mejora a un menor
Versión. Opciones de configuración nuevas son agregadas en cada liberación,
Problemas impares aparecerán si los archivos de configuración no son establecidos
Como esperado. Si usted quiere llevar su configuración existente
La versión nueva con el trabajo mínimo, el empleo " hace oldconfig ", que va
Sólo pídale las respuestas a preguntas nuevas.
- Órdenes de configuración alternas son:
" Haga menuconfig " el Texto menús basados en color, radiolists y diálogos.
" Haga xconfig " X ventanas (Qt) el instrumento de configuración basado.
" Haga gconfig " X ventanas (Gtk) el instrumento de configuración basado.
" Haga oldconfig " la Falta todas las preguntas basadas en el contenido
Su existencia ./.config archivo y petición
Símbolos nuevos config.
" Haga silentoldconfig "
Como susodicho, pero evita desordenar la pantalla
Con preguntas ya contestaron.
" Haga defconfig " Crean a ./.config el archivo por usando la falta
El símbolo valora de arch/$ARCH/defconfig.
" Haga allyesconfig "
Cree a ./.config el archivo por poniendo el símbolo
Valores a 'y' tanto como posible.
" Haga allmodconfig "
Cree a ./.config el archivo por poniendo el símbolo
Valores 'a m' tanto como posible.
" Haga allnoconfig " Crean a ./.config el archivo por poniendo el símbolo
Valores 'a n' tanto como posible.
" Haga randconfig " Crean a ./.config el archivo por poniendo el símbolo
Valores a valores arbitrarios.
El allyesconfig/allmodconfig/allnoconfig/r andconfig variantes puede
También use la variable de ambiente KCONFIG_ALLCONFIG para especificar
El nombre del archivo que contiene opciones config que el usuario requiere para ser
Juego a un valor específico. Si KCONFIG_ALLCONFIG=filename no es usado,
" Haga *config " comprobaciónes para un archivo llamado " todo {yes/mod/no/random} .config "
Para los valores de símbolo que deben ser obligados. Si este archivo no es encontrado,
Esto comprueba para un archivo llamaron "all.config" para contener valores forzados.
Los APUNTES sobre " hacen config ":
- El teniendo(habiendo) a conductores innecesarios hará el grano más grande, y puede
En algunas circunstancias conducen a problemas: sondeo para
La tarjeta de regulador no existente puede confundir a sus otros reguladores
- La compilación del grano " con el Procesador escribe a máquina " el juego más alto que 386
Terminará en un grano que no trabaja sobre los 386. El
El grano descubrirá esto sobre bootup, y se rendirá.
- Un grano con la emulación de matemáticas compilada en todavía usará el
El coprocesador si uno está presente: la emulación de matemáticas va a solamente(justo)
Nunca acostúmbrese en aquel caso. El grano será ligeramente más grande,
Pero trabajará sobre máquinas diferentes independientemente de si ellos
Tenga un coprocesador de matemáticas o no.
- " La entalladura de grano " detalles de configuración por lo general termina en
El grano más grande o lento (o ambos), y hasta puede hacer el grano
Menos estable por configurando algunas rutinas para activamente intentar
Rompa mal el código para encontrar problemas grano (kmalloc ()). Así usted
Probablemente debería contestar 'la n' a las preguntas para
"Desarrollo", rasgos "experimentales" que "o eliminan fallos".
COMPILACIÓN del grano:
- Asegurar que usted tiene al menos gcc 3.2 disponible.
Para más información, refiérase a la Documentación/Cambios.
Por favor note que usted todavía puede controlar programas de usuario a.out con este grano.
- Hacer "un hacer" para crear una imagen comprimida grano. Esto es también
Posible de hacer " hacen instalan " si usted tiene lilo instalado para satisfacer el
El grano makefiles, pero usted puede querer comprobar su sistema particular lilo primero.
Hacer el real le instalan tienen que ser la raíz, pero ninguno del normal
Construya debería requerir esto. No tome el nombre de raíz en vano.
- Si usted configurara cualquiera de las partes del grano como ` los módulos, usted
También tendrá que " hacer modules_install ".
- Guardar(mantener) un grano de reserva práctico en caso de algo se equivoca(se estropea,fracasa). Esto es
Sobre todo verdadero para las liberaciones de desarrollo, desde cada liberación nueva
Contiene el código nuevo que no ha sido eliminado fallos. Asegúrese que usted guarda(mantiene)
Reserva de los módulos correspondiente a aquel grano, también. Si usted
Instalan un grano nuevo con el mismo número de versión que su
El funcionamiento del grano, no haga una reserva de su directorio de módulos antes de que usted
Haga un " hacen modules_install ".
O bien, antes de la compilación, use el grano config la opción
"LOCALVERSION" para añadir a un sufijo único a la versión regular grano.
LOCALVERSION puede ser puesto en " el Sistema General " el menú.
- Para echar su grano nuevo, usted tendrá que copiar el grano
Imagen (por ejemplo ../linux/arch/i386/boot/bzImage después de compilación)
Al lugar donde su grano regular bootable es encontrado.
- Echada de un grano directamente de un disquete sin la ayuda
Bootloader como LILO, más es apoyado.
Si usted echa Linux del disco duro, las posibilidades son usted usan a LILO que
Usa la imagen grano como especificado en el archivo/etc/lilo.conf. El
El archivo de imagen grano es por lo general/vmlinuz,/boot/vmlinuz,/bzImage
/boot/bzImage. Para usar el grano nuevo, salve(ahorre) una copia de la imagen vieja
Y copia la imagen nueva sobre el viejo. Entonces, usted DEBE CONTROLAR DE NUEVO A LILO
¡¡Poner al día el mapa que carga!! Si usted no hace, usted no será capaz de echar
La imagen nueva grano.
La nueva instalación A LILO es por lo general una materia(un asunto) de controlar/sbin/lilo.
Usted puede desear corregir/etc/lilo.conf para especificar una entrada para su
La imagen vieja grano (dice,/vmlinux.old) en caso del nuevo no hace
Trabajo. Visto a LILO docs para más información.
Después de la nueva instalación A LILO, usted debería ser puesto todo. Parada el sistema,
¡Reanude, y disfrute!
Si usted alguna vez tenga que cambiar el dispositivo de raíz de falta, el modo de vídeo,
El tamaño de disco virtual, etc. en la imagen grano, usa el programa 'rdev' (
O bien LILO echa opciones cuando apropiado). Ninguna necesidad
Compile de nuevo el grano para cambiar estos parámetros.
- Reanudar con el grano nuevo y disfrutar.
SI ALGO SE EQUIVOCA(SE ESTROPEA,FRACASA):
- Si usted tiene los problemas que parecen estar previsto a bichos grano, por favor compruebe
El archivo MAINTAINERS para ver si hay una persona particular se asoció
Con la parte del grano con el que usted tiene problemas. Si allí
No es alguien puso en una lista allí, entonces la segunda mejor cosa es de enviar
Ellos a mí (
torvalds@osdl.org), y posiblemente con cualquier otro relevante
Lista de direcciones o al grupo de discusión.
- En todos los informes bicho, *please* dice de que el grano usted habla,
Como duplicar el problema, y que su sistema es (usa su común
Sentido). Si el problema es nuevo, decirme así, y si el problema es
Los viejos, por favor intente decirme cuando usted primero lo notó.
- Si el bicho termina en un mensaje como
Incapaz de manejar grano que pagina(llama por alta voz) petición en dirección C0000010
Oops: 0002
EIP: 0010:XXXXXXXX
Eax: xxxxxxxx ebx: xxxxxxxx ecx: xxxxxxxx edx: xxxxxxxx
Esi: xxxxxxxx edi: xxxxxxxx ebp: xxxxxxxx
Ds: xxxx es: xxxx fs: xxxx gs: xxxx
Pid: xx, número de proceso: xx
Xx xx xx xx xx xx xx xx xx xx
O grano similar que elimina fallos de información sobre su pantalla o en su
El tronco de sistema, por favor duplíquesobre ello *exactly*. El vertedero puede mirar
Incomprensible a usted, pero esto realmente contiene la información que puede
Ayuda que elimina fallos del problema. El texto encima del vertedero es también
Importante: esto dice algo sobre por qué el grano vertido el código (en
El susodicho ejemplo ello es debido a un indicador malo grano). Más información
En teniendo sentido del vertedero está en Documentation/oops-tracing.txt
- Si usted compilara el grano con CONFIG_KALLSYMS usted puede enviar el vertedero
Como es, si no usted tendrá que usar el programa "ksymoops" para hacer
Sentido del vertedero. Esta utilidad puede ser trasvasada
Ftp: // ftp. O bien usted puede hacer la consulta de vertedero a mano:
- En la eliminación de fallos de vertederos como el susodicho, esto ayuda enormemente si usted puede
Busque(Visite) lo que el EIP valora el medio. El valor de maleficio como tal no ayuda
Yo o alguien más muchísimo: esto dependerá su particular
Sistema grano. Que usted debería hacer es toman el valor de maleficio del EIP
La línea (no hace caso " a los 0010: "), y lo buscan(visitan) en el grano namelist
Visto el que la función grano contiene la dirección de ofensa.
Para averiguar el nombre de función grano, usted tendrá que encontrar el sistema
El binario asociado con el grano que expuso el síntoma. Esto es
El archivo 'linux/vmlinux'. Extraer el namelist y emparejarlo contra
El EIP del choque grano, haga:
Nm vmlinux | clasifican | menos
Esto le dará una lista de direcciones grano clasificadas en la ascensión
La orden(El pedido), de la que es simple de encontrar la función que contiene el
Ofensa de dirección. Note que la dirección dada por el grano
La eliminación de fallos de mensajes no necesariamente hará juego exactamente con el
Direcciones de función (de hecho, que es muy improbable), entonces usted no puede
Solamente(Justo) 'grep' la lista: la lista, sin embargo, le dará el comienzo
Punto de cada función grano, tan por buscando la función que
Tiene una dirección de partida más abajo que el que el que usted busca, pero
Es seguido por una función con una dirección más alta usted encontrará el que
Usted quiere. De hecho, esto puede ser una idea buena de incluir un poco
"Contexto" en su informe de problema, dando a unas líneas alrededor el
Interesante.
Si usted por cualquiera razón no puede hacer el susodicho (usted tiene un pre compilado
Imagen grano o similar), diciéndome tanto sobre su sistema como
Posible ayudará.
- O bien, usted puede usar gdb sobre un grano de carreras. (Sólo para leer; esto es usted
No puede cambiar valores o poner puntos de rotura.) Para hacer esto, primero compilan el
Grano con-g; corrija arch/i386/Makefile de manera apropiada, luego haga un " hacen
Limpio ". Usted también tendrá que permitir CONFIG_PROC_FS (vía " hacen config ").
Después de que usted ha reanudado con el grano nuevo, haga " gdb vmlinux/proc/kcore ".
Usted ahora puede usar todas las órdenes de gdb habituales. El mando(la orden) de alzar la vista el
El punto donde su sistema se estrelló es " la l *0xXXXXXXXX ". (Sustituya el XXXES
Con el valor de EIP.)
Gdb'ing un grano no-carreras actualmente falla porque gdb (mal)
Desatiende la compensación de comienzo para la que el grano es compilado.