Xcodeの容量を減らす方法:DerivedData・シミュレータ・アーカイブの整理

2026/10/10PR

Xcodeで容量を空けるなら、まず消してよいのは DerivedData と 使っていないシミュレータのOS です。どちらも消したあとで自動生成や再ダウンロードができます。

逆に、App StoreやTestFlightに出したビルドのアーカイブ(dSYM入り) は消してはいけません。Appleの公式ドキュメントも、配信したビルドごとにアーカイブを保管するよう求めています。

この記事では、フォルダごとに「消してよいか」「消すと何が起きるか」「どこから消すか」を、公式情報をもとに整理します。

消してよいもの・残すものの一覧

先に全体像です。「消すと起きること」の列を見ると、判断しやすくなります。

場所消してよい?消すと起きること
DerivedData消してよい次回、再インデックスと再ビルド
シミュレータのOS使わない分は消してよい必要になれば再ダウンロード
アーカイブ配信したビルドは残す該当バージョンのクラッシュ解析が難しくなる
iOS DeviceSupport使っていないOS分は判断が必要該当OSの端末をつなぐと再取得

DerivedDataとシミュレータは、どちらも「消しても作り直せる」ものです。アーカイブだけは、作り直しがきかない点で性質が違います。

自分のMacでどれくらい削れそうかは、手元のデータ量や使い方によって変わります。内蔵ストレージを何GBにすべきかも含めて、次の診断ツールで確認できます。

開発用Macに必要な内蔵容量を、持っているデータから見積もれます

Macストレージ必要量 診断を使う

DerivedDataは消しても壊れない

DerivedDataは、ビルドの途中生成物やインデックス(コード補完や検索のための索引)が溜まる場所です。標準では ~/Library/Developer/Xcode/DerivedData にあり、プロジェクトごとにフォルダが分かれています。

Apple Developer Forumsの回答でも、プロジェクトを閉じてから該当フォルダを消せば問題ないとされています。次にプロジェクトを開いたとき再インデックスされ、次にビルドしたとき全体が再ビルドされるだけです。

手順は次のとおりです。

  1. Xcodeを終了する
  2. Finderで「移動」→「フォルダへ移動」を選び、上記のパスを開く
  3. 容量の大きいプロジェクトのフォルダ、または中身をすべて削除する

全部消しても壊れませんが、開いているすべてのプロジェクトが初回だけ重くなります。普段使っているプロジェクトは残し、しばらく開いていないものから消すと、手戻りが少なく済みます(これは私の運用上の勧めで、公式の手順ではありません)。

署名エラーの対処としてDerivedDataを消す人もいますが、同じフォーラムの回答では「それで直るとは考えにくい」とされています。署名の問題は、キーチェーンの証明書や設定を先に確認してください。

DerivedDataを消すとビルドは遅くなる?

消した直後の1回目だけ遅くなります。2回目以降は、通常のインクリメンタルビルド(変更分だけのビルド)に戻ります。

シミュレータはXcodeの設定画面から消す

シミュレータのOSイメージ(iOS 18、iOS 26など)は、1つあたりの容量が大きくなりがちです。Appleの公式ドキュメントでは、Xcode > Settings > Components で、導入済みのコンポーネントと、削除したときに回収できる容量を確認できると説明されています。

消す手順は、対象の横にある情報ボタンを押し、表示されたダイアログで「Delete」を選ぶだけです。消したOSは、同じ画面の「Add Platforms」から、あとで再ダウンロードできます。バージョンによっては、この画面が「Platforms」という名前になっています。

どのOSを残すかは、アプリの最低対応OSを基準に決めると迷いません。サポート対象のOSと、最新のOSがあれば、普段の開発には足りることが多いです。

simctl delete unavailable は端末だけを消す

xcrun simctl delete unavailable は、使えなくなったシミュレータの端末を消すコマンドです。OSイメージ本体は減らないため、これで大きく空くとは限りません。

Apple Developer Forumsには、sudo を付けて実行しても何も起きなかったという報告があります。シミュレータはユーザーごとの管理なので、自分のアカウントのまま実行するのが安全です。

CoreSimulatorのVolumesを手で消さない

/Library/Developer/CoreSimulator/Volumes/ の中身をFinderやターミナルで直接消すのは避けてください。フォーラムには、Xcodeの画面で消したはずのボリュームが再起動後に戻ってきた、という報告があります。

また、/System/Library/AssetsV2 配下に残った古いランタイムは、保護された領域のため通常の方法では消せません。SIPを無効にしてまで消すのは、得られる容量に対してリスクが大きすぎます。

消すときは、Xcodeの設定画面か、xcrun simctl runtime list で一覧を見てから xcrun simctl runtime delete で消す方法に限るのが無難です。

シミュレータを消すとアプリのデータも消える?

消えます。シミュレータ端末を削除すると、その中にインストールしたアプリと保存データも一緒になくなります。テスト用のデータを作り込んでいる端末は、先に控えを取ってから消してください。

不要な端末の削除は、最新のXcodeでは Device Hub(Xcode > Open Developer Tool > Device Hub)で、対象を右クリックして「Remove」を選びます。古いXcodeでは Window > Devices and Simulators が対応する画面です。

アーカイブとdSYMは配信したビルド分を残す

アーカイブは、Product > Archive で作られるビルドの記録です。公式ドキュメントによると、デバッグ情報を含んだ状態でXcodeが保管します。

中に入っているdSYM(ディーエスワイエム)は、クラッシュログの意味不明な16進数のアドレスを、関数名と行番号に戻すためのファイルです。バイナリとdSYMは、ビルドごとに固有のUUIDで対応していて、同じUUIDのものしか組み合わせられません。

Appleのドキュメントには、次の趣旨が明記されています。

  • 配信したビルドごとに、Xcodeのアーカイブを保管すること
  • アーカイブがないと、クラッシュレポートから問題を診断できない場合があること

アーカイブを消してしまった版は、あとからそのバージョンのクラッシュを解析できません。公式も、その場合は新しいバージョンを出して、そのアーカイブを保管するしかないとしています。

消してよいのは、一度も配信していない検証用ビルドのアーカイブです。Window > Organizer の Archives で、配信済みかどうかを確かめてから整理してください。

残したいアーカイブは外に逃がす

残すと決めたアーカイブは、内蔵ストレージに置き続ける必要はありません。公式ドキュメントでは、Spotlightが見つけられる場所(例:ホームディレクトリ内)に置いておくことが条件です。

外部ドライブに移す場合は、Spotlightのインデックス対象になっているかを確認してください。dSYMは mdfind "com_apple_xcode_dsym_uuids == <UUID>" で探せるので、探せない場所に移すと、いざというときに見つからなくなります。

iOS DeviceSupportは使っていないOS分だけ

~/Library/Developer/Xcode/iOS DeviceSupport には、実機をつないだときにXcodeがコピーしたシステムのシンボル(OSの内部処理の名前情報)が入っています。公式ドキュメントでは、このシンボルはOSのバージョンごとに異なり、端末の機種やCPUアーキテクチャにも依存すると説明されています。

役割は、クラッシュログのうちApple側のフレームワーク部分を読めるようにすることです。自分のアプリのdSYMとは別のものです。

私の判断としては、次のように分けて考えると安全です。

  • 手元の端末が今使っているOS分は残す
  • 手元に対象OSの端末がなく、そのOSのクラッシュログを調べる予定もない古い分は削除候補にする

消しても、そのOSの端末をつなぎ直せば再取得されます。ただし、すでにアップデートして戻せない端末のOS分は、取り戻せない場合があります。この点は公式に明記された挙動ではなく、上記の仕組みからの推測です。

消す前に、どこが大きいか測る

闇雲に消すより、大きい場所から順に手を付けたほうが効率的です。次のコマンドで、主な場所の容量を確認できます。

du -sh ~/Library/Developer/Xcode/DerivedData
du -sh ~/Library/Developer/Xcode/Archives
du -sh ~/Library/Developer/Xcode/iOS\ DeviceSupport
du -sh ~/Library/Developer/CoreSimulator

シミュレータのOSイメージは ~/Library/Developer/CoreSimulator 以外の場所にも置かれることがあるため、正確な数字は Xcode > Settings > Components の表示で確認してください。

なお、~/Library/Developer を丸ごと消すのはやめてください。DerivedDataやDeviceSupport、シミュレータのデータがすべて一度に消え、元に戻せません。

消すより置き場所を変える方法もある

整理しても空きが足りないときは、削るのではなく置き場所を変えるのが現実的です。配信済みのアーカイブのように「消せないが、普段は使わない」ものは、外付けのストレージに移せます。Macに取り込みやすいUSB-C接続のポータブルSSDは、その置き場として使いやすい選択肢です。

ただし、内蔵を増やすか、外付けやクラウドで補うかは、使う期間とデータ量で損得が変わります。

外付けSSDとクラウドのどちらが得か、損益分岐点を計算できます

ストレージコストの損益分岐点を計算する

出典・参考にした公式情報

この記事について

アプリ開発KASHIWAGI公開日:2026/10/10