Flotte
EN
Loupe · 10–80 Go

Simulateurs iOS et espace disque : supprimer les anciens

Les simulateurs iOS prennent souvent 40 Go d'espace disque sans bruit. Vois ce que tu as, et supprime seulement ce qui ne te manquera pas.

Mis à jour le 2026-08-13

Deux choses, pas une

Il y a deux gouffres distincts, et on les confond facilement. Les appareils sont les iPhone et iPad simulés, chacun avec sa propre image disque remplie d'apps installées et de données. Les runtimes sont les images du système que ces appareils démarrent : une par version d'iOS, plusieurs gigaoctets chacune.

Supprimer un appareil libère tout ce qu'il a accumulé. Supprimer un runtime libère plusieurs gigaoctets d'un coup, mais casse tous les appareils qui en dépendent. Commence par les appareils.

$ du -sh ~/Library/Developer/CoreSimulator/Devices

Place totale prise par les disques des appareils simulés.

$ du -sh ~/Library/Developer/CoreSimulator/*

Appareils, caches et images, côte à côte.

La seule commande dont la plupart des gens ont besoin

$ xcrun simctl delete unavailable

Supprime tous les appareils simulés dont le runtime n'est plus installé. C'est de la perte pure : ils ne peuvent plus démarrer. Sans risque, rapide, et en général le plus gros gain à lui seul.

Aller plus loin, prudemment

Regarde ce que tu as avant de supprimer quoi que ce soit :

$ xcrun simctl list devices

Tous les appareils simulés, groupés par runtime, avec leur UDID et leur état.

$ xcrun simctl list runtimes

Les images iOS, watchOS, tvOS et visionOS installées.

$ xcrun simctl list devices | grep -c ''

Un comptage rapide. Plus de cent lignes, c'est courant, et c'est le signe qu'il faut faire le tri.

Puis supprime avec précision :

$ xcrun simctl delete 1A2B3C4D-0000-1111-2222-333344445555

Supprime un appareil par son UDID, tel que l'affiche `simctl list devices`.

$ xcrun simctl erase all

Garde tous les appareils mais efface leur contenu : apps installées, bases de données, photos. Libère de la place sans changer ta liste d'appareils.

$ xcrun simctl runtime delete 'iOS 17.5'

Supprime une image de runtime entière. Plusieurs gigaoctets, mais tous les appareils de ce runtime deviennent indisponibles.

Quels runtimes garder

La règle honnête : ta cible de déploiement, plus la version actuelle. Si ton app prend en charge iOS 17 et suivants, et qu'iOS 19 est la version actuelle, il te faut 17 et 19 : les versions intermédiaires révèlent rarement des bugs que les extrémités ne montrent pas.

RuntimeÀ garder ?Pourquoi
iOS actuelToujoursC'est ce qu'utilisent tes utilisateurs.
Ta cible de déploiement minimaleToujoursLa version la plus susceptible de casser.
Une ou deux intermédiairesFacultatifUtile si tu prends en charge une large plage de versions.
Tout ce qui est plus ancien que ta cibleNonTu ne publies pas pour elles.
watchOS / tvOS pour lesquels tu ne publies pasNonInstallés par défaut, souvent inutilisés. Plusieurs Go chacun.

Éviter que ça revienne

  • Lance xcrun simctl delete unavailable après chaque mise à jour majeure de Xcode. Ça prend une seconde et ça évite tout le problème.
  • Dans Xcode → Settings → Platforms, tu peux voir et supprimer les runtimes installés depuis une interface plutôt qu'en ligne de commande.
  • ~/Library/Developer/CoreSimulator/Caches conserve les images de runtime téléchargées après leur installation. Tu peux le vider sans risque, et il pèse souvent plusieurs gigaoctets à lui seul.
Devrai-je retélécharger les runtimes que je supprime ?

Oui, si tu en as de nouveau besoin. Ils viennent d'Apple par Xcode, à plusieurs gigaoctets chacun. Supprime ceux pour lesquels tu ne publies pas, pas ceux que tu utilises chaque semaine.

Supprimer des simulateurs touche-t-il aux appareils réels ?

Non. Les simulateurs sont entièrement séparés des appareils physiques et des symboles rangés sous iOS DeviceSupport.

Quelle différence entre erase et delete ?

Erase efface le contenu d'un simulateur et le garde dans ta liste. Delete supprime complètement le simulateur. Erase est celui qui se rattrape.

J'ai supprimé des simulateurs et df n'affiche aucun changement. Pourquoi ?

Un instantané APFS retient encore ces blocs. Consulte le guide sur l'espace libre et le disque plein.

La version automatique

Tout ce qui précède marche, ne coûte rien et continuera de marcher. Loupe fait la même chose sur tous les projets du disque à la fois, et montre ce que chaque suppression coûtera à reconstruire avant que tu l'acceptes.

BientôtLoupe

Guides voisins