¿Dónde debería instalarse el gestor de arranque cuando quiero ejecutar Ubuntu desde un disco duro externo?

9

Tengo una computadora portátil que ejecuta Windows 10 y quiero instalar Ubuntu en un disco duro externo y siempre que lo necesito puedo enchufarlo y arrancarlo desde la unidad externa.

Seguí un tutorial, en realidad dos, y ambos dijeron que el gestor de arranque debe instalarse en el HDD externo. Esto tuvo como resultado que solo podía acceder a Windows cuando tenía el HDD externo enchufado. Cada vez que no lo tenía enchufado, la computadora portátil no arrancaba y solo obtenía una pantalla negra con una línea blanca. Después de arreglar mi registro de arranque maestro, pude acceder a Windows.

Ahora quiero volver a intentarlo, pero me temo que si instalo el gestor de arranque en la unidad interna, de alguna manera podría eliminar mi partición de Windows o tendré problemas con mi arranque.

¿Entonces qué debo hacer?

capitán
fuente
Posible error y solución alternativa en bugs.launchpad.net/ubuntu/+bug/1835639
Bellera

Respuestas:

10

Primero, es CRÍTICO que entiendas tu modo de arranque. Las computadoras modernas pueden arrancar de dos maneras:

  • BIOS : esta es la antigua forma de arranque, que se usaba en la mayoría de las computadoras introducidas antes de 2011. Las computadoras modernas admiten el arranque en modo BIOS a través de una función llamada Módulo de compatibilidad (CSM), también conocido como "soporte de arranque en modo heredado" o Un término similar. Por lo tanto, se puede hacer referencia a este método con tres nombres: BIOS, CSM o heredado. Implica código de cargador de arranque de 16 bits en el Registro de arranque maestro (MBR) y en otros lugares. Es un método de arranque poco elegante pero maduro, y la mayoría de los sitios que no mencionan explícitamente el modo de arranque describen el arranque en modo BIOS. Sin embargo, si su computadora vino con Windows 8 o posterior, es probable que no use este método de arranque.
  • EFI / UEFI : este es el modo de arranque nativo para la mayoría de las computadoras introducidas desde mediados de 2011, y es completamente diferente del arranque en modo BIOS, por lo que debe ignorar cualquier consejo que indique explícitamente que es para el arranque en modo BIOS, o cualquier cosa que no menciona el modo de arranque (ya que es probable que sea antiguo o esté escrito por alguien que no conoce la diferencia). Una excepción: confusamente, muchas personas, e incluso fabricantes de computadoras, se refieren a sus EFI como "BIOS". Esta práctica crea mucha confusión.

Como menciona Windows 10, es probable que su computadora esté basada en EFI y arranque en modo EFI. Procederé bajo esa suposición. Si esto es incorrecto, ignore el resto de esta respuesta.

Para iniciar un disco interno en modo EFI, el sistema operativo generalmente almacena un cargador de inicio como un archivo en la partición del sistema EFI (ESP) en el disco. Este nombre de archivo puede ser legal, pero para Ubuntu lo será EFI/ubuntu/shimx64.efi, lo que a su vez se inicia EFI/ubuntu/grubx64.efi. El instalador del sistema operativo registra el nombre del gestor de arranque con el administrador de arranque incorporado de EFI, que almacena ese nombre en NVRAM. Si el EFI funciona correctamente (no todos lo hacen), esto resulta en un proceso de arranque que funciona.

El problema con este proceso, tal como se aplica a un disco extraíble, es triple:

  • El instalador de Ubuntu instalará GRUB en "el" ESP, pero es posible que tenga varios ESP disponibles (casi seguramente uno en el disco duro y tal vez uno en la unidad USB). Controlar dónde se instala GRUB puede ser complicado. Se no hace usando la opción marcada con el título obvio acerca de dónde instalar GRUB. En cambio, se puede hacer (AFAIK) solo desde la opción de instalación "Something Else" marcando el ESP que desea usar como "Partición de arranque EFI" o "Partición del sistema EFI" (cuyo nombre depende de la versión de Ubuntu).
  • Si instala GRUB en el ESP en la unidad USB, cuando extraiga la unidad USB, el EFI puede notar que tiene una entrada de cargador de arranque registrada que no es válida y eliminar esa entrada. Muchos EFI hacen esto, y significa que si instala GRUB en un disco externo y luego lo desenchufa, pierde la capacidad de iniciar desde ese disco, incluso cuando vuelve a enchufarlo.
  • La forma en que Ubuntu configura GRUB hace que se base en archivos de configuración que están en el /boot/grubdirectorio de Ubuntu , que probablemente no esté en el ESP. Por lo tanto, si Ubuntu instala GRUB en el ESP en su disco interno, evitará el primer problema pero se encontrará con otro porque cuando inicia con la unidad USB desconectada, GRUB se iniciará y no podrá encontrar sus archivos de configuración. El resultado es un grub>aviso que desconcertará a la mayoría de los usuarios.

Existen varias soluciones a estos problemas, que incluyen:

  • Instalación manual de GRUB en el nombre de archivo alternativo en el disco externo : los instaladores del SO se inician utilizando un nombre de archivo alternativo de EFI/BOOT/bootx64.efi. Si copia cuña (que lanzamientos grub) a este nombre de archivo (copiando EFI/ubuntua EFI/BOOTla ESP y luego cambiar el nombre shimx64.efial bootx64.efideEFI/BOOT), su firmware podrá iniciar su GRUB basado en USB tal como lo hizo con el instalador de Ubuntu. Esto funcionará más allá de los dos problemas que acabo de identificar, pero necesitará usar el administrador de arranque incorporado de la computadora para seleccionar qué sistema operativo arrancar. Este gestor de arranque incorporado varía de inutilizable a tolerable, por lo que puede ser o no una solución aceptable. También es posible que necesite ajustar su orden de arranque después de instalar Ubuntu para evitar que inicie GRUB desde el ESP del disco interno o el ESP del disco externo de forma predeterminada.
  • Coloque una /bootpartición en su disco interno : si instala GRUB en el disco interno, también puede colocar una /bootpartición en el disco interno. Esto permitirá que GRUB funcione normalmente en todas las botas; sin embargo, la opción de Ubuntu aparecerá todo el tiempo, incluso cuando el disco USB esté desconectado. Esto puede ser indeseable, especialmente si Ubuntu es el predeterminado. Además, esta solución significa que su unidad USB externa será arrancable solo en la computadora en la que la preparó. Si desea poder usar ese disco en otras computadoras, debe evitar esta solución.
  • Use un administrador de arranque más inteligente : un administrador de arranque le ofrece una selección de sistemas operativos para arrancar, mientras que un cargador de arranque carga un núcleo en la memoria. GRUB realiza ambos trabajos y el administrador de arranque integrado de EFI solo realiza el primer trabajo. Hay otros gestores de arranque disponibles, algunos de los cuales pueden ayudarlo a evitar los problemas que he identificado. Mi propio rEFInd, por ejemplo, si se instala en el ESP del disco interno y se hace el programa de arranque predeterminado, detectará y presentará una opción de Ubuntu si y solo si GRUB o un kernel de Linux están presentes, es decir, cuando la unidad USB está conectada in. Al configurar la default_selectionopción enrefind.confapropiadamente, puede configurar rEFInd para iniciar Ubuntu automáticamente si su unidad USB Ubuntu está conectada y arrancar directamente a Windows si la unidad USB Ubuntu no está conectada. Mi respuesta a esta pregunta proporciona más detalles sobre este tipo de configuración, aunque en una Mac en lugar de una PC.

Con suerte, uno de estos enfoques lo pondrá en funcionamiento.

Rod Smith
fuente
0
  1. Arranque Ubuntu Live USB / CD
  2. Conecte su HDD externo
  3. Instale Ubuntu en el disco duro externo (avanzado, para que pueda establecer dónde debe instalarse el cargador de arranque)
  4. Configure la BIOS para arrancar desde su disco duro externo
RemoveThisAccount
fuente
Esta es una solución basada en BIOS que no funcionará correctamente en la mayoría de las computadoras basadas en EFI.
Rod Smith
0

Debe instalar el gestor de arranque en cualquier unidad que utilice su UEFI / BIOS para arrancar. Puede cambiar esta unidad en la configuración de BIOS, que por lo general puede acceder pulsando algo así F10, F12o Delinmediatamente después de iniciar el equipo. Entonces, como primer paso, puede intentar configurar su máquina para que arranque desde la unidad externa en lugar de la unidad interna. Si el gestor de arranque está instalado correctamente en la unidad externa, esto debería funcionar.

Para el uso diario normal, es probable que siempre desees iniciar desde la misma unidad por conveniencia, por lo que querrás instalar el gestor de arranque en tu unidad interna. Sin embargo, antes de hacer esto, debe hacer una copia de seguridad, preferiblemente una imagen de disco completa de su unidad interna de trabajo. Si encuentra problemas después de instalar Ubuntu junto con Windows, la herramienta de reparación de arranque puede ayudar.

Ben
fuente
Ya he cambiado el orden de arranque para arrancar desde un USB antes del HDD interno. Así que me imagino que si instalo Ubuntu en el HDD externo e instalo el gestor de arranque en el HDD externo, puedo, pero me gusta arrancar desde el dispositivo USB, ¿verdad?
Capitán
Lo siento, no estoy seguro de lo que estás preguntando. Debería poder 1) instalar el gestor de arranque en la unidad externa, 2) quitar la unidad USB y 3) configurar su BIOS para que arranque desde la unidad externa, luego inicie en Ubuntu en la unidad externa.
Ben
@capitan Wright. Como dije, esto funcionaría.
Izzno
0

¡Instalaría el cargador de arranque en el dispositivo externo! De esta manera, no hay posibilidad de que su instalación de Windows corrompa o elimine el gestor de arranque. Sería una tarea simple configurar su BIOS para que arranque:

USB-Key
USB-Disk
HDD
etc 
etc

NB: ASEGÚRESE DE DESACTIVAR SECUREBOOT (si encuentra esa opción)

De esta manera, si desconecta el dispositivo externo por alguna razón, no representará un problema con su computadora.

Y: si se mantiene alejado de los controladores propietarios, podrá ejecutar este sistema en otras computadoras ...

(Por cierto, no recomendaría este tipo de instalación para uso permanente, ya que será más lento que eSATA)

Izzno
fuente
Ubuntu es compatible con el arranque seguro. Aunque hay incompatibilidades ocasionales, son raras, por lo que no debería haber necesidad de meterse con esa configuración. Bajo EFI, la configuración del orden de arranque suele ser mucho más compleja de lo que usted describe, lo cual es bueno y malo: proporciona más opciones y un control más detallado; pero significa que hay más para aprender, y es poco probable que las soluciones simples aprendidas en el mundo del BIOS funcionen.
Rod Smith
No sabía que ubuntu podría "hacerse pasar por Windows", ya que todas las opciones de BIOS de arranque seguro que he visto específicamente afirman que deshabilita todas las capacidades para cambiar el orden de arranque de forma permanente y / o el sistema operativo.
Izzno
Ubuntu no se hace pasar por Windows. Secure Boot simplemente requiere que un programa EFI sea firmado por una clave privada cuya clave pública esté registrada con el firmware. Microsoft firma claves para terceros, incluido el binario Shim de Canonical, por lo que pueden ejecutarse en computadoras que incluyen la clave de Microsoft. Nunca he oído hablar de una implementación de arranque seguro que evite alterar el orden de arranque, aunque supongo que un proveedor podría optar por agregar esa restricción. Consulte mi página sobre Arranque seguro para obtener más información sobre este tema.
Rod Smith