Probleme beim Formatieren von USB Sticks ?

Wenn Euch diese Fehlermeldung bekannt vorkommt, Ihr aber keine Lösung gefunden habt, dann ist der Artikel genau das, was Ihr sucht:

„Error creating partition on /dev/sdd: Command-line `parted –align optimal –script „/dev/sdd“ „mkpart primary ext2 1487MiB 3958374399b“‚ exited with non-zero exit status 1: Warnung: Der Treiberdeskriptor sagt, dass die physische Blockgröße 2048 Bytes ist. Linux sagt, dass es 512 Bytes sind.
 (udisks-error-quark, 0)“

Das Laufwerkstool hat Euch im Stich gelassen ?
GParted weigert sich überhaupt mit der Partition zu reden ?
sfdisk weigert sich eine neue Partition für das Drive anzulegen ?

Ok, es wird Zeit in die Steinzeit von Linux zurück zugehen und ein Tool rauszukramen, daß dank GParted aus der Mode kommen ist: fdisk .

Wer sich die mit Sfdisk die Daten des USBSticks ansieht, wird feststellen, daß logisch 2048 Byte, per physikalisch nur 512 Byte als Sektorgröße angegeben sind. Das führt zu einem logischen Dilemma, weil der Block nicht passen kann.

Modell: Intenso Rainbow Line (scsi)
Festplatte  /dev/sdd:  15,8GB
Sektorgröße (logisch/physisch): 2048B/512B
Partitionstabelle: mac
Disk-Flags:

fdisk dagegen liest es mit 512 Byte logisch wie physikalisch ein und damit paßt es dann wieder.

Festplatte /dev/sdd: 3,7 GiB, 3958374400 Bytes, 7731200 Sektoren
Einheiten: Sektoren von 1 * 512 = 512 Bytes
Sektorgröße (logisch/physikalisch): 512 Bytes / 512 Bytes
E/A-Größe (minimal/optimal): 512 Bytes / 512 Bytes
Festplattenbezeichnungstyp: dos
Festplattenbezeichner: 0x537ee902

Der Stick ist nur in Wirklichkeit nur 4 GB groß, also ist die Sektorgröße 512. 1:0 für fdisk.

ruft man als root folgendes auf : fdisk /dev/sdd

kann man sich im fdisk eine neue Partition wie folgt anlegen:

Befehl (m für Hilfe): n
Partitionstyp
   p   Primär (3 primär, 0 erweitert, 1 frei)
   e   Erweitert (Container für logische Partitionen)
Wählen (Vorgabe e): p

Partition 4 ausgewählt
Erster Sektor (3010560-7731199, Vorgabe 3010560):
Letzter Sektor, +Sektoren oder +Größe{K,M,G,T,P} (3010560-7731199, Vorgabe 7731199):

Eine neue Partition 4 des Typs „Linux“ und der Größe 2,3 GiB wurde erstellt.

Befehl (m für Hilfe): w
Die Partitionstabelle wurde verändert.
ioctl() wird aufgerufen, um die Partitionstabelle neu einzulesen.

Jetzt hat man eine neue Partition auf dem Stick, die man noch formatieren muß, was im Detail etwas dauern kann:

# mkfs.ntfs /dev/sdd4
Cluster size has been automatically set to 4096 bytes.
Initializing device with zeroes: 100% – Done.
Creating NTFS volume structures.

und ein paar Stunden später , kein Witz, kommt einem wie Stunden vor… kann man die Partition dann benutzen:

mkntfs completed successfully. Have a nice day.

Das Filesystem ntfs habe ich genommen, damit Linux und Windows Daten austauschen können.

Achtung: steckt man den USB Stick im selben Slot nochmal rein, kann es passieren, daß die neue Partitionstabelle nicht eingelesen wird und man seine Partition nicht sieht. Lösung: (Wieder kein Witz) Steckt den Stick in einen anderen Slot, damit bekommt er intern ein anderes Device zugewiesen, das umgeht das Kernel Cache 😀 (:facepalm:)