Arranque desde USB usando GRUB


48

La computadora portátil de mi amigo tuvo un accidente automovilístico (¡está bien!). Sin embargo, la computadora portátil es muy antigua, es una Acer Aspire 1520, la unidad de CD-ROM está rota y no hay una unidad de disquete.

Le hice un arranque USB antes de echarle un vistazo y descubrí que su BIOS no puede arrancar desde USB. Lo único que tengo es una consola GRUB, pero está interesado en instalar XP (en USB) y usarlo solo para películas.

¿Es posible usar la consola GRUB para obtener acceso al USB e iniciar la instalación de Windows? Es una tarea difícil, pero creo que este puede ser el camino, o intentar instalarlo a través de LAN, lo que no creo que sea posible.


1
Intentaría obtener una unidad de CD / DVD USB y trabajaría para que la computadora se iniciara.
jmreicha

1
Esta publicación muestra los comandos manuales requeridos; solo necesita averiguar el número de unidad, que se puede lograr con la finalización de la pestaña de GRUB.
nuevo123456

Respuestas:


39

Aquí hay un ejemplo rápido de comandos de grub que podrían funcionar, explicaciones y advertencias a continuación.

grub2

Muy probablemente para instalaciones posteriores a 2010.

set root=(hd1,1)
chainloader +1
boot

grub

Muy probablemente para instalaciones anteriores a 2005.

root (hd1,0)
chainloader +1
boot

Para el período 2005-2010, su suposición es tan buena como la mía, pero si usa el comando para la versión incorrecta, solo obtendrá un error de sintaxis inofensivo en el primer comando.

Elegir la raíz correcta

Al inicio, grub buscará sus dispositivos y les asignará números. Todos los dispositivos que están particionados (discos duros y unidades flash) también tendrán números asignados. El formato es (<deviceName>,<partitionIndex>). En grub2, los índices de partición cambiaron, por lo que los dos ejemplos anteriores tienen el mismo efecto a pesar de buscar usar diferentes raíces.

Su primer dispositivo ( hd0) es el dispositivo del que se acaba de cargar. Después de eso, generalmente puede suponer que todos los dispositivos internos vendrán antes que sus dispositivos externos. Lo más probable es que tengan la forma de hdy un número.

Después de la coma está el índice de partición. Los discos duros y las unidades de memoria USB casi siempre se particionan, por lo que debe elegir la partición correcta (y muy probablemente solo). Los CD-ROM generalmente no están particionados.

Más documentación: http://www.gnu.org/software/grub/manual/html_node/Device-syntax.html

Al elegir su partición raíz, puede usar la tecla Tab para buscar nombres de dispositivos e índices de partición. Simplemente abra el paréntesis y comience a presionar Tab para ver la lista.


55
También es posible usar set root=(hd1)(etc.) para arrancar desde todo el dispositivo, si no está particionado, por ejemplo, una unidad USB de arranque.
white_gecko

66
Solo para agregar, puede hacer lspara ver la lista de dispositivos conectados.
AntouanK

2
Sé que el intercambio de pila desalienta los comentarios de agradecimiento, pero esta respuesta realmente merece una. Me ahorraste una gran cantidad de tiempo.
John Militer

no puedo encontrar el comandoroot
Bjorks fan número uno

13

Para elaborar el comentario de new123456:

El dispositivo USB debe detectarse como un dispositivo de almacenamiento masivo y tratarse como un disco duro. Entonces, en grub, escriba root (hd(no presione Intro todavía) y luego presione la pestaña una o dos veces para ver qué discos duros puede ver Grub. El dispositivo USB, si se reconoce, probablemente será hd1. No especifique un número de partición; solo agrega un paréntesis de cierre. Entonces la línea será root (hd1). Luego, después de eso, escriba lo siguiente:

chainloader +1
boot

Si eso no funciona, el cambio root (hd1)a root (hd1,0)e intentarlo de nuevo.

Si por alguna razón Grub no puede ver la unidad USB, intente enchufar un CDROM USB y arrancarlo.


7

Es chainloader +1posible que la cosa no funcione si el BIOS no es bueno para arrancar desde una memoria USB (por eso de todos modos quería usar Grub).

En este caso, hay algo de magia profunda en https://help.ubuntu.com/community/Grub2/ISOBoot que funciona, al menos para Ubuntu. La parte crucial es mucking con el comando grub que identifica el vmlinuzarchivo, pasando el iso-scan/filenameargumento. De alguna manera, eso ayuda a descubrir que todo el sistema de archivos de arranque está atascado en un archivo ISO. No sé cómo diablos funciona, pero lo hace. Estos son (aproximadamente) los comandos de Grub 2 que utilicé:

loopback loop (fd0,msdos1)/path/to/iso/file
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/path/to/iso/file noprompt noeject
initrd (loop)/casper/initrd.lz
boot

El /path/to/iso/filedebe ser la ruta al archivo ISO en la llave USB. El (fd0,msdos1)identifica la llave USB. La finalización de tabulación es muy útil en la loopbacklínea y no es útil para los argumentos vmlinuz.


Creo que quise responder esto en respuesta a una pregunta diferente. ¡Ojalá supiera cuál!
Paul Stansifer

En caso de efi/ uefilos modos de arranque, estos grub2comandos generan un error: error: can't find command 'linux'. Cambie los comandos a linuxefiy initrdefi.
Samveen

Me gusta el concepto aquí. Arranque un ISO que está contenido en una unidad flash. Esto convertiría una unidad flash en un buffet de CD de arranque. En el ejemplo más funcional en el que podría arrancar desde un CD, no desde Flash, podría grabar un CD que se eligiera entre ellos si hubiera un problema al arrancar desde USB, ¿verdad?
BenPen

2

Esto no va a ser muy útil en el caso de su amigo (a menos que haya una forma en la que no esté al tanto para instalarlo en el dispositivo, ¿tal vez un CD-ROM USB o una unidad de disquete USB?), Pero Esta es una pequeña aplicación excelente, que me ha ayudado a manipular una serie de máquinas antiguas para arrancar desde USB cuando su BIOS no lo permite.

Administrador de arranque Plop


0

No puede arrancar desde usb en grub si la BIOS no lo permite por sí mismo. Una vez tuve que configurar una especie de partición de recuperación en un disco duro que contenía el contenido del disco de configuración win7, instalar grub, y luego lo usé para arrancar la partición de configuración win7 para instalarla en el resto del disco duro.


Probablemente tendrá que usar los comandos "insmod usbms" y luego "insmod ehci" o "insmod uhci" antes de los comandos mencionados.
Claude Frantz
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.