Supremos Foro de Discusión
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

kernel slack para server

Ir abajo

kernel slack para server Empty kernel slack para server

Mensaje por guagua Vie Oct 12, 2012 9:04 am

Mini COMO de Slackware initrd
by Patrick Volkerding, volkerdi@slackware.com
Sat Sep 9 01:15:14 CDT 2006
---------
Traduccion al español

Este documento describe como crear e instalar un "initrd, el cual puede ser
requerido para usar el kernel 2.6. También ver "man mkinitrd".

1 Que es un initrd?
2 Porque necesito un initrd?
3 Como construyo un initrd?
4 Ahora que he construido un initrd, como lo uso?

1. Que es un initrd?

1. What is an initrd?

Initrd viene de "disco en ram inicial" (initial ramdisk). Un ramdisk inicial es
un sistema de archivos Linux muy pequeño que es cargado en la RAM y montado cuando
el kernel inicia y antes de que el sistema de archivos inicial root sea montado.

3. Porque necesito un initrd?

2. Why do I need an initrd?

La razon mas usual para usar un initrd es porque necesitas cargar el modulos
de el kernel antes de montar la particion raiz ( / ). Usualmente estos modulos
son, requeridos para soportar el sistema de archivos usados para la particion
raiz (ext3, reiserfs, xfs), o quizas la controladora a la que el disco duro esta
instalado (SCSI, RAID, etc). Escencialmente hay diferentes opciones disponibles
en kernels Linux modernos que no es practico tratar de incluir tantos kernels
diferentes para tratar de cubrir las necesidades de cada uno. Para eso es mucho
mas flexible incluir un kernel generico y un conjunto de modulos de el kernel.
El kernel generico 2.6 en Slackware soporta el sistema de archivos ext2 (el cual
es usado por el initrd), y tambien soporta la mayoria de controladoras IDE
(como lo hace el viejo bare.i). Asi que, si tienes un sistema basado en IDE
que usa el sistema de archivos ext2, entonces no necesitas usar un initrd para
arrancar.
De otra manera, sigue leyendo.

3. Como construyo un initrd?

La manera mas facil de hacer un initrd es usar el script incluido mkinitrd
en el paquete mkinitrd de Slackware. Avanzaremos a traves de el proceso de
actualizar a el kernel Linux 2.6.17.13 usando el paquete encontrado en
el directorio extra/linux-2.6.17.13/ en Slackware.

Primero, asegurate que los paquetes de kernel, modulos de el kernel,
y mkinitrd estan instalados ( los numeros de la version actual puede que
sean un poco diferentes, asi que esto es solo un ejemplo):

installpkg kernel-generic-2.6.37.6-i486-1.tgz
installpkg kernel-modules-2.6.37.6-i486-1.tgz
installpkg mkinitrd-1.0.1-2.6.37.6.tgz

Cambiate al directorio /boot:

cd /boot

Ahora queras ejecutar "mkinitrd". Yo estoy usando reiserfs como mi sistema
de archivos raiz, y puesto que es un sistem IDE el modulo reiserfs sera
el unico que necesito cargar:

mkinitrd -c -k 2.6.37.6 -m reiserfs

Esto debera de hacer dos cosas. Primero, Creara un directorio /boot/initrd-tree
conteniendo el sistema de archivos de el initrd. Entonces creara un initrd
(/boot/initrd.gz) desde ese arbol de directorios. Si quieres, podrias hacer
algunos cambios adicionales en /boot/initrd-tree/ y correr mkinitrd nuevamente
sin opciones para reconstruir la imagen. Esto es opcional, aunque, y solo los
usuarios avanzados necesitaran pensar en eso.

Aqui esta otro ejemplo. Construir una imagen initrd usando los modulos de el
kernel Linux 2.6.37.6 para un sistema con una particion raiz ext3 en /dev/hdb3.
Note que necesitas ambos el modulo jdb y ext3 para usar ext3:

mkinitrd -c -k 2.6.37.6 -m jbd:ext3 -f ext3 -r /dev/hdb3

4. Ahora que he construido el initrd, como lo uso?

4. Now that I've built an initrd, how do I use it?

Ahora que tienes un initrd (/boot/initrd.gz), queras cargarlo junto con
el kernel al inicio de el sistema. Si usas LILO como tu cargador
necesitas editar /etc/lilo.conf y agregar una linea para cargar el initrd.
Aqui esta seccion de ejemplo de lilo.conf mostrando mo se hace esto.

# Linux bootable partition config begins
image = /boot/vmlinuz-generic-2.6.37.6
initrd = /boot/initrd.gz
root = /dev/hda6
label = Lnx261713
read-only
# Linux bootable partition config ends

El initrd es cargado por la linea "initrd = /boot/initrd.gz".
Solo agrega la linea justo abajo de la linea para la imagen de el kernel
que usas. Guarda el archivo, y entonces corre lilo nuevamente ('lilo',
en la linea de comandos). Necesitaras correr lilo cada vez que editas
lilo.conf o reconstruyes el initrd.

Otros arrancadores como syslinux tambien soportan el uso de initrd.
Ve la documentacion de esos programas para ver los detalles en su
uso con initrd.

Asi quedo mi server y los modulos

Module Size Used by
ipv6 228913 36
lp 7073 0
ppdev 4861 0
parport_pc 18186 0
parport 25111 3 lp,ppdev,parport_pc
intel_agp 8992 1
intel_gtt 11318 1 intel_agp
uhci_hcd 18739 0
rtc_cmos 7650 0
ehci_hcd 34528 0
i2c_piix4 7036 0
8139too 16077 0
sg 20923 0
i2c_core 16377 1 i2c_piix4
rtc_core 11475 1 rtc_cmos
shpchp 23261 0
agpgart 22762 2 intel_agp,intel_gtt
serio_raw 3502 0
rtc_lib 1494 1 rtc_core
mii 3262 1 8139too
reiserfs 218238 1

Bien chiquito ideal !!!!

Fuente
guagua
guagua
Principiante
Principiante

Masculino Mensajes : 118
Puntos : 317
Reputación : 4
Fecha de inscripción : 11/07/2010
Edad : 41
Localización : Junin, Buenos Aires, Argentina

http://fabianbonetti.blogspot.com

Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.