暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

为什么Linux硬盘挂载后容量减小?原因竟是……

运维家 2023-10-07
854


主旨

不知道你们有没有发现,一块硬盘,买的是100G的,挂载到服务器上之后就“变小”了,而且这种情况不是偶发的,几乎是必然发生的,难道是硬盘厂商在作怪嘛?


图示如下

使用fdisk -l 命令如下图,可以看到实际容量是18.2G;


但是当挂载到服务器上之后,我们使用 df -h 命令来看,就变成了总容量17G了;


普及

    1KB=1000Byte
    1MB=1000KB
    1GB=1000MB
    1TB=1000GB
    1KiB=1024Byte
    1MiB=1024KiB
    1GiB=1024MiB
    1TiB=1024GiB


    原理

    众所周知,在计算机中是采用二进制,在电脑世界里,以2的次方数为“批量”处理Byte会方便一些,整齐一些。每1024Byte为1KB,每1024KB为1MB,每1024MB为1GB,每1024GB为1TB,而在国际单位制中TB、GB、MB、KB是“1000进制”的计数单位,为此国际电工协会(IEC)拟定了"KiB"、“MiB”、“GiB"的二进制单位,专用来标示“1024进位”的数据大小;而硬盘厂商在计算容量方面是以每1000为一进制的,每1000字节为1KB,每1000KB为1MB,每1000MB为1GB,每1000GB为1TB,在操作系统中对容量的计算是以1024为进位的,并且并未改为"KiB"、“MiB”、“GiB"的二进制单位,这差异造成了硬盘容量“缩水”。(PS:该段内容来自于百度百科)

    简单来说,就是硬盘生产厂家采取的是1MB=1000KB,1GB=1000MB的计算方式;而服务器是按照1MiB=1024KiB,1GiB=1024Gib的方式来计算的,这样子是不是可以理解了呢。

    举例

    以120GB的硬盘为例:

    厂商容量计算方法:

      120GB=120,000MB=120,000,000KB=120,000,000,000字节;

      换算成操作系统计算方法:

        120,000,000,000字节/1024=117,187,500KB/1024=114,440.9MB/1024=111.8GB。


        简单算法:硬盘容量 (1024*1024*1024)

          80,000,000,000/(1024*1024*1024)=74.5GB
          40,000,000,000/(1024*1024*1024)=37.25GB


          从上面的计算可以看出,硬盘容量越大,“缩水”越严重,其实,在5%~10%左右,都属于正常范围内可接受的。


          计算结果

            标称8GB的硬盘,在操作系统中显示只有7.4GB
            16GB的硬盘只有14.8GB
            32GB的硬盘只有29.8GB
            40GB的硬盘只有37.2GB
            64GB的硬盘只有59GB
            80GB的硬盘只有74.5GB
            100GB的硬盘只有93.1GB
            120GB的硬盘只有112GB
            128GB的硬盘只有119GB
            160GB的硬盘只有149GB
            256GB的硬盘只有238GB
            320GB的硬盘只有298GB
            480GB的硬盘只有GB
            500GB的硬盘只有465GB
            512GB的硬盘只有476GB
            750GB的硬盘只有699GB
            960GB的硬盘只有894GB
            1TB的硬盘只有931GB
            1.5TB的硬盘只有1.3TB(1397GB);
            2TB的硬盘只有1.8TB(1862GB);
            3TB的硬盘只有2.7TB(2793GB);
            4TB的硬盘只有3.6TB(3724GB);
            5TB的硬盘只有4.6TB(4657GB);
            6TB的硬盘只有5.5TB(5586GB);
            8TB的硬盘只有7.4TB(7448GB);
            10TBGB)的硬盘只有9.3TB(9300GB);
            而12TB的硬盘则只有10.9TB(11176GB)。

            至此,结果很明显了,不是厂商“缩水”,而是计算方式不同罢了。

            如果文本对你有所帮助,请关注并分享我的公众号【运维家】。

            文章转载自运维家,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

            评论