Welche Flash-Laufwerksgeometrie hängt davon ab? Kann ich es nach meinen Wünschen ändern?

1209
gumkins

Ich habe ein USB-Flashlaufwerk. Hier sind die ersten Informationen, die von fdisk(Linux) generiert wurden :

# fdisk -l /dev/sdc  Disk /dev/sdc: 8053 MB, 8053063680 bytes 16 heads, 60 sectors/track, 16384 cylinders, total 15728640 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0xd297c0f1  Device Boot Start End Blocks Id System /dev/sdc1 2048 15728639 7863296 b W95 FAT32 

Dann spielte ich mit ihm einige Zeit mit verschiedenen Werkzeugen (wie badblocks, parted, fdisk, gparted, disks) und wollte den Antriebsanfangszustand (die gleiche partion Tabelle, gleiche Partitionsnummer / Typ / Größe / Lage, das gleiche Dateisystem und ... Geometrie wiederzuherzustellen Fdisk hat jedoch eine andere Geometrie gedruckt, als ich es erneut ausgeführt habe:

# fdisk -l /dev/sdc  Disk /dev/sdc: 8053 MB, 8053063680 bytes 232 heads, 46 sectors/track, 1473 cylinders, total 15728640 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x7a249df5  Device Boot Start End Blocks Id System /dev/sdc1 2048 15728639 7863296 c W95 FAT32 (LBA) 

Was genau habe ich gemacht:

  • einen Test mit Badblocks durchgeführt: badblocks -w -s -o /tmp/output /dev/sdc
  • Neue Partitionstabelle mit fdiskund erstelltparted
  • eine primäre Partition mit fdiskund erstelltparted
  • formatierte die Partition als FAT32 und exFAT ( mkfs.vfat -F32 /dev/sdc1, mkfs.exfat /dev/sdc1)
  • Partitionssystem-ID geändert

Sicher weiß ich, dass Flash-Laufwerke keine Header, Zylinder usw. haben und dass es wichtig ist, dieselbe Gesamtzahl von Sektoren zu haben. Aber möchte ich trotzdem eine bestimmte Geometrie für ein Flash-Laufwerk festlegen? Wie würde ich das tun? Hängt es von einem verwendeten Werkzeug oder einer Befehlsoption ab?

1

2 Antworten auf die Frage

1
Metabolix

Die Geometrie (Zylinder, Köpfe, Sektoren) ist selbst bei modernen Festplatten, von Flash-Laufwerken ganz zu schweigen, veraltet und irrelevant. Es wird in modernen Betriebssystemen meist nicht verwendet. praktisch alles verwendet lineare Adressen (logische Blockadressierung [LBA]) oder andere schnittstellenspezifische Methoden. Die Leistung wird dadurch nicht beeinträchtigt.

Diese CHS-Werte werden gebildet, weil die MBR-Partitionstabelle CHS-Adressen enthält. Aktuelle Versionen von fdisk (util-linux 2.27.1) zeigen diese verwirrenden Informationen standardmäßig nicht einmal an.

0
András Korn

Sie können die Geometrie mit zB überschreiben fdisk -H 32 -S 32 /dev/sda. Dies hat zur Folge, dass alle Zylinder 512k lang sind. Da Partitionen im msdos-Partitionierungsschema an Zylindergrenzen beginnen, ist dies eine ziemlich raffinierte Methode, um sicherzustellen, dass alle Partitionen für die meisten SSDs richtig ausgerichtet sind (mit Ausnahme der ersten Partition, die um eine Spur versetzt ist, um Platz für den Bootloader zu reservieren).

Es ist jedoch besser, GPT zu verwenden und die Faux-Geometrien zu vergessen.