Después de actualizar con éxito mi BIOS, algo salió mal y terminé con un cursor parpadeante en la esquina superior izquierda de una pantalla en negro. Sin errores, sin nada. La BIOS ahora solo enumera una SATA: <disc name>
opción de arranque en lugar de la UEFI habitual ubuntu
. Estoy usando un esquema de partición GPT.
Finalmente descubrí que la solución de trabajo era reinstalar correctamente grub-efi-amd64
. Entonces, ¿cómo hago esto?
PD: En realidad, logré reinstalar GRUB2 EFI por mi cuenta y publicaré mi respuesta aquí, ya que no pude encontrar ningún procedimiento completo sobre esto.
Respuestas:
Inicie su computadora con un USB / CD en vivo en modo UEFI . Tenía dos opciones de arranque
<flash_drive>
yUEFI: <flash_drive>
, la segunda es necesaria para exponer las variables efi/sys/firmware/efi/
para queefibootmgr
no falle más adelante. Arrancar con la primera opción me da el siguiente error:modprobe efivars
no funcionó para míchroot en el sistema roto (similar a la ayuda de ubuntu grub2 pero con especificidades efi):
Dependiendo de su distribución de Linux, ahora hace cosas diferentes.
Para Ubuntu / Debian :
o alternativamente:
si lo anterior te da una comida, pero no de arranque
Para Fedora (hasta 16, puede funcionar para otros):
En el siguiente comando, debe reemplazar sdX con el dispositivo que tiene la partición EFI desde la que desea iniciar. En
--part Y
tiene que reemplazar elY
con el número de la partición EFI (como en/dev/sdXY
).Ahora escriba Ctrl + D para salir de chroot, desmontar todo y reiniciar:
Es posible que deba adaptar esto a sus necesidades (tabla de partición diferente, partición separada / de arranque, etc.) y puede que no sea la única opción, pero esto funcionó bien para mí.
Un sistema en vivo adecuado para arreglar cosas es grml . También hay una guía extensa sobre cómo configurar un dispositivo USB de arranque, de los cuales la sección de Mac es la más útil en realidad (solo cree una partición FAT32, copie los archivos, reinicie, listo).
fuente
/run/resolvconf...
(en Ubuntu 12.04), en su lugar, solo solíamount --bind /run /mnt/run
montar todo el/run
directorio en el entorno chroot.update-grub
no copiará la última imagen grub2 a su partición EFI, solo actualizará grub.cfg. Entonces, la mejor manera de hacerlo esapt-get install --reinstall grub-efi
(o grub-efi-amd64), esto también llamará update-grub al final.update-grub
mi/boot/efi
carpeta todavía estaba vacía (había creado esta nueva partición). Solo después de ejecutargrub-install
los archivos reales se escribieron allí. Esta guía me ayudó (alemán): wiki.ubuntuusers.de/EFI_ProblembehebungComo una posible simplificación del primer método, es posible arrancar directamente en el sistema en el disco duro, solo usando grub del CD en vivo. Probado en xubuntu 13.10 con el live CD de xubuntu 13.10.
Asegúrese de que el arranque seguro esté deshabilitado en su BIOS. Inserte el CD en vivo y arranque a través de UEFI. Se mostrará el menú GRUB del CD. Presione "c" para llegar a la línea de comando.
Adapte el comando grub anterior si tiene una partición de sistema EFI diferente.
Después de que su sistema se haya iniciado desde el disco duro, debería ser suficiente reinstalar grub en la partición del sistema EFI y registrarlo con el firmware a través de grub-install.
fuente
configfile (hd0,gpt1)/EFI/ubuntu/grub.cfg
no hace nada. ¿Cómo inicio después de emitir este comando?sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi
lugar del comando sugerido anteriormente (pero el anterior puede funcionar también, no lo sé). Y después de eso, puede acceder a su sistema operativo Linux nuevamente. Luego, simplemente ejecutesudo update-grub
y todo debería ser de arranque.configfile (hd1,gpt1)/EFI/ubuntu/grub.cfg
. Inicie un LiveCD y ejecútelosudo gparted
para localizar su partición efi.Al igual que con Maxine, descubrí que mi configuración UEFI en BIOS se dañaba y mi máquina no arrancaba.
En mi caso, es un Lenovo ThinkServer RD430 con Linux Mint Debian y parece que cualquier cosa que haga sobre actualizar-grub o cambiar cualquier disco duro en el servidor hará que no arranque. El sistema operativo en mi caso es linuxmint-201403-mate-dvd-64bit instalado a través de USB. (vea a continuación una descripción completa de los eventos que podrían causar que UEFI no funcione)
Seguir exactamente los mismos pasos en un ThinkServer TS140 no resultó en que UEFI se volviera loco ni una sola vez. Miré la página del controlador RD430 y mi BIOS tiene dos versiones antiguas. Nunca he tenido que actualizar la BIOS en una placa base antes, por lo que no soy alguien que actualice automáticamente cuando haya nuevas versiones disponibles. Después de actualizar la biografía, la respuesta anterior de Maxine funcionó, solo con un giro ...
El
efibootmgr -c
comando agregó dos entradas0000
y0002
!La
Boot0002* Linux HD
entrada primero en el orden de arranque no es correcta .La
0000
entrada es correcta.Para probar esto, intenté arrancar sin ninguna interrupción, que es la
0002
entrada. Como se esperaba, no funcionó. Así que reinicié el servidor, presioné F12 y elegílinuxmint
. Como se esperaba, se inició en mi instalación de LMDE.La forma de eliminar entradas no deseadas a través de efibootmgr es:
Usé este comando para eliminar entradas
0001
y0002
. La opción0001
fue el último de mis muchos intentos de recuperar el sistema operativo.Notas UEFI
Si está leyendo esto y está tan frustrado con UEFI como yo estoy / estaba, aquí hay algunas notas y recursos:
»Arrancar en UEFI Shell es similar a usar un shell de DOS.
»Intel hizo un manual de referencia en PDF para los comandos de efi shell.
»El documento UEFI_on_TS430 de Lenovo es el único recurso que he visto que explica el uso de efi shell.
» Otra referencia de shell uefi de la Guía del administrador de nPartition .
»Puede intentar arrancar una partición desde el shell efi navegando hasta el cargador y ejecutándolo.
»UEFI quiere que el disco tenga una tabla de particiones GPT, no una tabla de partes msdos.
»UEFI quiere que la primera partición en su disco tenga formato fat32 o vfat.
»Para un arranque" genérico "debe haber un
/EFI/boot
directorio en la raíz conbootx64.efi
él.»Algunas personas copian
grubx64.efi
desde donde se instaló/EFI/boot/bootx64.efi
y este truco les funcionó.»Cada vez que realice cambios de grub, use
efibootmgr -v
antes y después para asegurarse de que su reinicio esté bien.Mi experiencia RD430
He reinstalado el sistema operativo más de 10 veces la semana pasada tratando de resolver esto y configurar el servidor. Mi configuración es una SSD en este controlador RAID en la ranura PCIe 2.0 con LMDE instalado. Controlador RAID AOC-S3008L-L8i ( actualizado al modo IT ) en la segunda ranura PCIe 3.0 con unidades de 6x 3TB. RAM: 12GB ECC (3x 4GB).
Estos son los cambios que haría que causaran que mi sistema no se inicie:
»Cambie las ranuras pci S3008L-L8i (dejando solo la tarjeta SSD +).
»Desactive el indicador de BIOS de incursión del software LSi para el controlador integrado.
»Agregar mi vieja tarjeta HighPoint RocketRaid a una ranura PCIe abierta.
»Haga un cambio
/etc/default/grub
y luego corraupdate-grub
.(¿ Quizás también
grub-install
deba ejecutarse? )fuente
Volvería a votar esto, pero aparentemente no tengo suficiente representante en SuperUser. Me alegro de haber encontrado finalmente una respuesta a esto después de días de lucha contra clones que funcionaron pero no arrancaron. Creo que todo se relaciona con UEFI y algún tipo de mecanismo de "arranque seguro" o algo así.
Estoy trabajando fuera de línea, por lo que apt-get no era una opción. Lo que hice fue poner Ubuntu Desktop en una memoria USB, agregar los paquetes
grub-efi
ygrub-efi-amd64
a la raíz de la memoria USB (grub-efi_1.99 ~ rc1-13ubuntu3_amd64.deb y grub-efi-amd64_1.99 ~ rc1-13ubuntu3_amd64.deb para Ubuntu 11.04: cambie según corresponda para la distribución y la arquitectura), y coloque lo siguiente en un script en la memoria USB también:Inicie el dispositivo USB Live, abra una terminal, ejecute el comando y el trabajo es bueno. El único problema ocasional es que UEFI a veces se movió hacia abajo en el orden de prioridad de arranque debajo del HDD, momento en el que debe ingresar al BIOS y cambiar el orden de arranque para evitar que intente (y falle)
SATA: drive
.También puede usar en
dpkg-reconfigure
lugar dedpkg -i
, pero eso hace un par de preguntas sobre el cargador de arranque.[editar] Tampoco tengo suficiente representante para comentar, así que lo que pensé que era un comentario en una respuesta resulta ser una respuesta.
fuente
sudo chroot /mnt /bin/sh -c "dpkg -i /tmp/grub-efi*.deb" && sudo shutdown -r now
dio el comportamiento correcto.En mi Ubuntu 14.10 de 32 bits en Lenovo Yoga 2 Pro, cambié al arranque UEFI de esta manera:
crear carpeta
montar la partición "Sistema EFI" en
/etc/fstab
esto mostró:
/dev/sda2 2050048 2582527 532480 260M EFI System
montar esa partición
instalar
grub-efi-amd64-bin
y desinstalargrub-efi-ia32-bin
reiniciar Ubuntu en modo efi
probar si arranca bien, luego instalé
grub-efi-amd64
y desinstalégrub-pc grub-gfxpayload-lists
conElijo no eliminar / arrancar cuando se me solicite.
Tal vez lo hice complicado y esto hubiera funcionado bien:
fuente
Esta entrada es más similar a la preparación de su computadora para reinstalar las entradas efi. También es lo que podría ser una forma efectiva y simple de crear un disco de rescate después de la instalación del sistema en medios internos (SSD, HDD).
Con Linux Mint Tara (una variante de Linux estrechamente relacionada con Ubuntu Bionic Beaver), el método afectó mi instalación e hizo posible luego guardarlo. Surgió de mi deseo de que un USB en vivo tenga persistencia, y dado que el tiempo para instalar una utilidad como Unetbootin para una instalación persistente es aproximadamente lo mismo que una instalación nueva, simplemente utilicé la misma distribución en vivo para hacer una instalación en el USB como se utilizó para instalar el sistema operativo en el SSD interno.
Por supuesto, nada de esto es RAID o cualquier otra configuración especializada, pero sí requirió una partición de volumen preparada en la unidad USB, y una instalación realizada en ese USB utilizando el método disponible de la distribución, eludiendo la unidad interna para una instalación en un solo montaje de raíz (/) de la partición.
Aquí es donde la nueva instalación de grub se enredó con la unidad interna. Cuando reinicié al USB, las entradas internas de UEFI grub parecían haber desaparecido, dejando solo el menú de grub al intentar seleccionar la unidad usando las entradas en el menú del BIOS.
En cambio, el arranque desde el USB mostró que el método de la distribución había producido un menú de grub listo para usar, con una lista para / dev / sda2, la partición que contiene el montaje / boot / efi. En la mayoría de las instalaciones de unidades internas principales, el nombre de grub de la partición es hd0, gpt1.
Al entrar en 'avanzado', había más de un rescate de kernel disponible. A partir de ahí, ejecute la utilidad grub y luego inicie normalmente.
Desde este punto, ejecutando el sistema operativo en la unidad interna que antes era inaccesible, desconecte el USB y luego ejecute
sudo grub-install
.Cuando reinicie sin el USB, debería poder volver a ingresar. En este punto, el USB está configurado para iniciar la unidad interna en modo normal o de rescate, y la unidad tiene su propio menú.
fuente