J'ai un disque qui apparaît avec 134G avec la commande lsblk
mais un nombre plus élevé avec lsblk -b
(environ 10G de plus)
Pourquoi ai-je une taille différente avec lsblk et lsblk -b?
#lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 134G 0 disk
[...]
# lsblk -b
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 147035272690 0 disk
[...]
En fait, la différence n’est pas si grande. Rappelez-vous que les gigaoctets, mégaoctets, etc., sont des multiples de 1024 et non de 1000. Ainsi, un mégaoctet est égal à 1024.2 et un gigaoctet est 10243.
Beaucoup de langages de programmation donnent pratique opérateurs de décalage , qui vous permettent de convertir entre méga, giga, kilo et autres-octets. En utilisant Perl, nous pouvons voir que vos deux valeurs ne sont en réalité pas si différentes:
## How many bytes is 134G?
$ Perl -le 'print 134<<30'
143881404416
## How many gigabytes is 147035272690 bytes?
$ Perl -le 'print 147035272690>>30'
136
Il y a toujours un écart de 2G entre les chiffres, mais il est loin d'être 10G. Je ne sais pas vraiment d'où vient cette différence. Je soupçonne qu’il ya des étapes d’arrondis (probablement une fonction sol ), mais je ne connais pas les détails.
Il n'y a pas beaucoup de différence que vous pensez.
1 Go = 1 073 741 824 octets
Convertissons maintenant vos 134 Go en octets.
134GB = (134) x (1 073 741 824) = 143881404416 octets