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?
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.