combien de temps pour mettre à zéro un lecteur avec dd? [fermé]

14

Combien de temps faut-il pour remplir zéro 1 To (en utilisant dd dev / zero)?

En fait, je fais deux disques 500G simultanément si cela est important.

Miles Marley
la source
3
Alors, dites-nous, combien de temps a-t-il fallu pour dd les disques avec des zéros?
Rolnik
1
Ma SATA WD 1 To (5400 tr / min) prend environ 240 minutes, mais elle est ancienne et a des secteurs réaffectés. Soit dit en passant, ce n'est pas si différent de la même heure que les rapports intelligents comme le temps de s'attendre à ce qu'un autotest prolongé dure (255 minutes)
barrymac
2
Ajout d'un autre point de données: vient de fonctionner dd if=/dev/zero of=/dev/sdX bs=8Msur deux tout nouveaux disques Seagate ST4000DM000 4 To sur les ports SATA-300 simultanément (je pense qu'il était plus ou moins parfaitement parallélisable - l'utilisation du processeur était constante à ~ 20% pour le premier ddprocessus avant le démarrage du second , puis les deux ont pris ~ 20% chacun). Le premier disque s'est terminé en 8h50min (530 min), et le second en 8h30min (510 min). Cela équivaut à une vitesse d'écriture de ~ 130 Mo / s par lecteur, ce qui n'est pas si étrange compte tenu de l'entrée monotone. Le matériel date de 2009 (CPU: C2D E8400; chipset: Intel P43 / ICH10).
Daniel Andersson

Réponses:

9

Cela dépend de nombreux facteurs, notamment:

  • Vitesse du disque (RPM)
  • Cache intégré au disque
  • Nombre de plateaux et possibilité d'écrire simultanément sur plusieurs plateaux
  • Interface de disque (SATA / SCSI, etc.)
  • Performances du contrôleur d'interface
  • Configuration des disques (par ex. Canaux séparés ou même canal)

De plus, bien que la remise à zéro d'un lecteur soit une tâche simple pour le CPU et la RAM, il peut toujours y avoir un effet de:

  • Performances CPU
  • RAM disponible
  • Vitesse de RAM
  • D'autres tâches se font en même temps
  • Paramètres de gestion de l'alimentation

En supposant un ordinateur assez récent avec des disques de qualité moyenne, sur un disque de démarrage Linux minimal exécutant JUSTE l'opération de mise à zéro (pas de GUI, Internet, etc.) entièrement chargé en RAM, cela pourrait aller de 2 à 12 heures. Si je devais jeter un seul numéro, je dirais plus près de 3 heures et demie, mais encore une fois, il n'y a pas assez d'informations pour obtenir une bonne estimation autre que le faire réellement.

Si vous avez plus de 1 Go d'espace libre, vous pouvez essayer de monter le lecteur et de l'exécuter dd if=/dev/zero bs=512 count=2048 of=/tmp/tempzeroou d'un autre fichier. Si vous en savez plus sur la taille de bloc optimale pour une écriture plus rapide sur votre lecteur, vous pouvez l'utiliser pour la valeur bs (en kilo-octets) et définir le nombre sur ce qui vous donnera la taille de fichier souhaitée. Ensuite, vous pouvez l'utiliser pour obtenir une meilleure estimation sans perdre de données. Il va juste créer un gros fichier contenant des zéros.

TuxRug
la source
3
D'après mon expérience sur les disques durs de la dernière décennie, bs = 1M est une amélioration considérable par rapport à bs = 512 et est assez bon pour être utilisé par défaut sans trop se soucier de trouver l'optimal.
crazyscot
@crazyscot oui différence énorme avec le bs = 1M pour remplacer le terrible défaut de bs = 512. Également ddrescue (vérifiez comment définir la taille du bloc), donne une barre de pourcentage / progression.
barlop
2

J'ai fait un dd avec des données aléatoires sur un disque de 750 Go. Je pense que cela a pris environ 20 heures. Ce qui a vraiment sucé, c'est que j'ai dû le faire quatre fois pour une matrice RAID à quatre disques. Je pense que le goulot d'étranglement est la vitesse d'écriture de vos disques. Vous êtes intelligent de le faire sur les disques en parallèle.

Rolnik
la source
2
Une grande partie de votre problème de performances était probablement due à l'utilisation de nombres aléatoires. / dev / urandom ou toute autre source va essayer très fort de générer des nombres vraiment aléatoires, réduisant ainsi votre débit. Quelque chose comme / dev / zero n'aura pas ce problème.
Sam Bisbee
Y a-t-il un risque que 1 To de zéros soit compressé quelque part dans le pipeline jusqu'au stockage et biaise les résultats? Je ne veux pas dire réellement compressé sur le disque, mais en transit comme une optimisation
pufferfish
2

Avec une partition de +100 Go, Acer Aspire 5750G, disque dur externe SATA, USB 2, 5400 tr / min:

xxxx@acer-ubuntu:~$ sudo dd if=/dev/zero of=/dev/sdb2 bs=8M
[sudo] password for xxxx: 
dd: writing `/dev/sdb2': No space left on device
12500+0 records in
12499+0 records out
104856551424 bytes (105 GB) copied, 2846.87 s, 36.8 MB/s

et

xxxx@acer-ubuntu:~$ sudo dd if=/dev/zero of=/dev/sdb1 bs=8M
[sudo] password for xxxx: 
dd: writing `/dev/sdb1': No space left on device
6579+0 records in
6578+0 records out
55183409152 bytes (55 GB) copied, 1497.23 s, 36.9 MB/s
hsmit
la source
1

Je suppose, mais je suppose que cela dépendra du contrôleur de lecteur, du contrôleur de la carte mère et de ce qui absorbe le CPU / IO.

Ma conjecture, de l'ordre de l'heure ou des heures. Les jours semblent longs. Selon la configuration de votre machine, l'exécution des deux en même temps peut en fait ralentir les choses si vous créez des conflits pour le contrôleur de lecteur. Même si vous pompez des zéros, rien dans votre lecteur ne le sait et il doit écrire chaque octet.

Rich Homolka
la source
1

Si vous effacez simplement les disques, un excellent outil à utiliser pour le débit parallèle est DBAN en mode d'effacement simple. Il est disponible en ISO et exécute essentiellement la dd if=/dev/zerocommande pour vous sur les lecteurs que vous sélectionnez.

wajeemba
la source
0

Cela devrait prendre 2 à 5 heures. Votre goulot d'étranglement est le disque, pas la RAM, le CPU, les câbles ou la configuration du contrôleur. À moins que vous n'ayez un très vieil ordinateur, comme un Pentium d'origine, votre processeur et votre mémoire sont bien plus rapides que la vitesse de rotation du disque dur, tout comme vos câbles SATA. Le cache n'entre même pas en jeu car vous mettez à zéro le lecteur (sauf si vous avez 1 To de cache).

Jordan
la source