Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】Chrome Left 48 Copies of Itself on My Mac. du Says 67 GB. The Real Number Is 1.8.

2026年10月19日に「Medium」が公開したITニュース「Chrome Left 48 Copies of Itself on My Mac. du Says 67 GB. The Real Number Is 1.8.」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

ChromeはMacでアップデートの際に、隠しフォルダに自身のコピーファイルを大量に残す。これがストレージを不必要に消費し、ディスク容量測定ツールでも正確なサイズが表示されないことがある。ディスク圧迫の原因と調査方法を解説。

ITニュース解説

Macのディスク容量は、使用していると常に気になる問題の一つだろう。ある日突然、Google Chromeが数十ギガバイトもの信じられないようなディスク容量を占めているように見える現象に遭遇したという話があった。通常、Macの「アプリケーション」フォルダにはGoogle Chromeが一つしかインストールされていないはずなのに、特定のツールでディスク使用量を確認すると、膨大な容量がChrome関連で表示される、という不可解な状況だ。

この現象を詳しく調べるため、筆者はduというコマンドを使った。これは「disk usage」の略で、指定したファイルやディレクトリがどれくらいの容量を占めているかを計測するツールだ。duコマンドを使って、ユーザーのホームディレクトリ内にある~/Library/Googleというパスを調べたところ、GoogleSoftwareUpdateというフォルダが特に巨大な容量を示した。さらにその中身を深く見ていくと、まるでGoogle Chromeのアプリケーション本体が何十個もコピーされているかのように見えたという。筆者の環境では、このフォルダ内に48個ものChromeのバージョンが残されており、duコマンドはそれらの合計で67GBもの容量を報告したのだ。

しかし、なぜこのような事態が起こるのだろうか。その背景には、Google Chromeのアップデート方法と、Macのファイルシステムにおける「ハードリンク」という仕組みが深く関わっている。Macのアプリケーションは、単一のファイルに見えても、実際には「アプリケーションバンドル」と呼ばれる特殊なフォルダ構造をしている。このバンドルの中には、実行ファイル、画像、各種リソースなどがまとめて格納されている。

Google Chromeは新しいバージョンにアップデートする際、古いバージョンのアプリケーションバンドルをすぐに削除するのではなく、新しいバージョンのバンドルをダウンロードし、一時的な場所、具体的には~/Library/Google/GoogleSoftwareUpdate/GoogleSoftwareUpdate.bundle/Contents/Resources/のようなパスに展開する。そして、通常の「アプリケーション」フォルダにあるChromeへの参照を新しいバージョンに切り替えたり、あるいはアプリ本体を入れ替えたりする。しかし、この一時的な場所に展開された古いバージョンのバンドルが、何らかの理由でシステムによって適切にクリーンアップされずにそのまま残ってしまうことがあるのだ。筆者のMacでは、これが48個もの古いバージョンとして蓄積されていた。

ここで、なぜduコマンドが67GBという途方もない数字を示したのかという疑問が解決される。その鍵となるのが「ハードリンク」という、システムエンジニアを目指す上で非常に重要なファイルシステムの概念だ。ハードリンクとは、簡単に言えば、ディスク上に存在する一つの実データブロックに対して、複数のファイル名(エントリ)が紐付けられている状態を指す。通常、ファイルを作成すると、そのファイル名と、データが保存されているディスク上の物理的な場所(データブロック)が関連付けられる。ハードリンクは、異なるファイル名から同じデータブロックを参照できるようにする機能だ。ファイルシステムは、データの実体をディスク上にコピーするのではなく、新しいファイル名から同じデータブロックを参照させることで、ディスク容量を節約し、ファイルの管理を効率化する。

Chromeのアップデートの際、新しいバージョンのアプリケーションバンドルが作成されるが、以前のバージョンから変更されていないファイルやデータブロックは、ディスク上に新しくコピーされることはない。代わりに、新しいバージョンのファイルエントリが、古いバージョンのデータブロックをハードリンクとして参照するのだ。これにより、実際のディスク容量を消費せずに、あたかも複数のファイルが存在するかのように見せることができる。

しかし、duコマンドのような多くのディスク使用量計測ツールは、このハードリンクの仕組みを完全に考慮していない場合がある。duは、指定されたディレクトリ内のすべてのファイルについて、そのファイルサイズを単純に合計して表示する特性を持つ。つまり、一つのデータブロックが複数のハードリンクによって参照されている場合、duはそれぞれのハードリンクを独立したファイルとみなし、そのデータブロックのサイズを、参照元の数だけ重複して合計してしまうのだ。筆者のMacの例でいえば、48個のChromeのバンドルが多くの共通ファイルをハードリンクで参照していたため、duはこれらの共通ファイルを48回ずつ合計してしまい、結果として67GBという、実際のディスク使用量とはかけ離れた数字が表示されたのだ。

では、実際にディスク上で消費されている正確な容量はどうやって確認すれば良いのだろうか。正確なディスク使用量は、ファイルシステムの「論理的な使用量」ではなく、「物理的な使用量」として計測する必要がある。MacのFinderで「このMacについて」からストレージを確認したり、コマンドラインではdf(disk free)コマンドを使ったりすると、ディスク全体の使用状況や、特定のボリュームが実際にどれくらいのデータブロックを消費しているかを知ることができる。これらのツールは、ハードリンクによって共有されているデータブロックを重複して数えることなく、実際にディスクが占有している容量を正確に表示する。筆者の場合も、duが67GBと表示したにもかかわらず、実際には1.8GBしか消費していなかったことが判明した。これは、ハードリンクが効果的に機能し、ディスク上の物理的なデータは少量で済んでいたことを示している。

この一連の出来事は、システムエンジニアを目指す上で、ファイルシステムやディスク管理の奥深さを知る良い機会となる。見慣れない大きな数字に驚かされることもあるが、その背景には、ファイルがどのように保存され、管理されているかという複雑な仕組みが隠されていることが多い。特にハードリンクの概念は、バックアップ、バージョン管理、ストレージの効率化など、さまざまな場面で利用される重要な技術だ。見た目のファイルサイズやファイル数だけで判断せず、実際にディスク上でデータがどのように配置されているか、その仕組みを理解することが、正確な状況把握と問題解決への第一歩となる。Chromeが残した古いバージョンは、通常はシステムが適切に処理するため、手動で削除する必要性は低いが、もしもディスク容量が逼迫していると感じたら、このGoogleSoftwareUpdateフォルダの中を注意深く確認してみるのも良いだろう。ただし、誤ってシステムファイルなどを削除しないよう、十分な注意が必要だ。

関連コンテンツ

関連ITニュース