Forum: Mikrocontroller und Digitale Elektronik Usb stick Efi Ich kapiere es nicht


von Gerd (Gast)


Lesenswert?

Hallo
Ich verstehe einfach nicht was passiert. Also ich habe meinen Pc Ubuntu 
14. Mit diesem Habe ich ubuntu 16.4 auf einen Usb stick "geschoben" über 
Laufwerksabbild wiederherstellen.
Danach hat der Sick zwei Partitionen 0x00 Bootfähig und EFI und einen 
Unbenutzten Bereich
Der Stick ist wirklich Bootfähig und funktioniert.

Wenn ich dann aber einmal diesen Stick wieder Lösche und Fat 32 oder was 
auch immer Partitioniere und danach nochmal versuche das Laufwerkabbild 
zu schreiben bleibt diese Partition bestehen man bekommt keine EFI und 
er bootet auch nicht

Probiert habe ich mittlerweile Fat16 Boot Fat32 Ntfs ich habe auch die 
Partitionstabelle neu Geschrieben mit Windows Partitioniert und 
formatiert. Diverse komische Programme ausprobiert aber keiner dieser 
Usb sicks ist jemals wieder EFI bootfähig geworden.

Könnt ihr mir das Erklären?
Wie kann man einen Usb Stick wieder in den "Original" zustand versetzen?

von Vka (Gast)


Lesenswert?

Ich vermute du schreibst das Abbild auf die Partition. Räum das mal 
alles weg und schreibe direkt auf den Stick.

von c-hater (Gast)


Lesenswert?

Gerd schrieb:

> Ich verstehe einfach nicht was passiert. Also ich habe meinen Pc Ubuntu
> 14. Mit diesem Habe ich ubuntu 16.4 auf einen Usb stick "geschoben" über
> Laufwerksabbild wiederherstellen.
> Danach hat der Sick zwei Partitionen 0x00 Bootfähig und EFI und einen
> Unbenutzten Bereich
> Der Stick ist wirklich Bootfähig und funktioniert.
>
> Wenn ich dann aber einmal diesen Stick wieder Lösche und Fat 32 oder was
> auch immer Partitioniere und danach nochmal versuche das Laufwerkabbild
> zu schreiben bleibt diese Partition bestehen

Das ist einfach zu verstehen. Dein Stick war offensichtlich nach dem 
GPT-Schema formatiert. D.h. insbesondere: die eigentlichen Informationen 
zur Partitionierung stehen am Ende des physischen Mediums.

Um diese wieder los zu werden, mußt du also genau diesen Bereich löschen 
(ausnullen), genau so, wie du bei der klassischen MBR-Formatierung eben 
den Anfang des Mediums löschen mußt, um sie los zu werden.

Der einfachste Ansatz dazu ist, das gesamte Medium mit Nullen zu 
beschreiben. Einfach und für beide Szenarios gleichzeitig anwendbar, 
aber wenig effizent und auch etwas destruktiv. Gerade bei 
Klopapier-Medien wie etwa einem USB-Stick... Geht jedenfalls etwa so:

dd if=/dev/zero of=/dev/sdX bs=1M

wobei natürlich das "X" durch den korrekten Buchstaben für deinen Stick 
zu ersetzen wäre.

Sinnvoller wäre aber natürlich, einfach nur z.B. die ersten und letzten 
128MB des Mediums zu nullen. Das geht viel, viel schneller. Die ersten 
128MB sind auch nicht wesentlich schwerer umzusetzen:

dd if=/dev/zero of=/dev/sdX bs=1M count=128

Problematischer wird es aber für's Ende, dann da spielt natürlich die 
Größe des Mediums mit rein. Grundsätzlich muß man hierfür den 
"seek"-Parameter für dd bemühen, der bestimmt, wo mit dem Schreiben 
anzufangen ist.

dd if=/dev/zero of=/dev/sdX bs=1M count=128 seek=<N blocks>

Nun bleibt also nur noch über, für <N blocks> eine Zahl 
hinzuschreiben...

Diese Zahl berechnet sich aus (MiB gesamt - 128). Bleibt also bloß noch, 
zu ermitteln, wieviele MiB das Medium insgesamt hat...

Kriegst du das alleine hin? Hint: "fdisk -l" ist ein ganz nützliches 
Kommando für solche Fragen...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.