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.
Respuestas
¿Demasiados anuncios?¿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