5 votos

La actualización del firmware del SSD requiere una iso en un pendrive: ¿cómo hacer que arranque?

El objetivo es actualizar el firmware de un SSD NVMe en un Mac sin unidad óptica a través de una memoria USB que debería contener un mínimo de Linux, flasher y payload.

Las instrucciones ( PDF ) para una utilidad de actualización del firmware dicen utilizar Unetbootin en MacOS para escribir un archivo iso en una memoria USB con formato FAT32 (borrado).

Eso funciona. No se muestran errores.

Lo que luego no funciona es arrancar un MacBook Pro 2015 desde ese stick.

La unidad USB externa nunca aparece en el menú de arranque.


Lo que he probado:

  • borrando los sticks unas cuantas veces con DiskUtility
  • particionar los discos en MBR o GPT
  • 3 palos diferentes
  • diferentes ordenadores portátiles (Mac y Windows)
  • escribir el archivo iso con dd directamente al palo (y en otra ronda utilizando el grabador Balena y instalador universal usb )
  • diferentes versiones de DiskUtility (Sierra y Mojave)
  • Herramientas integradas de Windows en un PC para reformatear los sticks
  • gparted y fdisk mkfs.vfat en una máquina Linux
  • utilizando una iso diferente (que no coincide con el dispositivo de destino) del sitio del proveedor (funciona sin problemas según las instrucciones, pero no puedo actualizar mi dispositivo )
  • escribir al servicio de atención al cliente (respuesta: "la iso parece buena, debería funcionar, por favor, inténtelo de nuevo")
  • arrancar una máquina virtual fresca en un host Mac con sólo la iso necesaria adjunta. Frustrantemente, que de hecho botas como se pretende, pero no puede actualizar el dispositivo tampoco. Ni un PC con Windows, ni un portátil con Linux pueden arrancar los sticks que he preparado.
  • buscar soluciones en la red y especialmente en Ask Different

Los sticks simplemente no se reconocen en ningún portátil Mac como 'bootable' una vez que se termina el procedimiento indicado en el manual. Todos los portátiles pueden arrancar desde unidades externas (Thunderbolt y USB) y el gestor de arranque se actualiza sin interacción una vez que las conecto.

Posibles razones : - ¿suponiendo que DiskUtility de 10.12 y 10.14 no puede formatear correctamente los sticks? - ¿la última versión de Unetbootin está actuando? - ¿el iso de mi dispositivo está incompleto/dañado?

El último punto aquí puede ser el culpable:

La iso del firmware de un Samsung 970 EVO es mucho más pequeña que la de un EVOplus:

  • NVMe SSD-970 EVO Plus Firmware ISO 2B2QEXM7 | 28 MB (funciona, no es necesario)
  • NVMe SSD-970 EVO Firmware ISO 2B2QEXE7 | 17,4 MB (no funciona, se necesita)

El EVO-iso se puede montar directamente en MacOS y sólo contiene

 bzImage  initrd  isolinux >
                  boot.cat  isolinux.bin  isolinux.cfg  ldlinux.c32

El EVO-plus-iso es no montable pero cuando se escribe para pegar con Unetbootin muestra una carpeta EFI y archivos GRUB, etc Como éste sí arranca y escanea el ordenador en busca de dispositivos elegibles, estoy un poco atascado aquí.


Ninguna de estas preguntas similares en AskDifferent ofrecía una solución que funcionara:

Copiar la ISO de actualización del firmware de Crucial SSD a un USB de arranque

¿Es posible hacer una memoria USB de arranque para un Macbook Pro para hacer la actualización del firmware?

¿Cómo instalar una ISO de arranque en una sola partición de una memoria USB?

¿Cómo crear un disco de arranque USB de Ubuntu en OS X para que arranque en un ordenador *no Apple*?

¿Cómo hacer y utilizar una memoria USB con GParted que arranque en un Mac?

¿Cómo crear una unidad de disco duro gparted o Parted Magic de arranque para Mac?


Desde que jugué con las opciones de DiskUtilities parece ser que es un poco buggy. Al cambiar entre varias particiones y tipos de archivos relacionados con FAT/FAT32, DiskUtility no reconoce sus propios productos, con diferentes opciones en gris en diferentes momentos. Me parece que alguna bandera o anomalía estructural que introduce DiskUtility impide que esto funcione, como si tuviera que realmente limpiar el palo. Por desgracia, ni wipefs ni gparted lo hicieron con éxito y no sé qué buscar aquí.

3 votos

Te deseo suerte en esto :) - Siempre he acabado borrando todo el disco y haciéndolo en una máquina Win [donde es notablemente sencillo]

0 votos

Yo pediría a Samsung que proporcionara un método compatible con Mac.

1voto

Michael Puntos 193

Primero encuentre el número de disco de la llave USB desde diskutil list . Este método destruirá todo en el disco al que se copia, así que tenga cuidado. El mío era /dev/disk3 y tenía este aspecto:

/dev/disk3 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *32.0 GB    disk3
   1:                        EFI EFI                     209.7 MB   disk3s1
   2:       Microsoft Basic Data FAT32                   31.8 GB    disk3s2

Asegúrese de que no hay volúmenes montados y utilice dd para copiar el archivo ISO desmontado en su dispositivo (haga no añadir un número de partición, por lo que no utilizar algo como /dev/disk3s2 ).

Esto me funcionó con el NVMe SSD-970 EVO Firmware ISO 2B2QEXE7 de aquí .

[hali@macOS] ~ $sudo dd bs=4m if=/Users/hali/Downloads/Samsung_SSD_970_EVO_2B2QEXE7.iso of=/dev/disk3
Password:
4+1 records in
4+1 records out
17825792 bytes transferred in 8.546376 secs (2085772 bytes/sec)
[hali@macOS] ~ $sync
[hali@macOS] ~ $

diskutil list ahora se ve así:

/dev/disk3 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            Samsung                *32.0 GB    disk3

y en Utilidad de Discos así:

Disk Utility

Retención del reinicio y elegir la opción amarilla de arranque en la llave USB llamada "Windows" . Debería cargar la utilidad del firmware sin problemas (a mí me lo hizo en el MBP de 2015).


Después, como se menciona en Arco Wiki la firma ISO necesita ser borrada.

Advertencia: Esto destruirá irremediablemente todos los datos de /dev/sdx. Para restaurar la unidad USB como un dispositivo de almacenamiento vacío y utilizable después de usar la imagen ISO de Arch, es necesario eliminar la firma del sistema de archivos ISO 9660 ejecutando wipefs --all /dev/sdx como Root, antes de reparticionar y reformatear la unidad USB.

Como wipefs no existe en MacOS, esto se puede conseguir utilizando gdisk para escribir una nueva tabla de partición gpt. Simplemente reformateando en Utilidad de Discos no funcionó para recuperar el uso del USB resultando en un montón de "Operación no permitida" errores.

0 votos

Como escribí, dd tampoco funcionó. Los datos se escriben en el dispositivo correcto, pero el BM no los recoge. ¿Qué había antes en ese stick? ¿Preparado para/desde Windows? ¿Era MBR o GPT?

0 votos

Antes era GPT (formateado en mac) pero ahora no es ninguna de las dos cosas. Escribiendo en el dispositivo /dev/disk3 en lugar de la partición /dev/disk3sX sobrescribe la tabla de particiones y MacOS lo ve como una ISO. Voy a añadir una imagen para que quede más claro...

0 votos

En mi palo se llamaba Samsung (como en tus capturas de pantalla?). Pero aparte de eso, todo se ve exactamente como usted describe, como visible desde MacOS) sólo que el gestor de arranque todavía no lo detecta. Lo he probado con GNU dd y BSD dd con disk y rdisk, (e incluso anteriormente con wipefs en Linux).

0voto

Descargo de responsabilidad: Existe el riesgo de perder su SSD y los datos almacenados en él al actualizar a un nuevo firmware.

Estos son los pasos:

  1. Identifique su modelo de SSD ejecutando sudo smartctl -a /dev/nvmxxx en su SSD (sustituya "xxx" por el nombre real de su dispositivo); aquí hay un ejemplo de salida .
  2. Prepare una memoria USB de arranque de Ubuntu/Kubuntu, ya sea desde Ubuntu o de Windows .
  3. Inicie su ordenador desde dicha memoria USB.
  4. Abra un navegador y busque "Samsung SSD firmware" desde cualquier motor de búsqueda; el primer resultado debería ser el Página de descarga de herramientas y software para SSD de Samsung .
  5. Desplácese hacia abajo hasta "Firmware", amplíe la sección, busque la imagen ISO que coincida con su modelo de SSD y descárguela.
  6. Abra la imagen ISO con una herramienta de archivo como Rodillo de archivos o Arca (el que viene preinstalado con su memoria USB) y busque el nombre del archivo initrd y extráelo (arrastra y suéltalo fuera del archivo y en la ventana de tu gestor de archivos).
  7. Abrir de nuevo el archivo initrd con una herramienta de archivado (hay que hacer doble clic dos veces) y buscar la carpeta root/fumagician ; de nuevo extraerlo (arrastrar y soltar fuera del archivo).
  8. Abrir una consola ( F4 en algunos gestores de archivos), vaya dentro de la carpeta fumagician que acaba de extraer y ejecutar sudo ./fumagician .
  9. Siga los pasos de la herramienta SSD Magician En mi caso la reprogramación fue instantánea y no hubo confirmación de éxito o fracaso al final. Si el SSD Magician no encuentra ningún dispositivo, tal vez haya olvidado utilizar sudo .
  10. Reinicie sin montar o tocar el contenido del SSD que acaba de actualizar.
  11. Tras el reinicio sudo smartctl -a /dev/nvmxxx debería mostrar la versión actualizada del firmware. En mi caso, la versión actualizada del firmware no se mostraba hasta el reinicio.

Observación 1: Parece que es posible actualizar desde un sistema operativo que se ejecuta en el SSD de destino y he visto vídeos en YouTube que muestran la herramienta SSD Magician en Windows haciendo tales actualizaciones en caliente, es decir, en un SSD que se está utilizando. Pero no estoy del todo seguro de que esto sea seguro. El problema es que el SO escribirá en el SSD después del procedimiento de actualización pero antes del reinicio. Existe el riesgo de que el SSD no gestione correctamente esas escrituras, con lo que se perderían datos.

Observación 2: Si se utiliza UNetbootin para crear una memoria USB de arranque a partir de la ISO, la memoria USB debe estar formateada con MBR y FAT32; GPT y/o ext4 no me han funcionado. Hay un error en la imagen ISO proporcionada por Samsung con los sistemas basados en AMD. Los teclados y ratones USB, más concretamente, no funcionarán; como la mayoría de las placas base modernas ya no tienen puertos PS/2, navegar por las indicaciones de SSD Magician es prácticamente imposible en los sistemas basados en AMD ( fuente ).

0 votos

¿No se necesita un sistema Linux para empezar (paso 1)?

0 votos

No se requiere Linux, smartmontools está disponible en Mac. Ver macappstore.org/smartmontools . No tengo un Mac así que no puedo probarlo yo mismo. Y si no, puedes adivinar el nombre del modelo de SSD en el embalaje o en la factura.

0 votos

(Actualicé una unidad a través de Win en ese momento, ahora tengo otra con el mismo problema) Parece que hay alguna solución aquí. (UnetBootin con orig-Samsung iso sigue fallando como se indica en Q) (0. El paso con fumagician ser en el initrd es esencial .) 1. Arrancar un LiveCD de Ubuntu funcionó, montar en bucle la iso/initrd de Samsung funcionó, ejecutar fumagician funcionó. 2. Esa maldita cosa entonces escaneó las unidades, ¡y no encontró ninguna elegible! (Doble comprobación: FW actual: 1 B2QEXE7 deseado FW:_2_ B2QEXE7)

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X