GNU/Linux >> Tutoriels Linux >  >> Linux

Comment trouver la vitesse de transfert de données du disque dur sous Linux

Ce guide vous apprendra comment trouver la vitesse de transfert de données du disque dur sous Linux. En d'autres termes, nous allons identifier la vitesse à laquelle votre disque dur fournit des données dans les systèmes d'exploitation de type Linux et Unix.

Nous allons également parler d'autres choses utiles comme le nombre de secteurs qu'un disque dur peut lire à la fois, la fonction de lecture anticipée, le mode acoustique, la mise en cache de réécriture et le disque dur de référence, etc.

Pour les besoins de ce guide, nous utiliserons hdparm utilitaire de ligne de commande pour vérifier la vitesse de lecture et d'écriture du disque dur et tester les performances du disque dur.

Juste au cas où vous l'auriez manqué, nous avons déjà utilisé le hdparm utilitaire pour trouver les détails du disque dur sous Linux. Maintenant, nous allons utiliser le même hdparm utilitaire pour mesurer la vitesse de transmission du disque dur.

Un mot d'avertissement

Même si hdparm offre des avantages significatifs pour augmenter les performances du disque, il est également EXTRÊMEMENT DANGEREUX . Cela conduira très probablement à une perte massive de données lorsque certains paramètres sont mal utilisés. La documentation hdparm suggère que VOUS NE DEVRIEZ PAS UTILISER CERTAINES COMMANDES EN AUCUN CAS . J'ai donc exclu ces commandes dangereuses dans ce guide. Plus important encore, il est toujours recommandé de sauvegarder votre disque dur avant de tester votre disque dur avec hdparm sur votre système Linux.

Trouvez la vitesse de transfert des données du disque dur sous Linux

Pour vérifier la vitesse de transfert des données du disque dur sous Linux, exécutez "hdparm" commande avec -t drapeau comme ci-dessous :

$ sudo hdparm -t /dev/sda

Exemple de résultat :

/dev/sda:
 Timing buffered disk reads: 246 MB in  3.00 seconds =  81.97 MB/sec

Comme vous pouvez le constater, le taux de transfert de données est de 81,97 Mo par seconde. Assurez-vous qu'aucun autre programme ne s'exécute en arrière-plan.

Exécutez hdparm commandez au moins deux ou trois fois et calculez la vitesse moyenne de transfert de données de votre lecteur à partir des résultats.

Comme vous pouvez le voir dans la sortie ci-dessus, le noyau Linux place les données récupérées du disque dur dans un tampon lors du transfert de données. Si vous souhaitez mesurer un taux de transfert de données plus précis, utilisez :

$ sudo hdparm -t --direct /dev/sda

Exemple de résultat :

/dev/sda:
 Timing O_DIRECT disk reads: 242 MB in  3.02 seconds =  80.21 MB/sec

Maintenant, le hdparm programme n'utilisera pas de tampon et lira les données directement à partir du disque dur. Comme vous l'avez remarqué dans la sortie ci-dessus, le taux de transfert a diminué sans le tampon.

Hdparm lira toujours les données depuis le début des périphériques de stockage. Si vous voulez hdparm pour lire les données d'une autre zone du périphérique de stockage, vous pouvez utiliser le "offset" paramètre comme ci-dessous.

$ sudo hdparm -t --direct --offset 10 /dev/sda

Ici, 10 représente le nombre de gigaoctets à ignorer. Conformément à la commande ci-dessus, les premiers 10 GB seront ignorés lors de la lecture des données du disque. Sur un 20GB disque, la commande ci-dessus fournirait des données à partir du milieu du disque.

Exemple de résultat :

dev/sda:
 Timing O_DIRECT disk reads (offset 10 GB): 244 MB in  3.01 seconds =  81.15 MB/sec

Comparez le taux de transfert du disque dur avec et sans les valeurs de décalage. Lorsque nous avons utilisé le "offset" paramètre dans la deuxième commande, le taux de transfert a diminué. Par conséquent, il semble que les disques durs fournissent des données un peu plus lentement à partir des zones extérieures des disques.

Trouver combien de secteurs lit un disque dur

Habituellement, un disque dur lira plusieurs secteurs en même temps pour accélérer la transmission des données. Vous pouvez trouver cette valeur en exécutant :

$ sudo hdparm -I /dev/sda

Sous "Capabilities" section, vous verrez une sortie comme ci-dessous.

[...]
Capabilities:
    LBA, IORDY(can be disabled)
    Queue depth: 32
    Standby timer values: spec'd by Standard, no device specific minimum
    R/W multiple sector transfer: Max = 16    Current = 16
    Advanced power management level: 254
    Recommended acoustic management value: 208, current value: 208
    DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6 
[...]

Selon la sortie ci-dessus, mon disque dur lit 16 sectors à la fois.

Certains disques durs modernes peuvent récupérer des secteurs à l'avance. Cette fonctionnalité s'appelle "read ahead" . Vous pouvez trouver cette valeur en utilisant "-a" drapeau comme ci-dessous :

$ sudo hdparm -a /dev/sda

Exemple de résultat :

/dev/sda:
readahead     = 256 (on)

Comme vous le voyez dans la sortie ci-dessus, le disque dur peut lire 256 secteurs à l'avance.

Mettez le disque dur en mode silencieux pour augmenter le temps d'accès

Nous pouvons ralentir le mouvement de la tête sur certains disques durs modernes. Ralentir le mouvement de la tête diminuera le niveau de bruit et augmentera les temps d'accès.

Pour vérifier si votre disque dur prend en charge ce "acoustic mode" fonctionnalité, exécutez :

$ sudo hdparm -M /dev/sda

Si votre lecteur prend en charge le mode acoustique, vous devriez obtenir une sortie comme ci-dessous.

/dev/sda:
acoustic      = 208 (128=quiet ... 254=fast)

La valeur actuelle du mode acoustique est 208 dans mon système. Les valeurs du mode acoustique peuvent être définies entre 128 à 254 .

Pour mettre le disque dur en mode silencieux, exécutez :

$ sudo hdparm -M 128 /dev/sda

Pour mettre le mouvement de la tête à grande vitesse, lancez :

$ sudo hdparm -M 254 /dev/sda

Veuillez noter que votre système d'exploitation doit prendre en charge cette fonctionnalité.

S'il ne prend pas en charge cette fonctionnalité, vous verrez ceci :

dev/sda:
 acoustic      = not supported

Mise en cache de réécriture

Lorsque le mode de mise en cache en écriture différée est activé, le disque dur mettra les données à écrire dans un tampon. De cette façon, le disque dur peut écrire plus rapidement.

Pour vérifier si le mode de mise en cache en écriture différée est activé, utilisez l'indicateur "-W".

$ sudo hdparm -W /dev/sda

Exemple de résultat :

/dev/sda:
write-caching =  1 (on)

Si la valeur de sortie est 1, la fonctionnalité de mise en cache de réécriture est activée. Si c'est 0, la mise en cache de réécriture est désactivée. Vous pouvez l'activer en utilisant la commande :

$ sudo hdparm -W1 /dev/sda

Si hdparm ne peut pas activer cette fonctionnalité, assurez-vous que la fonctionnalité de mise en cache en écriture différée est activée dans votre BIOS.

Pour le désactiver, utilisez simplement :

$ sudo hdparm -W0 /dev/sda

Même si la mise en cache en écriture augmente la vitesse d'écriture, elle n'est pas recommandée dans certaines situations.

Par exemple, lorsque l'alimentation est coupée soudainement, les données dans la mémoire tampon seraient définitivement perdues. Vous ne devez donc pas activer la fonction de mise en cache en écriture différée lors de l'exécution de programmes de base de données tels que PostgreSQL.

Disque dur de référence à partir de la ligne de commande

Pour comparer le disque dur et tester la vitesse de lecture du lecteur, utilisez des majuscules "T" et minuscules "t" drapeaux ensemble comme ci-dessous.

$ sudo hdparm -Tt /dev/sda

Exemple de résultat :

/dev/sda:
 Timing cached reads:   7232 MB in  1.99 seconds = 3629.42 MB/sec
 Timing buffered disk reads: 250 MB in  3.01 seconds =  82.99 MB/sec

Répétez cette commande au moins 2-3 fois pour obtenir le résultat significatif.

Pour plus de détails, consultez les pages de manuel.

$ man hdparm

Disque dur de référence à l'aide de l'utilitaire graphique GNOME Disks

Si vous n'aimez pas la ligne de commande, les disques GNOME Le programme GUI vous permet également de comparer les disques durs.

Ouvrez les disques à partir du menu ou du tiret. Sélectionnez le disque que vous souhaitez comparer, cliquez sur trois points et choisissez "Benchmark Disk" option.

Cliquez sur "Commencer l'analyse comparative" possibilité de commencer l'analyse comparative :

Conclusion

Dans ce guide, nous avons expliqué comment trouver la vitesse de transfert des données du disque dur sous Linux (c'est-à-dire la vitesse à laquelle le disque dur fournit les données). Nous avons également examiné comment comparer le disque dur à partir du mode ligne de commande et du mode graphique à l'aide de l'utilitaire graphique Gnome Disks.

Image sélectionnée de Pixabay.


Linux
  1. Comment utiliser FIND sous Linux

  2. Comment trouver un fichier sous Linux

  3. Comment savoir si le disque est un SSD ou un disque dur sous Linux

  4. Comment limiter/réduire la vitesse de transfert rsync sous Linux

  5. Comment trouver le numéro de modèle du lecteur de disque Linux ?

Comment trouver les détails du disque dur sous Linux

Comment trouver une adresse IP sous Linux

Comment répertorier les partitions de disque sous Linux

Comment trouver le nom d'hôte sous Linux

Comment vérifier les blocs défectueux ou les secteurs défectueux sur le disque dur sous Linux

Comment puis-je surveiller la charge du disque dur sous Linux ?