ファイルなどの「サイズ」と「ディスク上のサイズ」の違いは?

IT便利情報

この記事の内容
  1. サイズとディスク上のサイズの見方
  2. ファイルサイズとは(KB・MB の数え方)
  3. 「ディスク上のサイズ」が大きくなる理由
  4. 使っているパソコンのクラスターの大きさを確かめる
  5. ディスク上のサイズのほうが小さい、0 バイトになるとき
  6. ふだん「ファイルのサイズ」と言えば「サイズ」
  7. 会社で使うときに気をつけること

「サイズ」はファイルの中身そのものの大きさ、「ディスク上のサイズ」はそのファイルを保存するために、ドライブ(SSD や HDD)の上で実際に使っている大きさです。Windows はドライブを「クラスター」という決まった大きさの区画(多くのパソコンで 4KB)ごとに使うため、ディスク上のサイズはクラスターの倍数に切り上がり、たいていはサイズより少し大きくなります。メールに添付できるか、アップロードできるかを確かめるときに見るのは「サイズ」のほうです。

サイズとディスク上のサイズの見方

  1. エクスプローラーで、調べたいファイルやフォルダーを右クリックする
  2. メニューの「プロパティ」を選ぶ(選んだ状態で「Alt」+「Enter」を押しても開けます)
  3. 「全般」タブの「サイズ」と「ディスク上のサイズ」を見る
ファイルのプロパティの全般タブ。サイズとディスク上のサイズが上下に並んで表示されている

たとえば、あるファイルでは「サイズ」が 85.8 KB(87,931 バイト)、「ディスク上のサイズ」が 88.0 KB(90,112 バイト)と表示されます。同じファイルなのに数字が違う理由を、順に説明します。

ファイルサイズとは(KB・MB の数え方)

ファイルサイズは、ファイルに入っているデータの量を「バイト」で数えたものです。1 バイトは 8 ビット(0 と 1 を 8 けた並べたもの)で、256 通りの値を表せます。

数が大きくなると KB(キロバイト)や MB(メガバイト)でまとめて表しますが、Windows の表示では、1KB を 1,000 バイトではなく 1,024 バイトとして計算しています。コンピューターは 0 と 1 の 2 進法で数を扱うため、2 の 10 乗である 1,024 で区切るほうが都合がよいからです。

単位Windows の表示での大きさ
1KB1,024 バイト
1MB1,024KB(1,048,576 バイト)
1GB1,024MB(1,073,741,824 バイト)
1TB1,024GB(1,099,511,627,776 バイト)

先ほどの例で確かめると、87,931 バイト÷1,024=85.87…となり、表示の 85.8 KB と合います(小数第 2 位以下は切り捨てて表示されています)。

1,000 倍ごとの KB と区別するために、1,024 倍ごとの単位を KiB(キビバイト)、MiB(メビバイト)と書く決まりもあります。国際電気標準会議(IEC)が定めたものですが、Windows の表示は KB・MB の書き方のまま 1,024 倍で計算しています。

「ディスク上のサイズ」が大きくなる理由

Windows のドライブのしくみ(NTFS)は、ドライブを「クラスター」という決まった大きさの区画に分けて管理しています。ファイルは小さくても最低 1 つのクラスターを使い、大きくなるとクラスターの倍数で場所が増えていきます。最後のクラスターに空きが残っても、その分まで使っていることになるため、ディスク上のサイズはサイズより大きくなります。

クラスターが 4KB の場合、ファイルの大きさとディスク上のサイズは次のようになります。

ファイルのサイズ使うクラスターの数ディスク上のサイズ
3.5KB14KB
4.8KB28KB
8.0KB28KB

先ほどの 85.8 KB のファイルなら、85.8÷4=21.4…で 21 個には収まらず、22 個のクラスターを使います。22×4KB=88KB で、ディスク上のサイズの 88.0 KB と一致します。小さなファイルがたくさんあるフォルダーほど、この切り上げの分が積み重なり、2 つの数字の差が大きくなります。

使っているパソコンのクラスターの大きさを確かめる

管理者の権限がなくても、Windows PowerShell で確かめられます。

  1. スタートボタンを押し、「powershell」と入力して、表示された「Windows PowerShell」を開く
  2. 「Get-Volume -DriveLetter C | Format-List AllocationUnitSize」と入力して「Enter」キーを押す(C ドライブを調べる場合)
  3. 「AllocationUnitSize : 4096」のように表示されたら、4,096 バイト÷1,024=4 で、クラスターの大きさは 4KB です

Windows 10 でも同じ手順で確かめられます。クラスターの大きさは、ドライブをフォーマットするときに決まり、あとから変えるにはフォーマットのし直しが必要です。

ディスク上のサイズのほうが小さい、0 バイトになるとき

たいていは「サイズ ≦ ディスク上のサイズ」ですが、逆になったり、ディスク上のサイズが 0 バイトになったりすることもあります。主な理由は次の 3 つです。

  • OneDrive のオンライン専用ファイル……OneDrive のファイル オンデマンドで「オンライン専用」になっているファイルは、中身がクラウドにだけあり、パソコンの容量を使いません。そのため、サイズは表示されても、ディスク上のサイズは 0 バイトになります。エクスプローラーで青い雲の印が付いているファイルがこれです。
  • とても小さいファイル……NTFS では、ファイルの情報を管理する表(MFT)の中に、データそのものを入れておけることがあります。数百バイト程度のファイルはクラスターを使わずに済むため、ディスク上のサイズが 0 バイトと表示されることがあります。
  • 圧縮や重複除去を使っているドライブ……NTFS の圧縮や、Windows Server のデータ重複除去を使っていると、保存に使う量が減るため、ディスク上のサイズがサイズより小さくなります。

ふだん「ファイルのサイズ」と言えば「サイズ」

「このファイルの大きさは?」と聞かれたときや、メールの添付・ファイルのアップロードの上限と比べるときに使うのは、ファイルの中身の大きさである「サイズ」です。ディスク上のサイズを気にするのは、ドライブの空き容量がどれだけ減るかを知りたいときです。

ファイルの大きさと種類の調べ方はファイルサイズと種類を確認する方法、空き容量を圧迫している大きなファイルの探し方はサイズの大きなファイルを見つける方法で紹介しています。

会社で使うときに気をつけること

OneDrive や SharePoint のファイルをエクスプローラーで同期している場合、ディスク上のサイズが 0 バイトのファイルは、パソコンの中に中身がありません。インターネットにつながっていないと開けないので、出張先や移動中に使う資料は、ファイルやフォルダーを右クリックして「このデバイス上で常に保持する」を選んでおくと安心です。

インフィニティの会社サイトから

会社のITを任されている方へ

このサポートサイトを書いているインフィニティは、会社のITの決めごとをコラムと解説動画にまとめています。