27 votes

Peut-on supprimer ces 4 fichiers dans le dossier appelé dyld ?

Le stockage système semblait prendre beaucoup d'espace alors j'ai utilisé ce logiciel qui vous donne une représentation visuelle de la taille des fichiers sur votre Mac (les gros fichiers sont des gros carrés et ainsi de suite) et il s'avère que ces 4 fichiers dans le système ont gonflé de façon aléatoire, ce n'était pas comme ça il y a quelques mois. est-il sûr de supprimer ces fichiers, ils sont dans un dossier appelé dyld. si non, que dois-je faire pour vider le stockage système parce que j'ai vraiment besoin de l'espace rn pour certaines applications. enter image description here

4 votes

Il manque à cette image les informations essentielles : quel dossier regardez-vous ici, où sont stockés ces dylds ? En outre, s'ils se trouvent dans /System ils font partie de MacOS et ne peuvent pas être supprimés.

0 votes

Oui, il est dans le système mais si je ne peux pas le supprimer, y a-t-il une raison particulière pour laquelle il a soudainement gonflé en taille ?

0 votes

Sur mon Mac exécutant Big Sur, les fichiers sont situés dans /System/Library/dyld/ , dyld_shared_cache_arm64e , dyld_shared_cache_x86_64 y dyld_shared_cache_x86_64h sont d'une taille de ~2 Go chacun, donc je comprends que vous souhaitiez vous en débarrasser, mais, comme l'a souligné @nohillside, ils font partie de MacOS et ne peuvent pas (et surtout, ne devrait pas ) soient supprimés.

49voto

jaume Points 13186

Est-il sûr de supprimer ces 4 fichiers dans le dossier appelé dyld ( /System/Library/dyld/ ) ?

Réponse courte

Non, à Big Sur i Ce n'est pas sûr de les supprimer (d'après la capture d'écran de votre question, je vois que vous êtes à Big Sur).

Réponse longue

Dans les versions précédentes de MacOS (au moins dans MacOS 10.15 Catalina, d'après mon expérience personnelle), ces fichiers étaient situés dans /var/db/dyld/ et pourrait être recréé avec cette commande (voir par exemple J'essaie de forcer update_dyld_shared_cache mais j'ai des erreurs. ) :

sudo update_dyld_shared_cache -root / -force

mais update_dyld_shared_cache est déprécié dans Big Sur (l'exécution de la commande a comme seule sortie This tool is deprecated. ).

En outre, les fichiers dans /System/Library/dyld/ ne semblent plus être des fichiers cache dans le sens où ils stockent les bibliothèques partagées couramment utilisées (de man update_dyld_shared_cache ) :

Lors du chargement [d'un fichier exécutable], dyld vérifie d'abord s'il est dans le cache de partage, et si c'est le cas, il utilise cette version pré-liée au lieu d'ouvrir, de mapper et de lier le fichier original. Il en résulte une amélioration significative des performances au moment du lancement.

Au lieu de cela, à Big Sur, les fichiers de cache contiennent la plupart des bibliothèques de MacOS .

Laissez-moi m'étendre sur ce point : le contenu de /var/db/dyld/ (Catalina et versions antérieures de MacOS) et /System/Library/dyld/ (Big Sur) sont essentiellement les mêmes. Ils stockent tous deux des paires de fichiers : un fichier de carte de texte (avec un .map ) et une cache binaire partagé (sans extension), par exemple :

dyld_shared_cache_x86_64h.map
dyld_shared_cache_x86_64h

Le fichier de carte de texte contient des informations sur le fichier de cache partagé, et ressemble à ceci :

mapping  EX 1331MB 0x7FFF20000000 -> 0x7FFF73398000
mapping  RW  224MB 0x7FFF80000000 -> 0x7FFF8E0C6000
mapping  RO  432MB 0x7FFFC0000000 -> 0x7FFFDB0E0000

/Library/Apple/System/Library/Accounts/Notification/CloudBookmarksAccountsNotifier.bundle/Contents/MacOS/CloudBookmarksAccountsNotifier
                  __TEXT 0x7FFF20040000 -> 0x7FFF20042000
                  __DATA 0x7FFF81B6B108 -> 0x7FFF81B6B8F0
              __LINKEDIT 0x7FFFC05C0000 -> 0x7FFFD8A4A538

/System/Library/AccessibilityBundles/AXSpeechImplementation.bundle/Versions/A/AXSpeechImplementation
                  __TEXT 0x7FFF20042000 -> 0x7FFF20048000
                  __DATA 0x7FFF81B6B8F0 -> 0x7FFF81B6CF70
              __LINKEDIT 0x7FFFC05C0000 -> 0x7FFFD8A4A538

/System/Library/Accounts/Access/CloudKitAccessPlugin.bundle/Contents/MacOS/CloudKitAccessPlugin
                  __TEXT 0x7FFF20048000 -> 0x7FFF2004C000
                  __DATA 0x7FFF81B6CF70 -> 0x7FFF81B6D840
              __LINKEDIT 0x7FFFC05C0000 -> 0x7FFFD8A4A538
(...)

Le format du fichier de la carte (qui est inchangé dans Big Sur) est assez simple :

  • Il contient un en-tête de 3 lignes
  • Il contient plusieurs centaines d'entrées, une pour chaque fichier inclus dans le fichier de cache partagé, qui spécifient où les sections pertinentes de la bibliothèque partagée spécifiée peuvent être trouvées dans le fichier de cache partagé.

Avant Big Sur, todo Les bibliothèques partagées listées dans le fichier de carte (c'est 1809 dans Catalina) étaient également situées dans le système de fichiers.

À Big Sur, la plupart ne le sont pas. En fait, dans Big Sur 11.2.3, seulement 12 des 1956 bibliothèques répertoriées peuvent être trouvées dans le système de fichiers. :

(for file in $(grep / /System/Library/dyld/dyld_shared_cache_x86_64.map); do ls $file; done) 2>&1 | grep "No such file or directory" | wc -l
1944
grep / /System/Library/dyld/dyld_shared_cache_x86_64.map | wc -l
1956

C'est très probablement la raison pour laquelle les fichiers de cache ont été déplacés de /var/db/dyld à un SIP -Le dossier protégé, à savoir /System pour bien faire comprendre qu'il ne faut pas s'amuser avec eux.

Si vous supprimez les fichiers de cache partagés dans /System/Library/dyld/ j'ai peur que votre système ne puisse pas démarrer ou fonctionner.

Autres lectures

Comment réparer un dyld extrait de dyld_shared_cache_x86_64 ? Stack Exchange/Reverse Engineering question sur l'extraction des fichiers dylib du cache partagé (mentionne un utilitaire nommé dyld_shared_cache_util de ce projet open source : dyld-shared-cache-big-sur )

https://www.exploit-database.net/?id=102279 Informations sur un exploit permettant d'obtenir une escalade des privilèges via update_dyld_shared_cache sur MacOS 10.14 Mojave.

https://blog.lse.epita.fr/2017/03/14/playing-with-mach-os-and-dyld.html#the-shared-cache Aperçu du format de cache partagé sur OS X 10.10 Yosemite

https://www.theiphonewiki.com/wiki/Dyld_shared_cache Différences de cache partagées entre iOS et MacOS avant Big Sur

1 votes

Belle contribution !

1 votes

Merci beaucoup ! c'est très instructif, je suppose que je vais devoir chercher d'autres bios.

0 votes

Quels sont les fichiers que l'on peut supprimer pour nettoyer le système Mac. Dans mon Mac, les mêmes fichiers sont enregistrés dans le répertoire Système et dans le répertoire personnel. Est-ce que c'est un bon comportement ou pas ?

-6voto

Lano Points 438

Ce sont des fichiers en cache qui sont créés au démarrage de votre mac, ils sont recréés même si vous le supprimez. Comme il fait partie des fichiers système de MacOS, il est recommandé de ne pas le supprimer.

3 votes

Cela a pu être vrai dans le passé, mais à Big Sur ce n'est pas le cas, voir ma réponse ci-dessous.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X