26 votos

¿Es seguro borrar estos 4 archivos en la carpeta llamada dyld

El almacenamiento del sistema parecía tomar un montón de espacio, así que usé este software que le da una representación visual del tamaño de los archivos en su Mac (archivos grandes son grandes plazas y así sucesivamente) y resulta que estos 4 archivos en el sistema se han inflado al azar, no era así hace unos meses. es seguro para eliminar estos archivos están en alguna carpeta llamada dyld. si no es así, entonces ¿qué debo hacer para limpiar el almacenamiento del sistema porque realmente necesito el espacio rn para algunas aplicaciones. enter image description here

48voto

Phill Puntos 126

¿Es seguro borrar estos 4 archivos en la carpeta llamada dyld ( /System/Library/dyld/ )?

Respuesta corta

No, en Big Sur i No es seguro borrarlos (por la captura de pantalla de tu pregunta, veo que estás en Big Sur).

Respuesta larga

En versiones anteriores de macOS (al menos en macOS 10.15 Catalina, por experiencia propia), estos archivos se encontraban en /var/db/dyld/ y puede ser recreado con este comando (ver por ejemplo Intentando forzar update_dyld_shared_cache pero teniendo algunos errores ):

sudo update_dyld_shared_cache -root / -force

pero update_dyld_shared_cache está obsoleto en Big Sur (la ejecución del comando tiene como única salida This tool is deprecated. ).

Además, los archivos en /System/Library/dyld/ ya no parecen ser archivos de caché en el sentido de que almacenan bibliotecas compartidas de uso común (de man update_dyld_shared_cache ):

Al cargar [un archivo ejecutable], dyld comprobará primero si está en la caché de recursos compartidos y, si lo está, utilizará esa versión preligada en lugar de abrir, mapear y ligar el archivo original. Esto resulta en una mejora significativa del rendimiento en el tiempo de lanzamiento.

En cambio, en Big Sur, los archivos de caché contienen la mayoría de las bibliotecas de MacOS .

Permítanme ampliar esto: el contenido de /var/db/dyld/ (Catalina y versiones anteriores de MacOS) y /System/Library/dyld/ (Big Sur) son esencialmente los mismos. Ambos almacenan pares de archivos: un archivo de mapa de texto (con un .map extensión) y un caché binario compartido (sin extensión), por ejemplo:

dyld_shared_cache_x86_64h.map
dyld_shared_cache_x86_64h

El archivo de mapa de texto contiene información sobre el archivo de caché compartido, y tiene el siguiente aspecto:

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
(...)

El formato del archivo de mapas (que no se modifica en Big Sur) es bastante sencillo:

  • Contiene una cabecera de 3 líneas
  • Contiene varios cientos de entradas, una por cada archivo incluido en el archivo de caché compartido, que especifican dónde se pueden encontrar las secciones relevantes de la biblioteca compartida especificada en el archivo de caché compartido

Antes de Big Sur, todo Las bibliotecas compartidas enumeradas en el archivo de mapas (que es 1809 en Catalina) también se encontraban en el sistema de archivos.

En Big Sur, la mayoría no lo son. De hecho, en Big Sur 11.2.3, sólo 12 de las 1956 bibliotecas de la lista se encuentran en el sistema de archivos :

(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

Esa es probablemente la razón por la que los archivos de la caché se movieron de /var/db/dyld a un SIP -carpeta protegida, a saber /System para que quede claro que no hay que meterse con ellos.

Si elimina los archivos de caché compartidos en /System/Library/dyld/ Me temo que tu sistema no podrá arrancar ni funcionar.

Más información

¿Cómo arreglar un dyld extraído de dyld_shared_cache_x86_64? Pregunta de Stack Exchange/Reverse Engineering sobre la extracción de archivos dylib de la caché compartida (menciona una utilidad llamada dyld_shared_cache_util de este proyecto de código abierto: dyld-shared-cache-big-sur )

https://www.exploit-database.net/?id=102279 Información sobre un exploit sobre cómo conseguir una escalada de privilegios a través de update_dyld_shared_cache en MacOS 10.14 Mojave.

https://blog.lse.epita.fr/2017/03/14/playing-with-mach-os-and-dyld.html#the-shared-cache Visión general del formato de caché compartida en OS X 10.10 Yosemite

https://www.theiphonewiki.com/wiki/Dyld_shared_cache Diferencias de caché compartidas entre iOS y macOS antes de Big Sur

-6voto

UnixCoon Puntos 23

Se trata de archivos en caché que se crean al arrancar tu mac, se vuelven a crear aunque lo borres. como forma parte de los archivos del sistema MacOS, se recomienda no borrarlo.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X