Der Befehl lsblk ist dafür großartig:
lsblk -o NAME,PHY-SeC
Die Ergebnisse:
NAME PHY-SEC sda 512 ├─sda1 512 ├─sda2 512 └─sda5 512
Ich versuche, die optimale Größe für eine große Kopie von meiner Festplatte mit dd herauszufinden. Ich versuche herauszufinden, welche Blockgröße am besten geeignet ist, und ich würde davon ausgehen, dass es sich um die Hardwareblockgröße für dieses Laufwerk handelt.
Der Befehl lsblk ist dafür großartig:
lsblk -o NAME,PHY-SeC
Die Ergebnisse:
NAME PHY-SEC sda 512 ├─sda1 512 ├─sda2 512 └─sda5 512
Linux macht die physische Sektorgröße in Dateien verfügbar /sys/block/sdX/queue/physical_block_size
. Um die beste Leistung zu erzielen, sollten Sie jedoch wahrscheinlich ein paar Tests mit verschiedenen Größen und Maßen durchführen. Ich konnte nicht finden, eine klare Antwort, dass genau die physikalische Blockgröße würde das optimale Ergebnis erhalten (obwohl ich es annehmen kann keine schlechte Wahl sein).
$ sudo hdparm -I /dev/sda | grep -i physical Physical Sector size: 4096 bytes
Meine soll keine vollständige Antwort sein, aber ich hoffe, es hilft auch.
Hier ist etwas von http://mark.koli.ch/2009/05/howto-whole-disk-backups-with-dd-gzip-and-p7zip.html
Für eine schnellere Sicherung kann es hilfreich sein, die optimale Blockgröße des zu sichernden Plattengeräts festzulegen. Angenommen, Sie erstellen eine Sicherungskopie von / dev / sda. So können Sie den Befehl fdisk verwenden, um die beste Blockgröße zu ermitteln:
rescuecd#/> /sbin/fdisk -l /dev/sda | grep Units Units = cylinders of 16065 * 512 = 8225280 bytes
Beachten Sie, dass die Ausgabe von fdisk "Zylinder von 16065 * 512" angibt. Dies bedeutet, dass sich auf der Platte 512 Bytes pro Block befinden. Sie können die Geschwindigkeit der Sicherung erheblich verbessern, indem Sie die Blockgröße um ein Vielfaches von 2 bis 4 erhöhen. In diesem Fall könnte eine optimale Blockgröße 1k (512 * 2) oder 2k (512 * 4) betragen. Übrigens, gierig zu werden und eine Blockgröße von 5k (512 * 10) oder etwas zu viel zu verwenden, wird nicht helfen. Dies führt zu Engpässen am Gerät selbst und Sie können keine zusätzliche Leistung aus dem Sicherungsprozess herausholen. (Betonung hinzugefügt)
Ich vermute, dass der Unterschied in der Leistung zwischen einer nahezu optimalen und optimalen Blockgröße für eine gegebene Konfiguration vernachlässigbar ist, sofern der Datensatz nicht enorm ist. Ein Benutzer von FixUnix (Post aus 2007) gab an, seine optimalen Zeiten waren nur 5% schneller als die suboptimalen. Vielleicht können Sie ein bisschen mehr Effizienz herausholen, indem Sie ein Vielfaches der "Cluster" - Größe oder Blockgröße des Dateisystems verwenden.
Wenn Sie sich zu weit weg von der optimalen Blockgröße bewegen, können Sie natürlich Probleme bekommen.
Unter dem Strich gewinnen Sie mit der absoluten optimalen Blockgröße wahrscheinlich nur etwa 5% Leistung (dh 3 Minuten pro Stunde). Überlegen Sie sich also, ob es Ihre Zeit und Mühe wert ist, weiter zu forschen. Solange Sie sich von extremen Werten fernhalten, sollten Sie nicht leiden.
Bei jeder Datenträgerübertragung wird ein Interrupt erzeugt, den der Prozessor verarbeiten muss. Eine typische 50-MBit / s-Platte möchte 100000 von ihnen pro Sekunde bei einer Blockgröße von 512 Bit generieren. Ein normaler Prozessor würde Zehntausende davon handhaben, daher wäre eine größere Blockgröße (2 × x) praktischer (4 KByte als Standardgröße für FS-Blöcke) Systeme bis 64k ISA DMA-Größe) wären praktischer ...
Darüber hinaus können Sie durch die Ausgabe von schauen lshw
, um andere Ergebnisse zu überprüfen (und auch, weil ich anscheinend nicht hdparm
auf meiner Distribution verfügbar bin.) Dies kann helfen, die Suche einzugrenzen :
sudo lshw | awk 'BEGIN /SCSI/,!//'