Este capítulo empieza con información general sobre el arranque en Debian GNU/Linux, y a continuación sigue con secciones indivuales para métodos de instalación particulares, concluyendo con algunos avisos para la resolución de problemas.
Los parámetros de inicio son parámetros del kernel Linux que generalmente se usan para asegurarse de que los periféricos son tratados adecuadamente. Para la mayor parte, el kernel puede auto-detectar la información sobre los periféricos. De todos modos, en algunos casos, tendrá que ayudar al kernel un poco.
Dependiendo del firmware de la console desde la que está haciendo el arranqu,
se aplican métodos distintos para pasar argumentos al núcleo. Estos métodos
serán descritos más abajo, sepárandolos por procedimientos de arranque. Puede
encontrar información detallada sobre los parámetros de inicio en Linux BootPrompt
HOWTO
; esta sección sólo contiene un boceto de los parámetros más
notables.
Si es la primera vez que está arrancando el sistema, pruebe con los parámetro de arranque por defecto (esto es, no intente establececer ningún argumento) y compruebe si funciona correctamente. Probablemente lo haga. Si no, puede reiniciar luego y buscar los parámetros especiales que informarán al sistema sobre su hardware.
Cuando el kernel arranca, debe emitirse un mensaje Memory: avalilk/totalk available al principio del proceso. total debe coincidir con la cantidad total de RAM, en kilobytes, disponibles en su sistema. Si no coincide con la cantidad de RAM que tiene instalada actualmente, necesita usar el parámetro mem=ram, donde ram es la cantidad de memoria, con el sufijo ``k'' para kilobytes, o ``m'' para megabytes. Por ejemplo, mem=8192k o mem=8m significan ambos 8MB de RAM.
Si su monitor es sólo capaz de blanco y negro, utilice el argumento mono en el arranque. En cualquier otro caso, la instalación usará color, que es el modo por defecto.
Si está arrancando de una consola serie, generalmente el núcleo lo detectará. Si tiene una tarjeta de video (framebuffer) y un teclado también conectados al ordenador en el que quiere arrancar con la consola serie, tendrá que pasar el argumento console=dispositivo al núcleo, donde dispositivo es su dispositivo serie, que es generalmente algo como ``ttyS0''.
De nuevo, puede encontrar más detalles sobre los parámetros de inicio en
Linux
BootPrompt HOWTO
, incluyendo consejos para hardware desconocido.
Algunos problemas comúnes se incluyen aquí más abajo en Solución de problemas en
el proceso de arranque, Sección 6.10.
Durante la secuencia de arranque, puede ver muchos mensajes de la forma can't find ``algo'', o ``algo'' not present, can't initialize ``algo'', o incluso this driver release depends on ``algo''. La mayoría de estos mensajes no tienen importancia. Ve estos mensajes porque el disco de instalación se construye para funcionar en equipos con los más variopintos dispositivos periféricos. Obviamente, ningún equipo tendrá todos los periféricos posibles, por lo que el sistema operativo puede quejarse unas cuantas veces cuando busque los dispositivos que no posee. También puede observar el sistema pausado durante un tiempo. Esto sucede cuando está esperando la respuesta de algún dispositivo, y éste no está presente en su sistema. Si encuentra que el tiempo que se toma el sistema para iniciar es inaceptablemente largo, más tarde podrá crear un kernel personalizado (vea Compilación de un nuevo núcleo, Sección 8.4).
En algunos casos, querrá arrancar desde un sistema operativo existente. También puede iniciar el sistema de instalación usando otros métodos, pero instalar el sistema base desde disco.
Puede instalar Debian desde una partición ext2fs o desde una partición Minix. Esta técnica de instalación puede ser apropiada si está sustituyendo completamente su sistema Linux actual con Debian, por ejemplo.
Nótese que la partición desde la que está instalando no puede ser la
misma que en la que está instalando Debian (como /, /usr,
/lib
, y demás).
Para instalar desde una partición Linux existente, siga estas instrucciones.
http://http.us.debian.org/debian/dists/potato/main/disks-alpha/current/base2_2.tgz
Si tiene un CD arrancable, y su arquitectura y sistema soportan el arranque desde CD-ROM, no necesita disquete alguno. Arrancar de un CD-ROM en Alpha es algo más complicado que en un i386. Sin embargo, la reducción del número de disquetes necesarios hace que merezca la pena. Consulte Inicio del sistema de instalación, Capítulo 6 para más información sobre cómo arrancar sistemas Alpha desde CD y disquete.
Aunque no pueda arrancar desde CD-ROM puede instalar el sistema base de Debian desde CD-ROM. Lo que tiene que hacer es simplemente arrancar usando otra medio para la instalación; y para instalar el sistema base y cualquier paquete adicional, tan sólo debe hacer apuntar el sistema de instalación hacia la unidad de CD-ROM como se describe en ``Instalar el sistema base'', Sección 7.12.
Debe configurar: un servidor BOOTP y un servidor TFTP.
BOOTP es un protocolo IP que informa a un ordenador tanto de su dirección IP como dónde obtener una imagen de arranque en la red. A diferencia del OpenFirmware que se encuentra en sistemas Sparc y PowrPC, la consola SRM no utilizará RARP para obtener su dirección IP, por tanto deberá utilizar BOOTP para arrancar su Alpha a través de red . También puede introducir la configuración IP para los interfaces de red directamente en la consola SRM. [3]
El Trivial File Transfer Protocol (TFTP: protocolo trivial de transferencia de ficheros, n. del t.) se usa para servir la imagen de arranque al cliente. En teoría, puede usarse cualquier servidor, de cualquier plataforma, que implemente estos protocolos. En los ejemplos de esta sección, veremos comandos para SunOS 4.x, SunOS 5.x (también conocido como Solaris), y GNU/Linux.
Hay dos servidores BOOTP disponibles para GNU/Linux, el bootpd CMU y el dhcpd
ISC que se encuentran en los paquetes bootp
y dhcp
respectivamente en Debian GNU/Linux.
Para hacer uso de bootpd CMU, deberá primero descomentar (o añadir) la línea
correspondiente en /etc/inetd.conf
. En Debian GNU/Linux debería
ejecutar update-inetd --enable bootps, seguido de
/etc/init.d/inetd reload. En cualquier caso, la línea en cuestión
debería ser:
bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120
Ahora debe crear el fichero /etc/bootptab
. Este tiene el formato
familiar y críptico de los buenos y antiguos ficheros printcap(5)
,
termcap(5)
, y disktab(5)
BSD. Ve la página de manual
bootptab(5)
para más información manual page for more information.
Para el bootpd CMU, deberá saber la dirección física (MAC) del cliente.
Por contra, establecer BOOTP con ISC dhcpd
es relativamente
sencillo, dado que trata a los clientes BOOTP como un caso moderadamente
especial de los clientes DHCP. No necesita conocer la dirección física (MAC)
del cliente a menos que quiera especificar algunas opciones como el nombre de
fichero de la imagen de arranque o la ruta del raíz NFS cliente por cliente, o
a menos que quiera asignar direcciones fijas a sus máquinas utilizando BOOTP
y/o DHCP. Simplemente añada la directiva allow bootp al bloque de
configuración para la subred que contiene el cliente, y reinicie
dhcpd
mediante /etc/init.d/dhcpd restart.
Para tener el servidor TFTP listo para funcionar, primero debe asegurarse de
que tftpd
está habilitado. Éste está habilitado normalmente por
la siguiente línea en el /etc/inetd.conf
:
tftp dgram udp wait root /usr/etc/in.tftpd in.tftpd -s /boot
Mire en ese fichero y recuerde el directorio que se usa para el argumento
``-s'' de in.tftpd
; lo necesitará más abajo. Si ha tenido que
modificar /etc/inetd.conf
, deberá notificar al proceso ya en
marcha inetd
que dicho fichero ha cambiado. En una máquina
Debian, ejecute /etc/init.d/netbase reload (para potato/2.2 o
sistemas más nuevos utilice /etc/init.d/inetd reload); en otras
máquinas, localice el ID del proceso inetd
, y ejecute kill
-HUP pid-inetd.
Luego coloque la imagen de arranque TFTP, tftpboot.img
, en el
directorio de imágenes de arranque de tftpd
. Generalmente este
directorio será /boot
en Debian, y /tftpboot
en otros
sistemas operativos. Entonces tendrá que hacer un enlace desde ese fichero al
fichero que usará tftpd
para un cliente en particular.
Desafortunadamente, el nombre de fichero lo determina el cliente TFTP, y no hay
ningún estándar.
Generalmente, el fichero que el cliente TFTP buscará será
ip-cliente-en-hex.arquitectura-cliente.
Para calcular el ip-cliente-en-hex, tome cada byte de la dirección
IP del cliente y conviértala a notación hexadecimal. Si tiene a mano una
maquina con el programa bc
, puede usar éste. Primero emita la
orden obase=16 para establecer la salida en hexadecimal, luego
introduzca uno a uno los componentes individuales del IP cliente. En cuanto a
arquitectura-cliente, pruebe algunos valores.
En Alpha, debe especificar el nombre de fichero (como un ruta relativa al directorio de la imagen de arranque) utilizando el argumento -file a la orden SRM boot, o fijando la variable de entorno BOOT_FILE. De forma alternativa, el nombre del fichero puede ser dado a través de BOOTP (en ISC dhcpd, utilize la directiva filename). A diferencia de Open Firmware, no hay un fichero por defecto en SRM, así que debe especificar un nombre de fichero por alguno de estos métodos.
Una vez determinado el nombre, haga el enlace tal que así: ln /boot/tftpboot.img /boot/nombre-fichero.
Ahora debería estar listo realmente para arrancar su sistema. En SRM, los interfaces Ethernet se nombran con el prefijo ewa, y se listarán en la salida de la orden show dev como en este ejemplo (ligeramente editado):
>>>show dev ewa0.0.0.9.0 EWA0 08-00-2B-86-98-65 ewb0.0.0.11.0 EWB0 08-00-2B-86-98-54 ewc0.0.0.2002.0 EWC0 00-06-2B-01-32-B0
Así que, para arrancar del primer interfaz Ethernet, debería escribir:
>>>boot ewa0
Si desea utilizar la consola serie, vd. debe pasar el parámetro console= al núcleo. Puede hacer esto utlizando la opción -flags a la orden SRM boot. Los puertos serie se nombran como sus ficheros correspondientes en /dev. Por ejemplo, para arrancar de ewa0 y utilizar una consola en el primer puerto serie, debería escribir:
>>>boot ewa0 -flags console=ttyS0
NO ESCRITO AUN
Esto está más cercano a la "instalación tftp para poca memoria" porque no quiere cargar el disco de ram más sino arrancar del sistema de ficheros recientemente creado en raíz nfs. Entonces necesita reemplazar el enlace simbólico para la imagen tftpboot con un enlace a la imagen del núcleo (esto es, linux-a.out). Mi experiencia de arrancar sobre un red se basaba exclusivamente en RARP/TFTP que exige que todos los demonios se ejecutan en el mismo servidor (la estación de trabajo está enviando una solicitud tftp de vuelta al servidor que respondió a su solicitud rarp). Sin embargo Linux soporta también el protocolo BOOT, pero no se como ponerlo :-(( ¿Tiene que estar también documentado en este manual¿
El firmware de la consola se guarda en una ROM flash y se ejecuta cuando un sistema Alpha se inicia o resetea. Hay dos especificaciones diferentes de consolas en lo sistemas Alpha, por ello hay dos firmware de consola disponibles:
Desde la perspectiva del usuario, la diferencia más importante entre SRM y ARC es que la elección de la console restringe el esquema de partición posible de disco para el disco duro desde el que quiere arrancar.
ARC exige que use una tabla de particiones MS-DOS (como las que crea
cfdisk
) para el disco de arranque. Por tanto las particiones
MS-DOS son el formato de particiones ``nativas'' cuando arranca desde ARC. De
hecho, dado que la AlphaBIOS contiene una utilidad para particionar discos,
puede preferir particionar sus discos desde los menús de firmware antes de
instalar Linux.
Por otro lado, SRM es incompatible con las tablas de partición de MS-DOS [4] Dado que Tru64 Unix utiliza el formato de etiquetas de BSD, este es el formato de particiones ``nativo'' para instalaciones SRM.
Dado que GNU/Linux es el único sistema operativo en Alpha que puede arrancarse desde ambos tipos de consola, la elección también dependerá de los otros sistemas operativos que desee ejecutar en la misma máquina. Todos los sistemas operativos tipo Unix (Tru64 Unix, FreeBSD, OpenBSD, y NetBSD) así como OpenVMS pueden arrancar sólo desde SRM, mientras que Windows NT puede sólo arrancar de ARC.
La siguiente tabla resume los sistemas disponibles y soportados para combinaciones de tipo/consola (vea Procesador, placas base, y soporte de vídeo, Sección 2.1.2 para los nombres de los tipos de sistema). La palabra `ARC' más abajo se refiere a cualquiera de las consolas que sean compatibles con ARC.
Sistema Tipo Tipo de Consola Soportada ============ ======================== alcor ARC o SRM avanti ARC o SRM book1 SRM sólo cabriolet ARC o SRM dp264 SRM sólo eb164 ARC o SRM eb64p ARC o SRM eb66 ARC o SRM eb66p ARC o SRM jensen SRM sólo lx164 ARC o SRM miata ARC o SRM mikasa ARC o SRM mikasa-p SRM sólo nautilus ARC sólo (mire el manual de la placa madre) noname ARC o SRM noritake SRM sólo noritake-p SRM sólo pc164 ARC o SRM rawhide SRM sólo ruffian ARC sólo sable SRM sólo sable-g SRM sólo sx164 ARC o SRM takara ARC o SRM xl ARC sólo xlt ARC o SRM
Por regla general, ninguna de estas consolas pueden arrancar Linux
directamente, así que hace falta la ayuda de un cargador de arranque
intermedio. Hay dos cargadores Linux disponibles : MILO
y
aboot
.
MILO
es en sí una consola, que sustituye ARC o SRM en memoria.
MILO
puede cargarse tanto desde ARC como SRM y es la única forma
de arrancar Linux desde la consola ARC. MILO
es dependiente de
plataforma (se necesita un MILO
diferente para cada tipo de
systema y existe sólo para estos sistemas, para los que hay soporte de ARC en
la tabla arriba mostrada. Consulte también el (desafortunadamente
desactualizado) MILO HOWTO
.
aboot
es un pequeño cargador, independiente de plataforma, que se
ejecuta sólo en SRM. Lea el (también desafortunadamente desactualizado)
SRM HOWTO
para más información sobre aboot
.
Así pues, hay tres escenarios posibles, dependiendo del firmware de la consola
y de si está disponible o no MILO
:
SRM -> aboot SRM -> MILO ARC -> MILO
La placa madre UP1000 (la subarquitectura llamada `nautilus') de Alpha Processor, Inc. es diferente a todas las demas en que usa un cargador con una API específica que se ejecuta en el firmware AlphaBIOS. No hay discos de instalación (aún) para la UP1000, pero debería ser capaz de instalar cargado un núcleo `generic' o `nautilus' con el root.bin de los discos de instalación, siguiendo las instrucciones del manual.
Dado que MILO
no está disponible para ninguno de los sistemas
Alpha actualmente en producción (a fecha de febrero de 2000), y dado que no es
ya necesario comprar una licencia OpenVMS o Tru64 Unix para tener el firmware
SRM en su Alpha antiguo, se recomienda que utilice SRM y aboot
en
instalaciones de GNU/Linux, a menos que quiera tener arranque dual con Windows
NT, o que tenga discos particionados con DOS.
La mayor parte de los Servidores Alpha y todos los servidores y estaciones de trabajo actuales contienen tanto SRM como AlphaBIOS en su firmware. Para máquinas "medio-flash" como las distintas placas de evaluación, es posible cambiar de una versión a otra reflasheando el firmware. También, una vez que se ha instalado SRM, es posible ejecutar ARC/AlphaBIOS desde un disco flexible (utilizando la orden `arc').
Como en otras arquitecturas, debería isntalar la revisión más nueva del
firmware [5] antes de instalar
Debian. Las actualizaciones de Firmware para Alpha, puede obtenerlas de
Alpha Firmware
Updates
.
En el prompt SRM (>>>
), ejecute la siguiente orden:
>>> boot dva0 -flags 0
posiblemente sustituyendo dva0
con el nombre de dispositivo real.
Generalmente dva0
es el disco flexible; escriba
>>> show dev
para ver una lista de los dispositivos (esto es, si quiere arrancar de un CD).
Observer de que si está arrancando con MILO, se ignora la opción
-flags
así que puede simplemente escribir boot dva0
.
Si todo funciona bien, verá eventualmente la carga del núcleo de Linux.
Si quiere especificar parámetros al núcleo al cargar con aboot
,
utilice la siguiente orden
>>> boot dva0 -file linux.gz -flags "root=/dev/fd0 load_ramdisk=1 argumentos"
(escrito en una sóla línea), sustituyendo, si fuera necesario, el nombre de
dispositivo de arranque en dva0
, el nombre del núcleo de Linux
para el dispositivo de arranque fd0
, y los parámetros deseados
para el núcleo en argumentos
.
Si quiere especificar parámetros al núcleo cuando arranca con
MILO
, posiblmente deba interrumpir la carga de una vez llegue a
MILO. Consulte Arrancando
con MILO, Sección 6.9.
En la selección de SO, elija linload.exe
como el cargador de
arranque, y milo
como la ruta para el SO. El cargador utilizará
esta nueva entidad.
Para arrancar el sistema de instalación, introduzca el siguiente comando en el prompt de MILO:
MILO> boot fd0:linux.gz root=/dev/fd0 load_ramdisk=1
Si está cargando de alguna cosa distinta a discos flexibles, sustituya
fd0
en el ejemplo previo al nombre de dispositivo que sea
apropiado en notación Linux. La orden help
le dará una referencia
breve sobre las ordenes de MILO. -- necesita esta sección -->
Si tiene problemas y el kernel se cuelga durante el proceso de arranque, no reconoce los periféricos que tiene actualmente, o las unidades no se reconocen correctamente, lo primero que hay que hacer es comprobar los parámetros de inicio, como se discute en Argumentos de los parámetros de inicio, Sección 6.1.
Frecuentemente, los problemas se pueden solucionar eliminando las extensiones y periféricos, y probando a reiniciar de nuevo.
Si aún tiene problemas, por favor, envíenos un informe de error. Envíe un
mensaje de correo electrónico a submit@bugs.debian.org
.
Debe incluir lo siguiente como las primeras líneas de su correo-e:
Package: boot-floppies Version: versión
Asegúrese de rellenar versión con la versión del conjunto de boot-floppies que usa. Si no conoce su versión, use la fecha en la que bajó los disquetes, e incluya la distribución de la que los obtuvo (p.ej., ``stable'', ``frozen'').
Debería incluir también la siguiente información en su informe de error:
arquitectura: alpha modelo: marca y modelo de su equipo memoria: cantidad de RAM scsi: adaptador SCSI, si tiene cd-rom: modelo y tipo de interfaz CD-ROM, como ATAPI tarjeta de red:tarjeta interfaz de red, si tiene pcmcia: detalles sobre cualquier dispositivo PCMCIA
Dependiendo de la naturaleza del error, también puede ser útil informar sobre si está instalando en discos IDE o SCSI, otros periféricos como tarjetas de sonido, capacidad del disco y el modelo de la tarjeta de vídeo.
En el informe de error, describa el problema, incluyendo los últimos mensajes visibles del kernel en el caso de un cuelgue del kernel. Describa los pasos que realizaó que llevaron el sistema al estado del problema.