• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[solved] Live-CD auf USB richtig löschen und formatieren

Lurchi

Hacker
Hallo Forum.

Ich habe auf meinem USB-Stick noch 'ne Live-CD und möchte ihn nun wieder als Datenträger benutzen.
D.h.: Löschen des Inhaltes, neu Partionieren. O.K.!

Was habe ich bisher probiert?
1. Über das YaST-Modul. Ich konnte zwar den Inhalt löschen, eine neue Partition erstellen, aber ich weiß jetzt nicht, wo der Einhängepunkt sein muss. Hab's dann 'dran gegeben!
2. GParted sprach
GParted 0.12.1

libparted 2.4
Primäre Partition Nr. 1 (fat32, 1.97 GiB) auf /dev/sdc erstellen 00:00:01 ( FEHLER )

Leere Partition erstellen 00:00:00 ( ERFOLG )

Pfad: /dev/sdc1
Anfang: 2.048
Ende: 4.130.815
Größe: 4.128.768 (1.97 GiB)
Partitionstyp auf /dev/sdc1 festlegen 00:00:00 ( ERFOLG )

Neue Partitionstyp: fat32
Neues fat32-Dateisystem erzeugen 00:00:01 ( FEHLER )

mkdosfs -F32 -v -n "" /dev/sdc1

mkdosfs 3.0.10 (12 Sep 2010)
mkdosfs: unable to open /dev/sdc1

3. Via Konsole als root:
mkfs.vfat -I /dev/sdc
Mit dem Erfolg, dass immer noch die Live-CD auf dem Stick erscheint! :???:

Finde(t) den Fehler.
 
Primäre Partition Nr. 1 (fat32, 1.97 GiB) auf /dev/sdc erstellen 00:00:01 ( FEHLER )
Wie lautet das letzte Wort? Das damit alle nachfolgenden Operationen mehr oder minder im Sand verlaufen, ist kein Wunder.

Wenn Du neu partitionieren willst, darf der stick nicht gemountet sein. Ich persönlich mache so etwas als root auf der Konsole mittels cfdisk. fdisk geht natürlich auch. Vorher sicher stellen das der stick nicht gemountet ist. Wenn er neu partitioniert ist, kannst Du über mkfs.vfat /dev/sdc1 das Dateisystem erstellen.
 
OP
Lurchi

Lurchi

Hacker
Wenn er neu partitioniert ist, kannst Du über mkfs.vfat /dev/sdc1 das Dateisystem erstellen.
Das Komische an der Sache ist, dass ich nachdem ich den Stick neu partitioniert und formatiert habe, beim Einbinden dessen zwei Geräte angeboten bekomme: Zum einen die Live-CD (openSUSE 12.3; wollte ich doch garnicht mehr haben) und zum anderen "Generic Flash Disc"!
Die "alte Live-CD" kann ich mounten, die andere nicht! Hat das was mit der Partitionstabelle zu tun.
Und wenn ich die alte Live-CD" unmounte, bleibt die andere bestehen.
Ich doch ein wenig überfragt! :???:
 

josef-wien

Ultimate Guru
Lege mit einem Partitionierungs-Werkzeug Deiner Wahl eine neue msdos-Partitionentabelle (heißt manchmal auch disklabel) an, und erstelle dann die gewünschte(n) Partition(en).

Wenn das noch nicht hilft, lösche mit
dd if=/dev/zero of=/dev/sdX bs=440 count=1
den Boot-Code im MBR (und irre Dich nicht bei der Angabe des USB-Sticks).
 
OP
Lurchi

Lurchi

Hacker
Hallo josef-wien.

Also. Ich habe mit GParted eine neue msdos-Partitionstabelle angelegt, eine neue Partition angelegt und sie mit FAT32 formatiert. Es bleibt dabei: Ich bekomme beim mounten zwei Geräte zur Auswahl: Die Live-CD und Generic Flash Disc.

Beim YaST-Modul sieht es wie folgt aus:
Gerät:
Gerät: /dev/sdb1
Größe: 1.97 GB
Verschlüsselt: Nein
Gerätepfad: pci-0000:00:02.1-usb-0:6:1.0-scsi-0:0:0:0-part1
Geräte-ID 1: usb-Generic_Flash_Disk_CCBB1101171501548116110907-0:0-part1
FS-ID: 0x0B Win95 FAT32

Dateisystem:

Dateisystem: FAT
Einhängepunkt: /media/openSUSE 12.3 KDE Live
Kennung:
Man achte auf den Einhängepunkt! :???:

Und wie mache ich
dd if=/dev/zero of=/dev/sdX bs=440 count=1
Was bedeutet /dev/zero?
 

Spielwurm

Advanced Hacker
Es gibt USB-Sticks, die "zicken" und melden sich als 2 Devices an. Ich habe keine genaue Ahnung, warum. Denen rückt man am Besten mit dd zu leibe. Der Befehl
Code:
dd if=/dev/zero of=/dev/sdX bs=440 count=1
sagt, dass das Programm dd 440 Nullen 1mal auf den Stick schreibt (infile ist das device null).

Meine Erfahrung sagt, dass das oft nicht reicht, ich schreibe dann 512 Nullen 20mal auf den Stick, das reicht dann. Allerdings ist der Stick dann unformatiert und ohne Dateisystem.
 
A

Anonymous

Gast
Die Partitionstabelle wird nur beim Start bzw. beim einstecken gelesen und ist dann im Kernel gespeichert.
Wenn die Partitionstabelle geändert wurde müsste sie neu eingelesen werden, normalerweise versuchen das auch die Partitonierungtools. Solange sie nicht neu eingelesen wurde, arbeitet der Kernel mit der alten weiter. Allerdings bei USB schlägt hier oftmals ein Automount zu und damit ist das Laufwerk im Zugriff, und solange noch irgendwas gemountet oder sonst wie im Zugriff ist, dann kann die Partitionstabelle nicht neu eingelesen werden. Das Alte Dateisystem ist dann noch gemountet und hat auch noch einen Teil des alten Dateisystems im Cache und schreibt dann auch gelegentlich den alten Filesystemheader wieder auf die Partition obwohl da schon was neues drauf angelegt sein sollte.. Damit ist das alte Dateisystem manchmal obwohl schon ein neues Dateisystem drauf gespielt wurde, wieder sichtbar und teilweise sogar noch mountbar. Produziert aber dann irgendwann schnell Fehler wenn man damit arbeiten will. Das die USB Hardware selbst bzw die Treiber noch zusätzlich spinnen und seltsames Zeug machen, ist nicht ausgeschlossen, aber selten.

Mein Vorschlag: komplett umounten
Code:
umount /dev/sdb*
Eventuell kommen Fehler, das das nicht geht, dann greift noch ein Prozess zu, aber in diesem Fall egal,
danach mit dd die ersten paar MByte überschreiben
Code:
dd if=/dev/zero of=/dev/sdb bs=2048 count=512
jetzt die Usb Verbindung erstmal komplett unterbrechen und dann wieder neu einstecken,
dann erst neu partitionieren, dann sollte das alte Dateisystem definitiv nicht mehr sichtbar werden.

robi
 
OP
Lurchi

Lurchi

Hacker
robi schrieb:
Code:
dd if=/dev/zero of=/dev/sdb bs=2048 count=512

@ robi!
Diese Parameter mehr bei bs=2048, haben letztendlich geholfen. Deine Ausführungen im oberen Bereich, wie z.B. Automount, kann ich bestätigen.

Danke für Eure tatkräftige Unterstützung.
 
Oben