02 agosto 2006

Parámetros de arranque

Pues vamos entrando en materia :P

Veamos una pequeña lista de los parámetros que se pueden pasar al proceso init en el arranque.

single: Arrancará el sistema en single mode, sin lanzar los daemons, sin red... sólo lo básico. Muy útil para tareas de administración. Se inicia el proceso init y después nos pide la contraseña de root. Si pulsamos Crtl+d el proceso de arranque continuará en el modo establecido en el /etc/inittab

root=/dev/device: Le dice al kernel qué dispositivo debe usar como sistema de archivos raíz. Por ejemplo, si arrancamos desde un Linux instalado en un pendrive usaríamos root=/dev/sda1

vga=ask: Nos muestra durante el arranque los modos posibles de la gráfica, permitiéndonos elegir uno de forma interactiva.

ro (read only): Con este parámetro ordenamos al kernel que monte el sistema de archivos raíz en modo de sólo lectura. Lo usaremos cuando queramos comprobar y reparar un sistema de archivos con fsck (no se debe hacer en modo lectura/escritura) o, por ejemplo, durante la investigación forense de una intrusión en un servidor.

rw (read-write): Para montar el sistema de archivos en modo lectura/escritura. Es el modo por defecto.

panic=N: Esta opción forzará un reinicio en N segundos en caso de un kernel panic. Útil si estamos probando un kernel que acabamos de compilar.

maxcpus=N: Para indicar a un kernel SMP el número máximo de CPUs que debe usar.

debug: Activa el kernel debugging. Útil sólo si estás programando un módulo de kernel y quieres encontrar problemas. Supongo que Linus Torvalds lo pasará directamente desde el cargador de arranque. Por cierto... Torvalds, usará LILO o GRUB?

selinux [0|1]: Activa (1) o desactiva (0) SELinux en el arranque.

raid=/dev/mdN: Esta opción le dice al kernel cómo montar arrays RAID. Es de destacar que, si md está compilado dentro del kernel y no como módulo, las particiones de tipo 0xfd son detectadas y montadas "automágicamente" en RAID. Esta detección puede suprimirse usando el parámetro raid=noautodetect.

mem=MEMORIA: La usaremos cuando el kernel no sea capaz de detectar toda la memoria, forzándolo a usar la cantidad especificada como MEMORIA.

hdN=noprobe: Para desactivar el dispositivo hdN. Recuerda que si desactivas en la BIOS, pongamos por caso, /dev/hdb, Linux lo seguirá detectando a no ser que uses este parámetro.


¿Y cómo pasar los parámetros al kernel?

Sencillo, aunque depende del cargador de arranque que uses.

Con LILO basta con pulsar la tecla [Esc] cuando aparezca el menú. Introduces entonces la etiqueta (label) de la imagen que quieres arrancar, seguida de los parámetros que vas a usar.

Con GRUB hay que pulsar 'e' para editar la línea de comandos de arranque.

Por último hay que recordar que la línea de comandos del kernel es un string con una longitud de 255 caracteres, incluyendo el carácter nulo de final de cadena '\0'. Si introducimos una cadena más larga, el string quedará truncado.

Pues ahí queda eso, para que lo disfrutéis, y para servirme de chuleta en el futuro ;)

Fuente: nixCraft

No hay comentarios: