Das SSD-Firmware-Upgrade erfordert ISO auf einem USB-Stick: Wie macht man das bootfähig?

Ziel ist es, eine NVMe-SSD-Firmware auf einem Mac ohne optisches Laufwerk per USB-Stick zu aktualisieren, die ein Minimum an Linux, Flasher und Payload enthalten sollte.

Die Anweisungen ( PDF ) für ein Firmware-Update-Dienstprogramm besagen, Unetbootin unter MacOS zu verwenden , um eine ISO-Datei auf einen FAT32-formatierten (gelöschten) USB-Stick zu schreiben.

Das funktioniert. Keine Fehler angezeigt.

Was dann nicht funktioniert, ist das Booten eines MacBook Pro 2015 von diesem Stick.

Das externe USB-Laufwerk wird nie im Boot-Menü angezeigt.


Was ich versucht habe:

  • Löschen Sie die Sticks ein paar Mal mit DiskUtility
  • Partitionierung der Sticks nach MBR oder GPT
  • 3 verschiedene Stöcke
  • verschiedene Laptops (Mac & Windows)
  • schreiben der iso-datei dddirekt auf den stick (und in einer weiteren runde mit balena ätzer und universal usb installer )
  • verschiedene Versionen von DiskUtility (Sierra und Mojave)
  • Windows-Bordtools auf einem PC zum Neuformatieren der Sticks
  • gparted und fdisk mkfs.vfat auf einem Linux-Rechner
  • Verwenden einer anderen ISO (die nicht zum Zielgerät passt) von der Anbieterseite (funktioniert ohne Probleme gemäß den Anweisungen, kann aber mein Gerät nicht aktualisieren …)
  • Schreiben an den Kundensupport (Antwort: "ISO sieht gut aus, sollte funktionieren, bitte versuchen Sie es erneut")
  • Booten einer neuen virtuellen Maschine auf einem Mac-Host mit nur der erforderlichen ISO-Datei. Frustrierenderweise bootet das zwar wie vorgesehen, kann das Gerät aber auch nicht aktualisieren. Weder ein Windows-PC noch ein Linux-Laptop können die von mir vorbereiteten Sticks booten.
  • Suchen Sie im Internet und insbesondere bei Ask Different nach Lösungen

Die Sticks werden einfach auf keinem Mac-Laptop als "bootfähig" erkannt, sobald die im Handbuch beschriebene Prozedur abgeschlossen ist. Alle Laptops können von externen Laufwerken (Thunderbolt & USB) booten und der Bootmanager wird ohne Interaktion aktualisiert, sobald ich diese einstecke.

Mögliche Gründe: - Angenommen, DiskUtility von 10.12 und 10.14 kann die Sticks nicht richtig formatieren? - Funktioniert die neueste Version von Unetbootin? - ist die iso für mein gerät unvollständig/beschädigt?

Der letzte Punkt hier könnte der Übeltäter sein:

Die Firmware-ISO für eine Samsung 970 EVO ist einfach so viel kleiner als für eine EVOplus:

  • NVMe SSD-970 EVO Plus Firmware ISO 2B2QEXM7 | 28 MB (funktioniert, nicht benötigt)
  • NVMe SSD-970 EVO Firmware ISO 2B2QEXE7 | 17,4 MB (funktioniert nicht, wird benötigt)

Die EVO-iso ist direkt in macOS montierbar und enthält nur

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

Das EVO-plus-iso kann nicht gemountet werden, aber wenn es geschrieben wird, um mit Unetbootin zu bleiben, zeigt es einen EFI-Ordner und GRUB-Dateien usw. an. Da dieses bootet und den Computer nach geeigneten Geräten durchsucht, stecke ich hier ein bisschen fest.


Keine dieser ähnlichen Fragen auf AskDifferent bot eine funktionierende Lösung:

Kopieren Sie das Crucial SSD-Firmware-Update-ISO auf einen bootfähigen USB-Stick

Ist es möglich, einen bootfähigen USB-Stick für ein Macbook Pro zu erstellen, um ein Firmware-Update durchzuführen?

Wie installiere ich ein bootfähiges ISO auf einer einzelnen Partition eines USB-Sticks?

Wie erstelle ich eine USB-Ubuntu-Startdiskette in OS X, damit sie auf *Nicht-Apple*-Computern startet?

Wie erstelle und verwende ich einen USB-Stick mit GParted, der auf einem Mac bootet?

Wie erstelle ich einen bootfähigen gparted oder Parted Magic USB-Stick für Mac?


Seit dem Herumspielen mit DiskUtilities-Optionen scheint es so zu sein, dass es ein bisschen fehlerhaft ist. Das Umschalten zwischen verschiedenen Partitionen und Dateitypen im Zusammenhang mit FAT/FAT32 führt dazu, dass DiskUtility seine eigenen Produkte nicht erkennt, wobei verschiedene Optionen zu unterschiedlichen Zeiten ausgegraut sind. Sieht für mich so aus, als würde ein Flag oder eine strukturelle Anomalie, die DiskUtility einführt, verhindern, dass dies funktioniert, als müsste ich den Stick wirklich abwischen. Leider haben weder Wipefs noch Gparted das erfolgreich gemacht und ich weiß nicht, wonach ich hier suchen soll.

Ich wünsche Ihnen viel Glück dabei :) - Am Ende habe ich immer nur das gesamte Laufwerk gelöscht und es auf einer Win-Maschine gemacht [wo es bemerkenswert einfach ist]
Ich würde Samsung bitten, eine Mac-freundliche Methode bereitzustellen.

Antworten (2)

Suchen Sie zuerst die USB-Stick-Festplattennummer von diskutil list. Diese Methode zerstört alles auf der Festplatte, auf die Sie kopieren, seien Sie also vorsichtig. Meine war /dev/disk3und sah so aus:

/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

Stellen Sie sicher, dass keine Volumes gemountet sind, und verwenden Sie dann , ddum die nicht gemountete ISO-Datei auf Ihr Gerät zu kopieren (hängen Sie keine Partitionsnummer an, verwenden Sie also nicht so etwas wie /dev/disk3s2).

Dies funktionierte bei mir mit der NVMe SSD-970 EVO Firmware ISO 2B2QEXE7 von hier .

[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 listsieht jetzt so aus:

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

und im Festplattendienstprogramm so:

Festplattendienstprogramm

Starten Sie neu und wählen Sie die gelbe Boot-Option auf dem USB-Stick namens "Windows" . Es sollte das Firmware-Dienstprogramm gut laden (bei mir auf 2015 MBP).


Danach muss, wie im Arch Wiki erwähnt, die ISO-Signatur gelöscht werden.

Warnung: Dadurch werden alle Daten auf /dev/sdx unwiderruflich zerstört. Um das USB-Laufwerk nach der Verwendung des Arch-ISO-Images als leeres, verwendbares Speichergerät wiederherzustellen, muss die ISO 9660-Dateisystemsignatur entfernt werden, indem Sie wipefs --all /dev/sdx als root ausführen, bevor Sie das USB-Laufwerk neu partitionieren und neu formatieren.

Da Wiifs in macOS nicht vorhanden ist, kann dies erreicht werden, indem gdisk verwendet wird , um eine neue gpt-Partitionstabelle zu schreiben. Eine einfache Neuformatierung im Festplattendienstprogramm funktionierte nicht, um die Verwendung des USB wiederherzustellen, was zu vielen Fehlern vom Typ "Operation nicht zulässig" führte .

Wie ich geschrieben habe, ddhat auch nicht funktioniert. Daten werden auf das richtige Gerät geschrieben, aber BM nimmt sie nicht auf. Was war vorher auf dem Stick? Vorbereitet für/von Windows? War es MBR oder GPT?
Es war vorher GPT (formatiert auf Mac), aber jetzt ist es keines von beiden. Das Schreiben auf das Gerät /dev/disk3statt auf die Partition /dev/disk3sXüberschreibt die Partitionstabelle und macOS sieht sie als ISO. Ich werde ein Bild hinzufügen, um es klarer zu machen ...
Auf meinem Stick hieß es Samsung (wie auf deinen Screenshots?). Aber abgesehen davon sieht alles genau so aus, wie du es beschreibst, wie von macOS aus sichtbar), nur dass der Bootmanager es immer noch nicht erkennt. Versuchte es mit GNU dd & BSD dd mit disk & rdisk (und sogar zuvor mit Wipefs unter Linux).
Seltsam, da wir gleichaltrige mbp haben und es bei mir funktioniert hat. Der einzige Unterschied besteht darin, dass ich Catalina installiert habe ... Vielleicht versuchen Sie es mit dem rEFInd-Bootloader und sehen Sie, ob er es als ISO-Treiber erkennt?

Haftungsausschluss: Beim Update auf eine neue Firmware besteht die Gefahr, dass Ihre SSD und die darauf gespeicherten Daten verloren gehen!

Hier sind die Schritte:

  1. Identifizieren Sie Ihr SSD-Modell, indem Sie es sudo smartctl -a /dev/nvmxxxauf Ihrer SSD ausführen (ersetzen Sie „xxx“ durch Ihren tatsächlichen Gerätenamen); Hier ist eine Beispielausgabe .
  2. Bereiten Sie einen bootfähigen Ubuntu/Kubuntu-USB-Stick vor, entweder von Ubuntu oder von Windows .
  3. Starten Sie Ihren Computer von besagtem USB-Stick.
  4. Öffnen Sie einen Browser und suchen Sie in einer beliebigen Suchmaschine nach „Samsung SSD-Firmware“. Das erste Ergebnis sollte die Seite zum Herunterladen von SSD-Tools und -Software von Samsung sein .
  5. Scrollen Sie nach unten bis „Firmware“, erweitern Sie den Abschnitt, suchen Sie das ISO-Image, das zu Ihrem SSD-Modell passt, und laden Sie es herunter.
  6. Öffnen Sie das ISO-Image mit einem Archiv-Tool wie File Roller oder Ark (was auch immer auf Ihrem USB-Stick vorinstalliert ist) und suchen Sie nach dem Dateinamen initrdund extrahieren Sie es (ziehen Sie es aus dem Archiv und in Ihr Dateimanager-Fenster).
  7. Öffnen Sie die Datei erneut initrdmit einem Archivierungstool (Sie müssen zweimal doppelklicken) und suchen Sie nach dem Ordner root/fumagician; Extrahieren Sie es erneut (ziehen Sie es per Drag & Drop aus dem Archiv).
  8. Öffnen Sie eine Konsole ( F4in einigen Dateimanagern), gehen Sie in den Ordner, den fumagicianSie gerade extrahiert haben, und führen Sie sudo ./fumagician.
  9. Fahren Sie mit den Schritten des SSD Magician-Tools fort ; In meinem Fall war die Neuprogrammierung sofort und es gab am Ende keine Erfolgs- oder Fehlerbestätigung. Wenn der SSD Magician keine Geräte findet, haben Sie vielleicht vergessen, sudo.
  10. Starten Sie neu, ohne den Inhalt der gerade aktualisierten SSD zu mounten oder anderweitig zu berühren.
  11. Nach dem Neustart sudo smartctl -a /dev/nvmxxxsollte die aktualisierte Firmware-Version angezeigt werden. In meinem Fall wurde die aktualisierte Firmware-Version erst nach dem Neustart angezeigt.

Anmerkung 1: Es scheint möglich, von einem Betriebssystem zu aktualisieren, das auf der Ziel-SSD läuft, und ich habe YouTube-Videos gesehen, die das SSD Magician-Tool unter Windows zeigen, das solche heißen Updates durchführt, dh auf einer verwendeten SSD. Aber ich bin mir nicht ganz sicher, ob das sicher ist. Das Problem ist, dass das Betriebssystem nach dem Update-Vorgang, aber vor dem Neustart auf die SSD schreibt. Es besteht das Risiko, dass die SSD diese Schreibvorgänge nicht korrekt verarbeitet und somit Daten verliert.

Anmerkung 2: Wenn UNetbootin verwendet wird, um einen bootfähigen USB-Stick von der ISO zu erstellen, muss der USB-Stick mit MBR und FAT32 formatiert werden; GPT und/oder ext4 haben bei mir nicht funktioniert. Es gibt einen Fehler im ISO-Image, das von Samsung mit AMD-basierten Systemen bereitgestellt wird. USB und insbesondere USB-Tastaturen und -Mäuse funktionieren nicht; Da die meisten modernen Mainboards keine PS/2-Anschlüsse mehr haben, ist das Navigieren durch die SSD Magician-Eingabeaufforderungen auf AMD-basierten Systemen praktisch unmöglich ( Quelle ).

Benötigt dies nicht zunächst ein Linux-System (Schritt 1)?
Linux ist nicht erforderlich, smartmontools ist für Mac verfügbar. Siehe macappstore.org/smartmontools . Da ich keinen Mac habe, kann ich es nicht selbst testen. Und alternativ können Sie die SSD-Modellbezeichnung der Verpackung oder der Rechnung entnehmen.
(Zu der Zeit ein Laufwerk über Win aktualisiert, jetzt ein anderes mit demselben Problem) Hier scheint es eine Lösung zu geben. (UnetBootin mit orig-Samsung iso schlägt immer noch fehl, wie in Q beschrieben) (0. Der Schritt mit fumagician in der initrd ist wichtig .) 1. Das Booten einer Ubuntu LiveCD funktionierte, Loop-Mounting von Samsungs iso/initrd funktionierte, das Ausführen von fumagician funktionierte. 2. Dieses verflixte Ding scannte dann die Laufwerke und fand keine geeigneten! (Dbl-geprüft: Aktuelle FW: 1 B2QEXE7 Gewünschte FW:_2_ B2QEXE7)…
Hallo @LangLangC! Vielleicht hast du nicht fumagicianals root ausgeführt (mit sudo)? Oder aus irgendeinem Grund ist Ihre SSD von Ihrem bootfähigen Ubuntu/Kubuntu-USB-Stick aus nicht sichtbar, haben Sie mit überprüft sudo smartctl -a /dev/nvmxxx? Eine Anmerkung: Loop-Montage ist nicht erforderlich, jedes Archiv-Tool kann das ISO-Image ähnlich wie eine ZIP-Datei öffnen.